* [PR PATCH] New package: cargo-flamegraph-0.6.2
@ 2023-03-04 15:27 reedts
2023-03-04 15:32 ` [PR REVIEW] " tranzystorek-io
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: reedts @ 2023-03-04 15:27 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 913 bytes --]
There is a new pull request by reedts against master on the void-packages repository
https://github.com/reedts/void-packages cargo-flamegraph_v0.6.2
https://github.com/void-linux/void-packages/pull/42585
New package: cargo-flamegraph-0.6.2
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
A patch file from https://github.com/void-linux/void-packages/pull/42585.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-cargo-flamegraph_v0.6.2-42585.patch --]
[-- Type: text/x-diff, Size: 1103 bytes --]
From 82e782ee1c866181ade091a52aa8a9e496806f0f Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sat, 4 Mar 2023 15:53:23 +0100
Subject: [PATCH] New package: cargo-flamegraph-0.6.2
---
srcpkgs/cargo-flamegraph/template | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
create mode 100644 srcpkgs/cargo-flamegraph/template
diff --git a/srcpkgs/cargo-flamegraph/template b/srcpkgs/cargo-flamegraph/template
new file mode 100644
index 000000000000..fdab6010dbc6
--- /dev/null
+++ b/srcpkgs/cargo-flamegraph/template
@@ -0,0 +1,16 @@
+# Template file for 'cargo-flamegraph'
+pkgname=cargo-flamegraph
+version=0.6.2
+revision=1
+build_style=cargo
+depends="perf"
+short_desc="Easy flamegraphs for Rust projects and everything else"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT, Apache-2.0"
+homepage="https://github.com/flamegraph-rs/flamegraph"
+distfiles="https://github.com/flamegraph-rs/flamegraph/archive/v${version}/${pkgname}-${version}.tar.gz"
+checksum=ec9626f8bc6e52b4c6ebbd5b35ac87f0e17e70ac1fd9eb5f26a8d7dd898f7911
+
+post_install() {
+ vlicense LICENSE-MIT
+}
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PR REVIEW] New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
@ 2023-03-04 15:32 ` tranzystorek-io
2023-03-04 15:35 ` tranzystorek-io
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: tranzystorek-io @ 2023-03-04 15:32 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 268 bytes --]
New review comment by tranzystorek-io on void-packages repository
https://github.com/void-linux/void-packages/pull/42585#discussion_r1125492108
Comment:
```suggestion
distfiles="https://github.com/flamegraph-rs/flamegraph/archive/refs/tags/v${version}.tar.gz"
```
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
2023-03-04 15:32 ` [PR REVIEW] " tranzystorek-io
@ 2023-03-04 15:35 ` tranzystorek-io
2023-03-04 15:52 ` [PR PATCH] [Updated] " reedts
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: tranzystorek-io @ 2023-03-04 15:35 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 244 bytes --]
New comment by tranzystorek-io on void-packages repository
https://github.com/void-linux/void-packages/pull/42585#issuecomment-1454779084
Comment:
Completion can be installed: https://github.com/flamegraph-rs/flamegraph#shell-auto-completion
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PR PATCH] [Updated] New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
2023-03-04 15:32 ` [PR REVIEW] " tranzystorek-io
2023-03-04 15:35 ` tranzystorek-io
@ 2023-03-04 15:52 ` reedts
2023-03-04 16:31 ` reedts
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: reedts @ 2023-03-04 15:52 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 918 bytes --]
There is an updated pull request by reedts against master on the void-packages repository
https://github.com/reedts/void-packages cargo-flamegraph_v0.6.2
https://github.com/void-linux/void-packages/pull/42585
New package: cargo-flamegraph-0.6.2
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
A patch file from https://github.com/void-linux/void-packages/pull/42585.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-cargo-flamegraph_v0.6.2-42585.patch --]
[-- Type: text/x-diff, Size: 2160 bytes --]
From 82e782ee1c866181ade091a52aa8a9e496806f0f Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sat, 4 Mar 2023 15:53:23 +0100
Subject: [PATCH 1/2] New package: cargo-flamegraph-0.6.2
---
srcpkgs/cargo-flamegraph/template | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
create mode 100644 srcpkgs/cargo-flamegraph/template
diff --git a/srcpkgs/cargo-flamegraph/template b/srcpkgs/cargo-flamegraph/template
new file mode 100644
index 000000000000..fdab6010dbc6
--- /dev/null
+++ b/srcpkgs/cargo-flamegraph/template
@@ -0,0 +1,16 @@
+# Template file for 'cargo-flamegraph'
+pkgname=cargo-flamegraph
+version=0.6.2
+revision=1
+build_style=cargo
+depends="perf"
+short_desc="Easy flamegraphs for Rust projects and everything else"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT, Apache-2.0"
+homepage="https://github.com/flamegraph-rs/flamegraph"
+distfiles="https://github.com/flamegraph-rs/flamegraph/archive/v${version}/${pkgname}-${version}.tar.gz"
+checksum=ec9626f8bc6e52b4c6ebbd5b35ac87f0e17e70ac1fd9eb5f26a8d7dd898f7911
+
+post_install() {
+ vlicense LICENSE-MIT
+}
From e5db215045c8b0a567dfd2a44d4f1fb3b151880f Mon Sep 17 00:00:00 2001
From: Julian Bigge <j.reedts@gmail.com>
Date: Sat, 4 Mar 2023 16:52:29 +0100
Subject: [PATCH 2/2] update distfiles URL
Co-authored-by: Marcin Puc <tranzystorek.io@protonmail.com>
---
srcpkgs/cargo-flamegraph/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/cargo-flamegraph/template b/srcpkgs/cargo-flamegraph/template
index fdab6010dbc6..b817ad8621d3 100644
--- a/srcpkgs/cargo-flamegraph/template
+++ b/srcpkgs/cargo-flamegraph/template
@@ -8,7 +8,7 @@ short_desc="Easy flamegraphs for Rust projects and everything else"
maintainer="reedts <j.reedts@gmail.com>"
license="MIT, Apache-2.0"
homepage="https://github.com/flamegraph-rs/flamegraph"
-distfiles="https://github.com/flamegraph-rs/flamegraph/archive/v${version}/${pkgname}-${version}.tar.gz"
+distfiles="https://github.com/flamegraph-rs/flamegraph/archive/refs/tags/v${version}.tar.gz"
checksum=ec9626f8bc6e52b4c6ebbd5b35ac87f0e17e70ac1fd9eb5f26a8d7dd898f7911
post_install() {
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PR PATCH] [Updated] New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
` (2 preceding siblings ...)
2023-03-04 15:52 ` [PR PATCH] [Updated] " reedts
@ 2023-03-04 16:31 ` reedts
2023-03-04 16:33 ` reedts
2023-03-05 6:06 ` [PR PATCH] [Merged]: " classabbyamp
5 siblings, 0 replies; 7+ messages in thread
From: reedts @ 2023-03-04 16:31 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 918 bytes --]
There is an updated pull request by reedts against master on the void-packages repository
https://github.com/reedts/void-packages cargo-flamegraph_v0.6.2
https://github.com/void-linux/void-packages/pull/42585
New package: cargo-flamegraph-0.6.2
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
A patch file from https://github.com/void-linux/void-packages/pull/42585.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-cargo-flamegraph_v0.6.2-42585.patch --]
[-- Type: text/x-diff, Size: 8050768 bytes --]
From 37f5eb2ca4e602e468e8b97e58c0b119600b87c2 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Thu, 12 Mar 2020 13:09:55 +0100
Subject: [PATCH 01/26] Add template to build neomutt from git
---
srcpkgs/neomutt-git/INSTALL.msg | 2 +
.../patches/20191207...master.diff | 257823 +++++++++++++++
srcpkgs/neomutt-git/template | 54 +
srcpkgs/neomutt-git/update | 1 +
4 files changed, 257880 insertions(+)
create mode 100644 srcpkgs/neomutt-git/INSTALL.msg
create mode 100644 srcpkgs/neomutt-git/patches/20191207...master.diff
create mode 100644 srcpkgs/neomutt-git/template
create mode 100644 srcpkgs/neomutt-git/update
diff --git a/srcpkgs/neomutt-git/INSTALL.msg b/srcpkgs/neomutt-git/INSTALL.msg
new file mode 100644
index 000000000000..940935fe5a38
--- /dev/null
+++ b/srcpkgs/neomutt-git/INSTALL.msg
@@ -0,0 +1,2 @@
+As of 20171013, neomutt is no longer mutt. System config is in /etc/neomuttrc
+Due to upstream's choice, we have removed the alternatives for neomutt files.
diff --git a/srcpkgs/neomutt-git/patches/20191207...master.diff b/srcpkgs/neomutt-git/patches/20191207...master.diff
new file mode 100644
index 000000000000..5e51763bdbd3
--- /dev/null
+++ b/srcpkgs/neomutt-git/patches/20191207...master.diff
@@ -0,0 +1,257823 @@
+diff --git a/.cirrus.yml b/.cirrus.yml
+new file mode 100644
+index 000000000..ed73cd6d8
+--- /dev/null
++++ b/.cirrus.yml
+@@ -0,0 +1,30 @@
++freebsd_instance:
++ image_family: freebsd-13-0-snap
++
++task:
++ env:
++ PKG_COMMON:
++ cyrus-sasl db5 docbook-xsl gdbm gettext-tools gpgme iconv jimtcl
++ kyotocabinet libgpg-error libidn2 libxslt lmdb lua53 lynx notmuch pkgconf
++ qdbm tokyocabinet urlview
++ CONFIGURE_COMMON:
++ --autocrypt --bdb --disable-idn --disable-inotify --fmemopen --full-doc
++ --gdbm --gpgme --gss --homespool --idn2 --kyotocabinet --lmdb
++ --locales-fix --lua --mixmaster --notmuch --pkgconf --qdbm --sasl
++ --testing --tokyocabinet --with-domain=example.com --with-lock=flock
++ --zlib
++ matrix:
++ - name: FreeBSD / OpenSSL
++ install_script: pkg install -y ${PKG_COMMON} openssl
++ configure_script: ./configure ${CONFIGURE_COMMON} --ssl
++ - name: FreeBSD / LibreSSL
++ install_script: pkg install -y ${PKG_COMMON} libressl
++ configure_script: ./configure ${CONFIGURE_COMMON} --ssl
++ - name: FreeBSD / GnuTLS
++ install_script: pkg install -y ${PKG_COMMON} gnutls
++ configure_script: ./configure ${CONFIGURE_COMMON} --gnutls
++ - name: FreeBSD / S-Lang
++ install_script: pkg install -y ${PKG_COMMON} libslang2
++ configure_script: ./configure ${CONFIGURE_COMMON} --with-ui=slang
++ build_script: make
++ test_script: make test
+diff --git a/.clang-format b/.clang-format
+index 1b101fc65..f3e149f89 100644
+--- a/.clang-format
++++ b/.clang-format
+@@ -8,37 +8,60 @@ ColumnLimit: 80
+ BreakBeforeBraces: Allman
+
+ IncludeCategories:
++ # Standard library headers
+ - Regex: '"acutest\.h"'
+- Priority: -12
++ Priority: -130
+ - Regex: '"config\.h"'
+- Priority: -11
++ Priority: -120
+ - Regex: '<stddef\.h>'
+- Priority: -10
++ Priority: -110
+ - Regex: '<.*>'
+- Priority: -9
++ Priority: -100
++
++ # Backend private header
+ - Regex: '".*_private\.h"'
+- Priority: -8
++ Priority: -90
++
++ # NeoMutt library headers
+ - Regex: '"mutt/.*\.h"'
+- Priority: -7
++ Priority: -80
+ - Regex: '"address/.*\.h"'
+- Priority: -6
++ Priority: -70
+ - Regex: '"config/.*\.h"'
+- Priority: -5
++ Priority: -60
+ - Regex: '"email/.*\.h"'
+- Priority: -4
++ Priority: -50
+ - Regex: '"core/.*\.h"'
+- Priority: -3
++ Priority: -40
+ - Regex: '"conn/.*\.h"'
+- Priority: -2
++ Priority: -30
++ - Regex: '"gui/.*\.h"'
++ Priority: -20
++
++ # NeoMutt general purpose headers
+ - Regex: '"mutt\.h"'
+- Priority: -1
++ Priority: -10
++ - Regex: '"debug/.*\.h"'
++ Priority: -5
++
+ # Main Header 0
++
++ # Backend using its own library header
++ - Regex: '"lib\.h"'
++ Priority: 2
++
++ # All backend library headers
++ - Regex: '".*/lib\.h"'
++ Priority: 10
++
++ # All other NeoMutt headers
+ - Regex: '".*"'
+ Priority: 5
+
+ AlignAfterOpenBracket: true
+ AlignEscapedNewlinesLeft: false
+ AlignOperands: true
++AlignTrailingComments: true
+ AlwaysBreakAfterReturnType: None
+ BinPackArguments: true
+ BinPackParameters: true
+@@ -65,17 +88,9 @@ SpacesInSquareBrackets: false
+ PenaltyExcessCharacter: 1
+
+ # NEVER
+-
+ AllowShortFunctionsOnASingleLine: false
+ AllowShortBlocksOnASingleLine: false
+ AllowShortCaseLabelsOnASingleLine: false
+ AllowShortIfStatementsOnASingleLine: false
+ AllowShortLoopsOnASingleLine: false
+
+-# OPTIONAL
+-
+-AlignTrailingComments: true
+-# AlignConsecutiveAssignments: true
+-# AlignConsecutiveDeclarations: true
+-# AlwaysBreakBeforeMultilineStrings: true
+-# SpacesBeforeTrailingComments: 2
+diff --git a/AUTHORS.md b/AUTHORS.md
+index 2f8bd2ae1..ab4d4039e 100644
+--- a/AUTHORS.md
++++ b/AUTHORS.md
+@@ -157,6 +157,7 @@ Stephen Gilles,
+ [Stéphane Lesimple](https://github.com/speed47 "speed47"),
+ [Sven Guckes](https://github.com/guckes "guckes"),
+ [telshock](https://github.com/telshock "telshock"),
++[Tino Reichardt](https://github.com/mcmilk "mcmilk"),
+ [Theo Jepsen](https://github.com/theojepsen "theojepsen"),
+ [Thiago Costa de Paiva](https://github.com/tecepe "tecepe"),
+ [Thomas Adam](https://github.com/thomasadam "thomasadam"),
+diff --git a/CODEOWNERS b/CODEOWNERS
+new file mode 100644
+index 000000000..95831aac9
+--- /dev/null
++++ b/CODEOWNERS
+@@ -0,0 +1,5 @@
++# CODEOWNERS file syntax documented at:
++# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
++
++# Set global code owners.
++* @neomutt/reviewers
+diff --git a/ChangeLog.md b/ChangeLog.md
+index d1a9837e4..ed526d0f2 100644
+--- a/ChangeLog.md
++++ b/ChangeLog.md
+@@ -1,3 +1,26 @@
++yyyy-mm-dd
++* Features
++ - GPGMe: infer the signing key from the sender's address
++ - Classc PGP: emit a confirmation when a message is successfully decrypted
++* Contrib
++* Bug Fixes
++ - Avoid crash executing entire-thread inside an IMAP mailbox
++ - Avoid spurious newlines when logging headers
++ - Index: avoid skipping messages when uncollapse_jump is set
++ - Browser: fix directory browsing without mailboxes defined
++* Changed Config
++* Translations
++* Coverity defects
++* Docs
++* Website
++* Build
++ - Create libgui
++* Code
++ - Refactor Window handling to nest Windows
++ - Add tests for window_reflow()
++* Tidy
++* Upstream
++
+ 2019-12-07 Richard Russon <rich@flatcap.org>
+ * Features
+ - compose: draw status bar with highlights
+@@ -63,7 +86,7 @@
+ - fix crash in mutt_extract_token()
+ - force a screen refresh
+ - fix crash sending message from command line
+- - notmuch: use nm_default_uri if no mailbox data
++ - notmuch: use nm_default_url if no mailbox data
+ - fix forward attachments
+ - fix: vfprintf undefined behaviour in body_handler
+ - Fix relative symlink resolution
+@@ -735,7 +758,7 @@
+ - Fix nntp group selection
+ - Fix status color
+ - Tidy up S/MIME contrib
+- - Do not try to create Maildir if it is an NNTP URI
++ - Do not try to create Maildir if it is an NNTP URL
+ - Fix missing NONULL for mutt.set() in Lua
+ * Translations
+ - Fix German PGP shortkeys
+diff --git a/Makefile.autosetup b/Makefile.autosetup
+index 1d635442b..ccf548408 100644
+--- a/Makefile.autosetup
++++ b/Makefile.autosetup
+@@ -61,19 +61,17 @@ ALL_FILES!= (cd $(SRCDIR) && git ls-files 2>/dev/null) || true
+ ###############################################################################
+ # neomutt
+ NEOMUTT= neomutt$(EXEEXT)
+-NEOMUTTOBJS= addrbook.o alias.o bcache.o browser.o color.o commands.o \
+- complete.o compose.o compress.o conststrings.o context.o copy.o \
+- curs_lib.o edit.o editmsg.o enriched.o enter.o filter.o flags.o \
++NEOMUTTOBJS= addrbook.o alias.o bcache.o browser.o commands.o \
++ complete.o compose.o conststrings.o context.o copy.o \
++ edit.o editmsg.o enriched.o enter.o flags.o functions.o \
+ git_ver.o handler.o hdrline.o help.o hook.o icommands.o index.o init.o \
+ keymap.o mailcap.o main.o menu.o mutt_account.o mutt_attach.o \
+- mutt_body.o mutt_curses.o mutt_header.o mutt_history.o mutt_logging.o mutt_mailbox.o \
+- mutt_parse.o mutt_signal.o mutt_socket.o mutt_thread.o mutt_window.o \
++ mutt_body.o mutt_header.o mutt_history.o mutt_logging.o mutt_mailbox.o \
++ mutt_parse.o mutt_signal.o mutt_socket.o mutt_thread.o \
+ muttlib.o mx.o myvar.o pager.o pattern.o postpone.o progress.o query.o \
+ recvattach.o recvcmd.o resize.o rfc3676.o score.o send.o sendlib.o \
+- sidebar.o smtp.o sort.o state.o status.o system.o terminal.o version.o
+-@if HAVE_LIBUNWIND
+-NEOMUTTOBJS+= backtrace.o
+-@endif
++ sidebar.o smtp.o sort.o state.o status.o system.o version.o \
++ mutt_commands.o mutt_config.o command_parse.o
+
+ @if !HAVE_WCSCASECMP
+ NEOMUTTOBJS+= wcscasecmp.o
+@@ -87,6 +85,10 @@ NEOMUTTOBJS+= mutt_lua.o
+ @if USE_INOTIFY
+ NEOMUTTOBJS+= monitor.o
+ @endif
++@if USE_ZLIB
++NEOMUTTOBJS+= mutt_zstrm.o
++@endif
++
+ CLEANFILES+= $(NEOMUTT) $(NEOMUTTOBJS)
+ ALLOBJS+= $(NEOMUTTOBJS)
+
+@@ -119,6 +121,46 @@ CLEANFILES+= $(LIBNNTP) $(LIBNNTPOBJS)
+ MUTTLIBS+= $(LIBNNTP)
+ ALLOBJS+= $(LIBNNTPOBJS)
+
++###############################################################################
++# libcompress
++LIBCOMPRESS= libcompress.a
++LIBCOMPRESSOBJS=compress/compress.o
++CLEANFILES+= $(LIBCOMPRESS) $(LIBCOMPRESSOBJS)
++MUTTLIBS+= $(LIBCOMPRESS)
++ALLOBJS+= $(LIBCOMPRESSOBJS)
++
++###############################################################################
++# libgui
++LIBGUI= libgui.a
++LIBGUIOBJS= gui/color.o gui/curs_lib.o gui/mutt_curses.o gui/mutt_window.o gui/reflow.o gui/terminal.o
++CLEANFILES+= $(LIBGUI) $(LIBGUIOBJS)
++MUTTLIBS+= $(LIBGUI)
++ALLOBJS+= $(LIBGUIOBJS)
++
++###############################################################################
++# libdebug
++@if HAVE_LIBUNWIND
++LIBDEBUGOBJS+= debug/backtrace.o
++@endif
++@if USE_DEBUG_GRAPHVIZ
++LIBDEBUGOBJS+= debug/graphviz.o
++@endif
++@if USE_DEBUG_NOTIFY
++LIBDEBUGOBJS+= debug/notify.o
++@endif
++@if USE_DEBUG_PARSE_TEST
++LIBDEBUGOBJS+= debug/parse_test.o
++@endif
++@if USE_DEBUG_WINDOW
++LIBDEBUGOBJS+= debug/window.o
++@endif
++@if HAVE_LIBUNWIND || USE_DEBUG_GRAPHVIZ || USE_DEBUG_NOTIFY || USE_DEBUG_PARSE_TEST || USE_DEBUG_WINDOW
++LIBDEBUG= libdebug.a
++CLEANFILES+= $(LIBDEBUG) $(LIBDEBUGOBJS)
++MUTTLIBS+= $(LIBDEBUG)
++ALLOBJS+= $(LIBDEBUGOBJS)
++@endif
++
+ ###############################################################################
+ # libmbox
+ LIBMBOX= libmbox.a
+@@ -186,16 +228,19 @@ ALLOBJS+= $(LIBIMAPOBJS)
+ ###############################################################################
+ # libconn
+ LIBCONN= libconn.a
+-LIBCONNOBJS= conn/conn_globals.o conn/conn_raw.o conn/getdomain.o \
+- conn/sasl_plain.o conn/socket.o conn/tunnel.o
++LIBCONNOBJS= conn/connaccount.o conn/conn_globals.o conn/getdomain.o \
++ conn/raw.o conn/sasl_plain.o conn/socket.o conn/tunnel.o
+ @if HAVE_SASL
+ LIBCONNOBJS+= conn/sasl.o
+ @endif
+-@if USE_SSL_OPENSSL
+-LIBCONNOBJS+= conn/ssl.o
++@if USE_SSL
++LIBCONNOBJS+= conn/gui.o
+ @endif
+ @if USE_SSL_GNUTLS
+-LIBCONNOBJS+= conn/ssl_gnutls.o
++LIBCONNOBJS+= conn/gnutls.o
++@endif
++@if USE_SSL_OPENSSL
++LIBCONNOBJS+= conn/openssl.o
+ @endif
+ CLEANFILES+= $(LIBCONN) $(LIBCONNOBJS)
+ MUTTLIBS+= $(LIBCONN)
+@@ -227,6 +272,15 @@ LIBHCACHEOBJS+= hcache/qdbm.o
+ @if HAVE_TC
+ LIBHCACHEOBJS+= hcache/tc.o
+ @endif
++@if HAVE_LZ4
++LIBHCACHEOBJS+= hcache/compr_lz4.o
++@endif
++@if HAVE_ZLIB
++LIBHCACHEOBJS+= hcache/compr_zlib.o
++@endif
++@if HAVE_ZSTD
++LIBHCACHEOBJS+= hcache/compr_zstd.o
++@endif
+ @endif # USE_HCACHE
+
+ ###############################################################################
+@@ -249,7 +303,7 @@ ALLOBJS+= $(LIBCOREOBJS)
+ # libconfig
+ LIBCONFIG= libconfig.a
+ LIBCONFIGOBJS= config/address.o config/bool.o config/dump.o config/enum.o \
+- config/long.o config/mbtable.o config/number.o config/quad.o \
++ config/long.o config/mbtable.o config/number.o config/path.o config/quad.o \
+ config/regex.o config/set.o config/slist.o config/sort.o \
+ config/string.o config/subset.o
+
+@@ -281,7 +335,7 @@ ALLOBJS+= $(LIBADDRESSOBJS)
+ # libmutt
+ LIBMUTT= libmutt.a
+ LIBMUTTOBJS= mutt/base64.o mutt/buffer.o mutt/charset.o mutt/date.o \
+- mutt/envlist.o mutt/exit.o mutt/file.o mutt/hash.o mutt/history.o \
++ mutt/envlist.o mutt/exit.o mutt/file.o mutt/filter.o mutt/hash.o mutt/history.o \
+ mutt/list.o mutt/logging.o mutt/mapping.o mutt/mbyte.o mutt/md5.o \
+ mutt/memory.o mutt/notify.o mutt/path.o mutt/pool.o mutt/regex.o \
+ mutt/signal.o mutt/slist.o mutt/string.o
+@@ -351,6 +405,27 @@ $(LIBNNTP): $(PWD)/nntp $(LIBNNTPOBJS)
+ $(PWD)/nntp:
+ $(MKDIR_P) $(PWD)/nntp
+
++# libcompress
++$(LIBCOMPRESS): $(PWD)/compress $(LIBCOMPRESSOBJS)
++ $(AR) cr $@ $(LIBCOMPRESSOBJS)
++ $(RANLIB) $@
++$(PWD)/compress:
++ $(MKDIR_P) $(PWD)/compress
++
++# libgui
++$(LIBGUI): $(PWD)/gui $(LIBGUIOBJS)
++ $(AR) cr $@ $(LIBGUIOBJS)
++ $(RANLIB) $@
++$(PWD)/gui:
++ $(MKDIR_P) $(PWD)/gui
++
++# libdebug
++$(LIBDEBUG): $(PWD)/debug $(LIBDEBUGOBJS)
++ $(AR) cr $@ $(LIBDEBUGOBJS)
++ $(RANLIB) $@
++$(PWD)/debug:
++ $(MKDIR_P) $(PWD)/debug
++
+ # libmbox
+ $(LIBMBOX): $(PWD)/mbox $(LIBMBOXOBJS)
+ $(AR) cr $@ $(LIBMBOXOBJS)
+diff --git a/addrbook.c b/addrbook.c
+index 00a591058..c37ba5920 100644
+--- a/addrbook.c
++++ b/addrbook.c
+@@ -31,18 +31,18 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "addrbook.h"
+ #include "alias.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+
+@@ -92,7 +92,7 @@ static const char *alias_format_str(char *buf, size_t buflen, size_t col, int co
+ break;
+ case 'r':
+ addr[0] = '\0';
+- mutt_addrlist_write(addr, sizeof(addr), &alias->addr, true);
++ mutt_addrlist_write(&alias->addr, addr, sizeof(addr), true);
+ snprintf(fmt, sizeof(fmt), "%%%ss", prec);
+ snprintf(buf, buflen, fmt, addr);
+ break;
+@@ -106,18 +106,18 @@ static const char *alias_format_str(char *buf, size_t buflen, size_t col, int co
+ }
+
+ /**
+- * alias_make_entry - Format a menu item for the alias list - Implements Menu::menu_make_entry()
++ * alias_make_entry - Format a menu item for the alias list - Implements Menu::make_entry()
+ */
+ static void alias_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
+ NONULL(C_AliasFormat), alias_format_str,
+ (unsigned long) ((struct Alias **) menu->data)[line],
+ MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+- * alias_tag - Tag some aliases - Implements Menu::menu_tag()
++ * alias_tag - Tag some aliases - Implements Menu::tag()
+ */
+ static int alias_tag(struct Menu *menu, int sel, int act)
+ {
+@@ -185,6 +185,36 @@ static int alias_sort_address(const void *a, const void *b)
+ return RSORT(r);
+ }
+
++/**
++ * mutt_dlg_alias_observer - Listen for config changes affecting the Alias menu - Implements ::observer_t
++ */
++static int mutt_dlg_alias_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") != 0)
++ return 0;
++
++ struct MuttWindow *win_first = TAILQ_FIRST(&dlg->children);
++
++ if ((C_StatusOnTop && (win_first->type == WT_INDEX)) ||
++ (!C_StatusOnTop && (win_first->type != WT_INDEX)))
++ {
++ // Swap the Index and the IndexBar Windows
++ TAILQ_REMOVE(&dlg->children, win_first, entries);
++ TAILQ_INSERT_TAIL(&dlg->children, win_first, entries);
++ }
++
++ mutt_window_reflow(dlg);
++ return 0;
++}
++
+ /**
+ * mutt_alias_menu - Display a menu of Aliases
+ * @param buf Buffer for expanded aliases
+@@ -209,9 +239,43 @@ void mutt_alias_menu(char *buf, size_t buflen, struct AliasList *aliases)
+ return;
+ }
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "aliases";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_dlg_alias_observer, dlg);
++ dialog_push(dlg);
++
+ menu = mutt_menu_new(MENU_ALIAS);
+- menu->menu_make_entry = alias_make_entry;
+- menu->menu_tag = alias_tag;
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ menu->make_entry = alias_make_entry;
++ menu->tag = alias_tag;
+ menu->title = _("Aliases");
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_ALIAS, AliasHelp);
+ mutt_menu_push_current(menu);
+@@ -230,7 +294,7 @@ void mutt_alias_menu(char *buf, size_t buflen, struct AliasList *aliases)
+ mutt_mem_realloc(&alias_table, menu->max * sizeof(struct Alias *));
+ menu->data = alias_table;
+ if (!alias_table)
+- return;
++ goto mam_done;
+
+ if (last)
+ a = TAILQ_NEXT(last, entries);
+@@ -298,17 +362,22 @@ void mutt_alias_menu(char *buf, size_t buflen, struct AliasList *aliases)
+ {
+ if (alias_table[i]->tagged)
+ {
+- mutt_addrlist_write(buf, buflen, &alias_table[i]->addr, true);
++ mutt_addrlist_write(&alias_table[i]->addr, buf, buflen, true);
+ t = -1;
+ }
+ }
+
+ if (t != -1)
+ {
+- mutt_addrlist_write(buf, buflen, &alias_table[t]->addr, true);
++ mutt_addrlist_write(&alias_table[t]->addr, buf, buflen, true);
+ }
+
++ FREE(&alias_table);
++
++mam_done:
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
+- FREE(&alias_table);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_alias_observer, dlg);
++ mutt_window_free(&dlg);
+ }
+diff --git a/address/address.c b/address/address.c
+index 5b9767a5b..fa26c7c9c 100644
+--- a/address/address.c
++++ b/address/address.c
+@@ -32,7 +32,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address.h"
+ #include "idna2.h"
+
+@@ -43,6 +43,7 @@ const char AddressSpecials[] = "@.,:;<>[]\\\"()";
+
+ /**
+ * is_special - Is this character special to an email address?
++ * @param ch Character
+ */
+ #define is_special(ch) strchr(AddressSpecials, ch)
+
+@@ -864,11 +865,11 @@ bool mutt_addr_cmp(const struct Address *a, const struct Address *b)
+
+ /**
+ * mutt_addrlist_search - Search for an e-mail address in a list
+- * @param needle Address containing the search email
+ * @param haystack Address List
++ * @param needle Address containing the search email
+ * @retval true If the Address is in the list
+ */
+-bool mutt_addrlist_search(const struct Address *needle, const struct AddressList *haystack)
++bool mutt_addrlist_search(const struct AddressList *haystack, const struct Address *needle)
+ {
+ if (!needle || !haystack)
+ return false;
+@@ -1123,9 +1124,9 @@ size_t mutt_addr_write(char *buf, size_t buflen, struct Address *addr, bool disp
+
+ /**
+ * mutt_addrlist_write - Write an Address to a buffer
++ * @param al AddressList to display
+ * @param buf Buffer for the Address
+ * @param buflen Length of the buffer
+- * @param al AddressList to display
+ * @param display This address will be displayed to the user
+ * @retval num Length of the string written to buf
+ *
+@@ -1134,7 +1135,7 @@ size_t mutt_addr_write(char *buf, size_t buflen, struct Address *addr, bool disp
+ *
+ * @note It is assumed that `buf` is nul terminated!
+ */
+-size_t mutt_addrlist_write(char *buf, size_t buflen, const struct AddressList *al, bool display)
++size_t mutt_addrlist_write(const struct AddressList *al, char *buf, size_t buflen, bool display)
+ {
+ if (!buf || buflen == 0 || !al)
+ return 0;
+diff --git a/address/address.h b/address/address.h
+index 5bfae6887..645ffb488 100644
+--- a/address/address.h
++++ b/address/address.h
+@@ -26,7 +26,7 @@
+
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * struct Address - An email address
+@@ -89,9 +89,9 @@ void mutt_addrlist_prepend (struct AddressList *al, struct Address *a);
+ void mutt_addrlist_qualify (struct AddressList *al, const char *host);
+ int mutt_addrlist_remove (struct AddressList *al, const char *mailbox);
+ void mutt_addrlist_remove_xrefs(const struct AddressList *a, struct AddressList *b);
+-bool mutt_addrlist_search (const struct Address *needle, const struct AddressList *haystack);
++bool mutt_addrlist_search (const struct AddressList *haystack, const struct Address *needle);
+ int mutt_addrlist_to_intl (struct AddressList *al, char **err);
+ int mutt_addrlist_to_local (struct AddressList *al);
+-size_t mutt_addrlist_write (char *buf, size_t buflen, const struct AddressList *al, bool display);
++size_t mutt_addrlist_write (const struct AddressList *al, char *buf, size_t buflen, bool display);
+
+ #endif /* MUTT_EMAIL_ADDRESS_H */
+diff --git a/address/group.h b/address/group.h
+index 2c8ab6def..b070bc8f7 100644
+--- a/address/group.h
++++ b/address/group.h
+@@ -26,7 +26,7 @@
+ #define MUTT_GROUP_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address.h"
+
+ #define MUTT_GROUP 0 ///< 'group' config command
+diff --git a/address/idna.c b/address/idna.c
+index e3be0a35e..d02511665 100644
+--- a/address/idna.c
++++ b/address/idna.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "idna2.h"
+ #ifdef HAVE_LIBIDN
+ #include <stdbool.h>
+diff --git a/alias.c b/alias.c
+index 647dfb31a..15a9b937d 100644
+--- a/alias.c
++++ b/alias.c
+@@ -36,14 +36,14 @@
+ #include <string.h>
+ #include <wchar.h>
+ #include <wctype.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "alias.h"
+ #include "addrbook.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "hdrline.h"
+ #include "muttlib.h"
+@@ -402,8 +402,11 @@ void mutt_alias_create(struct Envelope *cur, struct AddressList *al)
+
+ retry_name:
+ /* L10N: prompt to add a new alias */
+- if ((mutt_get_field(_("Alias as: "), buf, sizeof(buf), 0) != 0) || !buf[0])
++ if ((mutt_get_field(_("Alias as: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
++ !buf[0])
++ {
+ return;
++ }
+
+ /* check to see if the user already has an alias defined */
+ if (mutt_alias_lookup(buf))
+@@ -439,7 +442,8 @@ void mutt_alias_create(struct Envelope *cur, struct AddressList *al)
+
+ do
+ {
+- if ((mutt_get_field(_("Address: "), buf, sizeof(buf), 0) != 0) || !buf[0])
++ if ((mutt_get_field(_("Address: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
++ !buf[0])
+ {
+ mutt_alias_free(&alias);
+ return;
+@@ -461,7 +465,7 @@ void mutt_alias_create(struct Envelope *cur, struct AddressList *al)
+ else
+ buf[0] = '\0';
+
+- if (mutt_get_field(_("Personal name: "), buf, sizeof(buf), 0) != 0)
++ if (mutt_get_field(_("Personal name: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0)
+ {
+ mutt_alias_free(&alias);
+ return;
+@@ -469,7 +473,7 @@ void mutt_alias_create(struct Envelope *cur, struct AddressList *al)
+ mutt_str_replace(&TAILQ_FIRST(&alias->addr)->personal, buf);
+
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &alias->addr, true);
++ mutt_addrlist_write(&alias->addr, buf, sizeof(buf), true);
+ snprintf(prompt, sizeof(prompt), _("[%s = %s] Accept?"), alias->name, buf);
+ if (mutt_yesorno(prompt, MUTT_YES) != MUTT_YES)
+ {
+@@ -517,7 +521,7 @@ void mutt_alias_create(struct Envelope *cur, struct AddressList *al)
+ recode_buf(buf, sizeof(buf));
+ fprintf(fp_alias, "alias %s ", buf);
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &alias->addr, false);
++ mutt_addrlist_write(&alias->addr, buf, sizeof(buf), false);
+ recode_buf(buf, sizeof(buf));
+ write_safe_address(fp_alias, buf);
+ fputc('\n', fp_alias);
+diff --git a/alias.h b/alias.h
+index 58cbf0b59..c53ffb1a4 100644
+--- a/alias.h
++++ b/alias.h
+@@ -26,7 +26,7 @@
+
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ struct Envelope;
+diff --git a/auto.def b/auto.def
+index 06267d51e..08559937d 100644
+--- a/auto.def
++++ b/auto.def
+@@ -91,12 +91,16 @@ options {
+ with-qdbm:path => "Location of QDBM"
+ tokyocabinet=0 => "Use TokyoCabinet for the header cache"
+ with-tokyocabinet:path => "Location of TokyoCabinet"
+-# libunwind
+- backtrace=0 => "Enable backtrace support with libunwind"
+- with-backtrace:path => "Location of libunwind"
+ # sqlite
+ sqlite=0 => "Enable SQLite support"
+ with-sqlite:path => "Location of sqlite"
++# compression
++ lz4=0 => "Enable LZ4 header cache compression support"
++ with-lz4:path => "Location of LZ4"
++ zlib=0 => "Enable zlib support"
++ with-zlib:path => "Location of zlib"
++ zstd=0 => "Enable Zstandard header cache compression support"
++ with-zstd:path => "Location of Zstandard"
+ # System
+ with-sysroot:path => "Target system root"
+ # Testing
+@@ -106,6 +110,13 @@ options {
+ pkgconf=0 => "Use pkg-config during configure"
+ # Enable all options
+ everything=0 => "Enable all options"
++# Debug options
++ debug-backtrace=0 => "DEBUG: Enable backtrace support with libunwind"
++ with-backtrace:path => "Location of libunwind"
++ debug-graphviz=0 => "DEBUG: Enable Graphviz dump"
++ debug-notify=0 => "DEBUG: Enable Notifications dump"
++ debug-parse-test=0 => "DEBUG: Enable 'neomutt -T' for config testing"
++ debug-window=0 => "DEBUG: Enable windows dump"
+ }
+ ###############################################################################
+
+@@ -116,10 +127,11 @@ options {
+ if {1} {
+ # Keep sorted, please.
+ foreach opt {
+- autocrypt backtrace bdb coverage doc everything fmemopen full-doc gdbm
+- gnutls gpgme gss homespool idn idn2 inotify kyotocabinet lmdb locales-fix
+- lua mixmaster nls notmuch pgp pkgconf qdbm sasl smime sqlite ssl testing
+- tokyocabinet
++ autocrypt bdb coverage debug-backtrace debug-graphviz debug-notify
++ debug-parse-test debug-window doc everything fmemopen full-doc gdbm gnutls
++ gpgme gss homespool idn idn2 inotify kyotocabinet lmdb locales-fix lua lz4
++ mixmaster nls notmuch pgp pkgconf qdbm sasl smime sqlite ssl testing
++ tokyocabinet zlib zstd
+ } {
+ define want-$opt [opt-bool $opt]
+ }
+@@ -128,8 +140,8 @@ if {1} {
+ # relative --enable-opt to true. This allows "--with-opt=/usr" to be used as
+ # a shortcut for "--opt --with-opt=/usr".
+ foreach opt {
+- bdb gdbm gnutls gpgme gss homespool idn idn2 kyotocabinet lmdb lua mixmaster
+- ncurses nls notmuch qdbm sasl slang sqlite ssl tokyocabinet
++ bdb gdbm gnutls gpgme gss homespool idn idn2 kyotocabinet lmdb lua lz4 mixmaster
++ ncurses nls notmuch qdbm sasl slang sqlite ssl tokyocabinet zlib zstd
+ } {
+ if {[opt-val with-$opt] ne {}} {
+ define want-$opt 1
+@@ -344,8 +356,8 @@ set prefix [opt-val with-sysroot][get-define prefix]
+ ###############################################################################
+ # Everything
+ if {[get-define want-everything]} {
+- foreach opt {bdb gdbm gpgme kyotocabinet lmdb lua notmuch pgp qdbm smime
+- tokyocabinet} {
++ foreach opt {bdb gdbm gpgme kyotocabinet lmdb lua lz4 notmuch pgp qdbm smime
++ tokyocabinet zlib zstd} {
+ define want-$opt
+ append conf_options "--$opt "
+ }
+@@ -637,6 +649,16 @@ if {[get-define want-sqlite]} {
+ define USE_SQLITE
+ }
+
++###############################################################################
++# zlib Support
++if {[get-define want-zlib]} {
++ if {![check-inc-and-lib zlib [opt-val with-zlib $prefix] \
++ zlib.h deflate z]} {
++ user-error "Unable to find zlib"
++ }
++ define USE_ZLIB
++}
++
+ ###############################################################################
+ # fmemopen(3)
+ if {[get-define want-fmemopen]} {
+@@ -744,16 +766,6 @@ if {[get-define want-homespool]} {
+ define MAILPATH [opt-val with-mailpath /var/mail]
+ }
+
+-###############################################################################
+-# Backtrace support with libunwind
+-if {[get-define want-backtrace]} {
+- if {![check-inc-and-lib libunwind [opt-val with-backtrace $prefix] \
+- libunwind.h unw_backtrace unwind]} {
+- user-error "Unable to find libunwind"
+- }
+- define LIBS "-lunwind-generic [get-define LIBS]"
+-}
+-
+ ###############################################################################
+ # Mixmaster
+ if {[get-define want-mixmaster]} {
+@@ -1021,6 +1033,45 @@ if {[get-define want-tokyocabinet]} {
+ define USE_HCACHE
+ }
+
++###############################################################################
++# Header Cache Compression with LZ4
++if {[get-define want-lz4]} {
++ if {![check-inc-and-lib lz4 [opt-val with-lz4 $prefix] \
++ lz4.h LZ4_compress_default lz4]} {
++ user-error "Unable to find LZ4"
++ }
++ define-append LIBS -llz4
++ define USE_LZ4
++ define USE_HCACHE_COMPRESSION
++ define-append COMPRESS_BACKENDS "lz4"
++}
++
++###############################################################################
++# Header Cache Compression with zlib
++if {[get-define want-zlib]} {
++ if {![check-inc-and-lib zlib [opt-val with-zlib $prefix] \
++ zlib.h deflate z]} {
++ user-error "Unable to find zlib"
++ }
++ define-append LIBS -lz
++ define USE_ZLIB
++ define USE_HCACHE_COMPRESSION
++ define-append COMPRESS_BACKENDS "zlib"
++}
++
++###############################################################################
++# Header Cache Compression with Zstandard
++if {[get-define want-zstd]} {
++ if {![check-inc-and-lib zstd [opt-val with-zstd $prefix] \
++ zstd.h ZSTD_compress zstd]} {
++ user-error "Unable to find Zstandard"
++ }
++ define-append LIBS -lzstd
++ define USE_ZSTD
++ define USE_HCACHE_COMPRESSION
++ define-append COMPRESS_BACKENDS "zstd"
++}
++
+ ###############################################################################
+ # GSS
+ if {[get-define want-gss]} {
+@@ -1071,6 +1122,38 @@ if {[get-define want-gss]} {
+ define USE_GSS
+ }
+
++###############################################################################
++# DEBUG options
++
++# Backtrace support with libunwind
++if {[get-define want-debug-backtrace]} {
++ if {![check-inc-and-lib libunwind [opt-val with-backtrace $prefix] \
++ libunwind.h unw_backtrace unwind]} {
++ user-error "Unable to find libunwind"
++ }
++ define LIBS "-lunwind-generic [get-define LIBS]"
++}
++
++# Graphviz dump
++if {[get-define want-debug-graphviz]} {
++ define USE_DEBUG_GRAPHVIZ 1
++}
++
++# Notifications dump
++if {[get-define want-debug-notify]} {
++ define USE_DEBUG_NOTIFY 1
++}
++
++# Parse Test
++if {[get-define want-debug-parse-test]} {
++ define USE_DEBUG_PARSE_TEST 1
++}
++
++# Windows dump
++if {[get-define want-debug-window]} {
++ define USE_DEBUG_WINDOW 1
++}
++
+ ###############################################################################
+ # Generate conststrings.c
+ set conststrings "\
+@@ -1161,18 +1244,19 @@ make-template .clang_complete.in
+ # Print a summary
+ user-notice "Summary of build options:
+
+- Version: [get-define PACKAGE_VERSION]
+- Host OS: [get-define host_os]
+- Install prefix: [get-define prefix]
+- Compiler: [get-define CC]
+- CFlags: [get-define CFLAGS]
+- LDFlags: [get-define LDFLAGS]
+- Libs: [get-define LIBS]
+-
+- GPGME: [yesno [get-define CRYPT_BACKEND_GPGME]]
+- PGP: [yesno [get-define CRYPT_BACKEND_CLASSIC_PGP]]
+- SMIME: [yesno [get-define CRYPT_BACKEND_CLASSIC_SMIME]]
+- Notmuch: [yesno [get-define USE_NOTMUCH]]
+- Header Cache(s): [get-define HCACHE_BACKENDS {}]
+- Lua: [yesno [get-define USE_LUA]]
++ Version: [get-define PACKAGE_VERSION]
++ Host OS: [get-define host_os]
++ Install prefix: [get-define prefix]
++ Compiler: [get-define CC]
++ CFlags: [get-define CFLAGS]
++ LDFlags: [get-define LDFLAGS]
++ Libs: [get-define LIBS]
++
++ GPGME: [yesno [get-define CRYPT_BACKEND_GPGME]]
++ PGP: [yesno [get-define CRYPT_BACKEND_CLASSIC_PGP]]
++ SMIME: [yesno [get-define CRYPT_BACKEND_CLASSIC_SMIME]]
++ Notmuch: [yesno [get-define USE_NOTMUCH]]
++ Header Cache(s): [get-define HCACHE_BACKENDS {}]
++ Header Compression(s): [get-define COMPRESS_BACKENDS {}]
++ Lua: [yesno [get-define USE_LUA]]
+ "
+diff --git a/autocrypt/autocrypt.c b/autocrypt/autocrypt.c
+index 2b273c680..cf4c9a09b 100644
+--- a/autocrypt/autocrypt.c
++++ b/autocrypt/autocrypt.c
+@@ -28,21 +28,23 @@
+
+ #include "config.h"
+ #include <errno.h>
++#include <stdbool.h>
++#include <stdio.h>
+ #include <string.h>
+ #include <sys/stat.h>
+ #include "autocrypt_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+-#include "autocrypt.h"
+-#include "curs_lib.h"
++#include "gui/lib.h"
+ #include "globals.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "send.h"
++#include "autocrypt/lib.h"
++#include "ncrypt/lib.h"
+
+ /**
+ * autocrypt_dir_init - Initialise an Autocrypt directory
+@@ -100,6 +102,11 @@ int mutt_autocrypt_init(bool can_create)
+ return -1;
+
+ OptIgnoreMacroEvents = true;
++ /* The init process can display menus at various points
++ *(e.g. browser, pgp key selection). This allows the screen to be
++ * autocleared after each menu, so the subsequent prompts can be
++ * read. */
++ OptMenuPopClearScreen = true;
+
+ if (autocrypt_dir_init(can_create))
+ goto bail;
+@@ -111,11 +118,13 @@ int mutt_autocrypt_init(bool can_create)
+ goto bail;
+
+ OptIgnoreMacroEvents = false;
++ OptMenuPopClearScreen = false;
+
+ return 0;
+
+ bail:
+ OptIgnoreMacroEvents = false;
++ OptMenuPopClearScreen = false;
+ C_Autocrypt = false;
+ mutt_autocrypt_db_close();
+ return -1;
+diff --git a/autocrypt/autocrypt_acct_menu.c b/autocrypt/autocrypt_acct_menu.c
+index c25cd9478..98dd9fead 100644
+--- a/autocrypt/autocrypt_acct_menu.c
++++ b/autocrypt/autocrypt_acct_menu.c
+@@ -30,19 +30,18 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include "autocrypt_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+-#include "autocrypt.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
++#include "autocrypt/lib.h"
+
+ /**
+ * struct AccountEntry - An entry in the Autocrypt account Menu
+@@ -69,16 +68,16 @@ static const struct Mapping AutocryptAcctHelp[] = {
+ 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 Enc ?:Help
++ q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ */
+ { N_("Tgl Active"), OP_AUTOCRYPT_TOGGLE_ACTIVE },
+ /* 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 Enc ?:Help
++ q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ */
+- { N_("Prf Enc"), OP_AUTOCRYPT_TOGGLE_PREFER },
++ { N_("Prf Encr"), OP_AUTOCRYPT_TOGGLE_PREFER },
+ { N_("Help"), OP_HELP },
+ { NULL, 0 }
+ };
+@@ -149,17 +148,17 @@ static const char *account_format_str(char *dest, size_t destlen, size_t col, in
+ }
+
+ /**
+- * account_entry - Create a line for the Autocrypt account menu
++ * account_make_entry - Create a line for the Autocrypt account menu - Implements Menu::make_entry()
+ * @param buf Buffer to save the string
+ * @param buflen Length of the buffer
+ * @param menu Menu to use
+ * @param num Line in the Menu
+ */
+-static void account_entry(char *buf, size_t buflen, struct Menu *menu, int num)
++static void account_make_entry(char *buf, size_t buflen, struct Menu *menu, int num)
+ {
+ struct AccountEntry *entry = &((struct AccountEntry *) menu->data)[num];
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
+ NONULL(C_AutocryptAcctFormat), account_format_str,
+ (unsigned long) entry, MUTT_FORMAT_ARROWCURSOR);
+ }
+@@ -177,7 +176,7 @@ static struct Menu *create_menu(void)
+ return NULL;
+
+ struct Menu *menu = mutt_menu_new(MENU_AUTOCRYPT_ACCT);
+- menu->menu_make_entry = account_entry;
++ menu->make_entry = account_make_entry;
+ /* menu->tag = account_tag; */
+ // L10N: Autocrypt Account Management Menu title
+ menu->title = _("Autocrypt Accounts");
+@@ -271,10 +270,42 @@ void mutt_autocrypt_account_menu(void)
+ if (mutt_autocrypt_init(false))
+ return;
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "autocrypt";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ struct Menu *menu = create_menu();
+ if (!menu)
+ return;
+
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ bool done = false;
+ while (!done)
+ {
+@@ -289,6 +320,9 @@ void mutt_autocrypt_account_menu(void)
+ {
+ menu_free(&menu);
+ menu = create_menu();
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
+ }
+ break;
+
+@@ -307,6 +341,9 @@ void mutt_autocrypt_account_menu(void)
+ {
+ menu_free(&menu);
+ menu = create_menu();
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
+ }
+ }
+ break;
+@@ -332,4 +369,6 @@ void mutt_autocrypt_account_menu(void)
+ }
+
+ menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
+ }
+diff --git a/autocrypt/autocrypt_db.c b/autocrypt/autocrypt_db.c
+index dcc7d7a27..b4cac1da7 100644
+--- a/autocrypt/autocrypt_db.c
++++ b/autocrypt/autocrypt_db.c
+@@ -32,10 +32,10 @@
+ #include <stdbool.h>
+ #include <sys/stat.h>
+ #include "autocrypt_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+-#include "autocrypt.h"
+ #include "globals.h"
++#include "autocrypt/lib.h"
+
+ /* Prepared statements */
+ static sqlite3_stmt *AccountGetStmt;
+diff --git a/autocrypt/autocrypt_gpgme.c b/autocrypt/autocrypt_gpgme.c
+index d07d61e38..8dbf0cb03 100644
+--- a/autocrypt/autocrypt_gpgme.c
++++ b/autocrypt/autocrypt_gpgme.c
+@@ -31,13 +31,13 @@
+ #include <gpgme.h>
+ #include <stdbool.h>
+ #include "autocrypt_private.h" // IWYU pragma: keep
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+-#include "curs_lib.h"
++#include "gui/lib.h"
+ #include "globals.h"
+-#include "ncrypt/crypt_gpgme.h"
+ #include "options.h"
++#include "ncrypt/lib.h"
+
+ /**
+ * create_gpgme_context - Create a GPGME context
+diff --git a/autocrypt/autocrypt_schema.c b/autocrypt/autocrypt_schema.c
+index 05b0f55ef..75a5eb4f1 100644
+--- a/autocrypt/autocrypt_schema.c
++++ b/autocrypt/autocrypt_schema.c
+@@ -30,7 +30,7 @@
+ #include <stddef.h>
+ #include <sqlite3.h>
+ #include "autocrypt_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * mutt_autocrypt_schema_init - Set up an Autocrypt database
+diff --git a/autocrypt/autocrypt.h b/autocrypt/lib.h
+similarity index 97%
+rename from autocrypt/autocrypt.h
+rename to autocrypt/lib.h
+index e4293c94f..83106482b 100644
+--- a/autocrypt/autocrypt.h
++++ b/autocrypt/lib.h
+@@ -34,8 +34,8 @@
+ * | autocrypt/autocrypt_schema.c | @subpage autocrypt_schema |
+ */
+
+-#ifndef MUTT_AUTOCRYPT_AUTOCRYPT_H
+-#define MUTT_AUTOCRYPT_AUTOCRYPT_H
++#ifndef MUTT_AUTOCRYPT_LIB_H
++#define MUTT_AUTOCRYPT_LIB_H
+
+ #include <sqlite3.h>
+ #include <stdbool.h>
+@@ -118,4 +118,4 @@ enum AutocryptRec mutt_autocrypt_ui_recommendation (struct Email *e, char
+ int mutt_autocrypt_write_autocrypt_header (struct Envelope *env, FILE *fp);
+ int mutt_autocrypt_write_gossip_headers (struct Envelope *env, FILE *fp);
+
+-#endif /* MUTT_AUTOCRYPT_AUTOCRYPT_H */
++#endif /* MUTT_AUTOCRYPT_LIB_H */
+diff --git a/bcache.c b/bcache.c
+index 4a72c4368..3ddc8594d 100644
+--- a/bcache.c
++++ b/bcache.c
+@@ -34,7 +34,7 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "bcache.h"
+ #include "mutt_account.h"
+@@ -62,7 +62,7 @@ struct BodyCache
+ static int bcache_path(struct ConnAccount *account, const char *mailbox, struct BodyCache *bcache)
+ {
+ char host[256];
+- struct Url url = { U_UNKNOWN };
++ struct Url url = { 0 };
+
+ if (!account || !C_MessageCachedir || !bcache)
+ return -1;
+@@ -80,7 +80,7 @@ static int bcache_path(struct ConnAccount *account, const char *mailbox, struct
+
+ struct Buffer *path = mutt_buffer_pool_get();
+ struct Buffer *dst = mutt_buffer_pool_get();
+- mutt_buffer_encode_path(path, NONULL(mailbox));
++ mutt_encode_path(path, NONULL(mailbox));
+
+ mutt_buffer_printf(dst, "%s/%s%s", C_MessageCachedir, host, mutt_b2s(path));
+ if (*(dst->dptr - 1) != '/')
+diff --git a/browser.c b/browser.c
+index d9893b96d..88d9ab1e6 100644
+--- a/browser.c
++++ b/browser.c
+@@ -39,32 +39,31 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "browser.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "mutt_attach.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "sendlib.h"
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+
+ /* These Config Variables are only used in browser.c */
+@@ -608,11 +607,15 @@ static const char *folder_format_str(char *buf, size_t buflen, size_t col, int c
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, folder_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, folder_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+
+ return src;
+ }
+@@ -801,7 +804,7 @@ static int examine_directory(struct Menu *menu, struct BrowserState *state,
+ struct MailboxNode *np = NULL;
+ STAILQ_FOREACH(np, &ml, entries)
+ {
+- if (mutt_str_strcmp(mutt_b2s(buf), mailbox_path(np->mailbox)) != 0)
++ if (mutt_str_strcmp(mutt_b2s(buf), mailbox_path(np->mailbox)) == 0)
+ break;
+ }
+
+@@ -930,7 +933,7 @@ static int examine_mailboxes(struct Menu *menu, struct BrowserState *state)
+ }
+
+ /**
+- * select_file_search - Menu search callback for matching files - Implements Menu::menu_search()
++ * select_file_search - Menu search callback for matching files - Implements Menu::search()
+ */
+ static int select_file_search(struct Menu *menu, regex_t *rx, int line)
+ {
+@@ -945,7 +948,7 @@ static int select_file_search(struct Menu *menu, regex_t *rx, int line)
+ }
+
+ /**
+- * folder_make_entry - Format a menu item for the folder browser - Implements Menu::menu_make_entry()
++ * folder_make_entry - Format a menu item for the folder browser - Implements Menu::make_entry()
+ */
+ static void folder_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+@@ -957,14 +960,14 @@ static void folder_make_entry(char *buf, size_t buflen, struct Menu *menu, int l
+ #ifdef USE_NNTP
+ if (OptNews)
+ {
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
+ NONULL(C_GroupIndexFormat), group_index_format_str,
+ (unsigned long) &folder, MUTT_FORMAT_ARROWCURSOR);
+ }
+ else
+ #endif
+ {
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
+ NONULL(C_FolderFormat), folder_format_str,
+ (unsigned long) &folder, MUTT_FORMAT_ARROWCURSOR);
+ }
+@@ -1103,7 +1106,7 @@ static void init_menu(struct BrowserState *state, struct Menu *menu,
+ }
+
+ /**
+- * file_tag - Tag an entry in the menu - Implements Menu::menu_tag()
++ * file_tag - Tag an entry in the menu - Implements Menu::tag()
+ */
+ static int file_tag(struct Menu *menu, int sel, int act)
+ {
+@@ -1142,6 +1145,36 @@ void mutt_browser_select_dir(const char *f)
+ mutt_buffer_strcpy(&LastDir, buf);
+ }
+
++/**
++ * mutt_dlg_browser_observer - Listen for config changes affecting the Browser menu - Implements ::observer_t
++ */
++static int mutt_dlg_browser_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") != 0)
++ return 0;
++
++ struct MuttWindow *win_first = TAILQ_FIRST(&dlg->children);
++
++ if ((C_StatusOnTop && (win_first->type == WT_INDEX)) ||
++ (!C_StatusOnTop && (win_first->type != WT_INDEX)))
++ {
++ // Swap the Index and the IndexBar Windows
++ TAILQ_REMOVE(&dlg->children, win_first, entries);
++ TAILQ_INSERT_TAIL(&dlg->children, win_first, entries);
++ }
++
++ mutt_window_reflow(dlg);
++ return 0;
++}
++
+ /**
+ * mutt_buffer_select_file - Let the user select a file
+ * @param[in] file Buffer for the result
+@@ -1288,7 +1321,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ {
+ /* If browsing in "local"-mode, than we chose to define LastDir to
+ * MailDir */
+- switch (mx_path_probe(CurrentFolder, NULL))
++ switch (mx_path_probe(CurrentFolder))
+ {
+ case MUTT_IMAP:
+ case MUTT_MAILDIR:
+@@ -1350,13 +1383,48 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ if (examine_directory(NULL, &state, mutt_b2s(&LastDir), mutt_b2s(prefix)) == -1)
+ goto bail;
+ }
++
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "browser";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_dlg_browser_observer, dlg);
++ dialog_push(dlg);
++
+ menu = mutt_menu_new(MENU_FOLDER);
+- menu->menu_make_entry = folder_make_entry;
+- menu->menu_search = select_file_search;
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ menu->make_entry = folder_make_entry;
++ menu->search = select_file_search;
+ menu->title = title;
+ menu->data = state.entry;
+ if (multiple)
+- menu->menu_tag = file_tag;
++ menu->tag = file_tag;
+
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_FOLDER,
+ #ifdef USE_NNTP
+@@ -1407,7 +1475,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ state.entry[menu->current].name);
+ }
+
+- enum MailboxType magic = mx_path_probe(mutt_b2s(buf), NULL);
++ enum MailboxType magic = mx_path_probe(mutt_b2s(buf));
+ if ((op == OP_DESCEND_DIRECTORY) || (magic == MUTT_MAILBOX_ERROR) ||
+ (magic == MUTT_UNKNOWN)
+ #ifdef USE_IMAP
+@@ -1530,8 +1598,10 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ mutt_buffer_strcpy(file, state.entry[menu->current].name);
+ #endif
+ else
++ {
+ mutt_buffer_concat_path(file, mutt_b2s(&LastDir),
+ state.entry[menu->current].name);
++ }
+ /* fallthrough */
+
+ case OP_EXIT:
+@@ -1576,7 +1646,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+
+ #ifdef USE_IMAP
+ case OP_BROWSER_TOGGLE_LSUB:
+- bool_str_toggle(Config, "imap_list_subscribed", NULL);
++ bool_str_toggle(NeoMutt->sub, "imap_list_subscribed", NULL);
+
+ mutt_unget_event(0, OP_CHECK_NEW);
+ break;
+@@ -1766,7 +1836,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ case OP_ENTER_MASK:
+ {
+ mutt_buffer_strcpy(buf, C_Mask ? C_Mask->pattern : NULL);
+- if (mutt_get_field(_("File Mask: "), buf->data, buf->dsize, 0) != 0)
++ if (mutt_get_field(_("File Mask: "), buf->data, buf->dsize, MUTT_COMP_NO_FLAGS) != 0)
+ break;
+
+ mutt_buffer_fix_dptr(buf);
+@@ -1777,7 +1847,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ mutt_buffer_strcpy(buf, ".");
+
+ struct Buffer errmsg = { 0 };
+- int rc = cs_str_string_set(Config, "mask", mutt_b2s(buf), NULL);
++ int rc = cs_subset_str_string_set(NeoMutt->sub, "mask", mutt_b2s(buf), NULL);
+ if (CSR_RESULT(rc) != CSR_SUCCESS)
+ {
+ if (!mutt_buffer_is_empty(&errmsg))
+@@ -1872,14 +1942,14 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ if (resort)
+ {
+ sort |= reverse ? SORT_REVERSE : 0;
+- cs_str_native_set(Config, "sort_browser", sort, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "sort_browser", sort, NULL);
+ browser_sort(&state);
+ browser_highlight_default(&state, menu);
+ menu->redraw = REDRAW_FULL;
+ }
+ else
+ {
+- cs_str_native_set(Config, "sort_browser", sort, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "sort_browser", sort, NULL);
+ }
+ break;
+ }
+@@ -1985,7 +2055,7 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ struct Body *b = mutt_make_file_attach(buf2);
+ if (b)
+ {
+- mutt_view_attachment(NULL, b, MUTT_VA_REGULAR, NULL, NULL, menu->indexwin);
++ mutt_view_attachment(NULL, b, MUTT_VA_REGULAR, NULL, NULL, menu->win_index);
+ mutt_body_free(&b);
+ menu->redraw = REDRAW_FULL;
+ }
+@@ -2080,7 +2150,8 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ else
+ snprintf(tmp2, sizeof(tmp2), _("Unsubscribe pattern: "));
+ /* buf comes from the buffer pool, so defaults to size 1024 */
+- if ((mutt_buffer_get_field(tmp2, buf, 0) != 0) || mutt_buffer_is_empty(buf))
++ if ((mutt_buffer_get_field(tmp2, buf, MUTT_COMP_NO_FLAGS) != 0) ||
++ mutt_buffer_is_empty(buf))
+ {
+ break;
+ }
+@@ -2175,6 +2246,9 @@ void mutt_buffer_select_file(struct Buffer *file, SelectFileFlags flags,
+ {
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_browser_observer, dlg);
++ mutt_window_free(&dlg);
+ }
+
+ goto_swapper[0] = '\0';
+diff --git a/browser.h b/browser.h
+index a3df51931..e9f3fd6b5 100644
+--- a/browser.h
++++ b/browser.h
+@@ -100,9 +100,6 @@ struct BrowserState
+ #ifdef USE_IMAP
+ bool imap_browse;
+ char *folder;
+- bool noselect : 1;
+- bool marked : 1;
+- bool unmarked : 1;
+ #endif
+ };
+
+diff --git a/command_parse.c b/command_parse.c
+new file mode 100644
+index 000000000..3bd57bda3
+--- /dev/null
++++ b/command_parse.c
+@@ -0,0 +1,2238 @@
++/**
++ * @file
++ * Functions to parse commands in a config file
++ *
++ * @authors
++ * Copyright (C) 1996-2002,2007,2010,2012-2013,2016 Michael R. Elkins <me@mutt.org>
++ * Copyright (C) 2004 g10 Code GmbH
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page command_parse Functions to parse commands in a config file
++ *
++ * Functions to parse commands in a config file
++ */
++
++#include "config.h"
++#include <errno.h>
++#include <limits.h>
++#include <regex.h>
++#include <stdbool.h>
++#include <stdio.h>
++#include <string.h>
++#include <sys/types.h>
++#include "mutt/lib.h"
++#include "address/lib.h"
++#include "config/lib.h"
++#include "email/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
++#include "mutt.h"
++#include "command_parse.h"
++#include "alias.h"
++#include "context.h"
++#include "globals.h"
++#include "init.h"
++#include "keymap.h"
++#include "monitor.h"
++#include "mutt_commands.h"
++#include "mutt_logging.h"
++#include "mutt_menu.h"
++#include "mutt_parse.h"
++#include "muttlib.h"
++#include "mx.h"
++#include "myvar.h"
++#include "options.h"
++#include "sidebar.h"
++#include "version.h"
++#include "imap/lib.h"
++#ifdef ENABLE_NLS
++#include <libintl.h>
++#endif
++
++/* LIFO designed to contain the list of config files that have been sourced and
++ * avoid cyclic sourcing */
++static struct ListHead MuttrcStack = STAILQ_HEAD_INITIALIZER(MuttrcStack);
++
++#define MAX_ERRS 128
++
++/**
++ * enum GroupState - Type of email address group
++ */
++enum GroupState
++{
++ GS_NONE, ///< Group is missing an argument
++ GS_RX, ///< Entry is a regular expression
++ GS_ADDR, ///< Entry is an address
++};
++
++/**
++ * parse_unreplace_list - Remove a string replacement rule - Implements Command::parse()
++ */
++static enum CommandResult parse_unreplace_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct ReplaceList *list = (struct ReplaceList *) data;
++
++ /* First token is a regex. */
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "unsubjectrx");
++ return MUTT_CMD_WARNING;
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ /* "*" is a special case. */
++ if (mutt_str_strcmp(buf->data, "*") == 0)
++ {
++ mutt_replacelist_free(list);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ mutt_replacelist_remove(list, buf->data);
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * attachments_clean - always wise to do what someone else did before
++ */
++static void attachments_clean(void)
++{
++ if (!Context || !Context->mailbox)
++ return;
++
++ struct Mailbox *m = Context->mailbox;
++ for (int i = 0; i < m->msg_count; i++)
++ {
++ struct Email *e = m->emails[i];
++ if (!e)
++ break;
++ e->attach_valid = false;
++ }
++}
++
++/**
++ * parse_unattach_list - Parse the "unattachments" command
++ * @param buf Buffer for temporary storage
++ * @param s Buffer containing the unattachments command
++ * @param head List of AttachMatch to remove from
++ * @param err Buffer for error messages
++ * @retval #MUTT_CMD_SUCCESS Always
++ */
++static enum CommandResult parse_unattach_list(struct Buffer *buf, struct Buffer *s,
++ struct ListHead *head, struct Buffer *err)
++{
++ struct AttachMatch *a = NULL;
++ char *tmp = NULL;
++ char *minor = NULL;
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ FREE(&tmp);
++
++ if (mutt_str_strcasecmp(buf->data, "any") == 0)
++ tmp = mutt_str_strdup("*/.*");
++ else if (mutt_str_strcasecmp(buf->data, "none") == 0)
++ tmp = mutt_str_strdup("cheap_hack/this_should_never_match");
++ else
++ tmp = mutt_str_strdup(buf->data);
++
++ minor = strchr(tmp, '/');
++ if (minor)
++ {
++ *minor = '\0';
++ minor++;
++ }
++ else
++ {
++ minor = "unknown";
++ }
++ const enum ContentType major = mutt_check_mime_type(tmp);
++
++ struct ListNode *np = NULL, *tmp2 = NULL;
++ STAILQ_FOREACH_SAFE(np, head, entries, tmp2)
++ {
++ a = (struct AttachMatch *) np->data;
++ mutt_debug(LL_DEBUG3, "check %s/%s [%d] : %s/%s [%d]\n", a->major,
++ a->minor, a->major_int, tmp, minor, major);
++ if ((a->major_int == major) && (mutt_str_strcasecmp(minor, a->minor) == 0))
++ {
++ mutt_debug(LL_DEBUG3, "removed %s/%s [%d]\n", a->major, a->minor, a->major_int);
++ regfree(&a->minor_regex);
++ FREE(&a->major);
++ STAILQ_REMOVE(head, np, ListNode, entries);
++ FREE(&np->data);
++ FREE(&np);
++ }
++ }
++
++ } while (MoreArgs(s));
++
++ FREE(&tmp);
++ attachments_clean();
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * clear_subject_mods - Clear out all modified email subjects
++ */
++static void clear_subject_mods(void)
++{
++ if (!Context || !Context->mailbox)
++ return;
++
++ struct Mailbox *m = Context->mailbox;
++ for (int i = 0; i < m->msg_count; i++)
++ {
++ struct Email *e = m->emails[i];
++ if (!e || !e->env)
++ continue;
++ FREE(&e->env->disp_subj);
++ }
++}
++
++/**
++ * parse_replace_list - Parse a string replacement rule - Implements Command::parse()
++ */
++static enum CommandResult parse_replace_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct ReplaceList *list = (struct ReplaceList *) data;
++ struct Buffer templ = mutt_buffer_make(0);
++
++ /* First token is a regex. */
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "subjectrx");
++ return MUTT_CMD_WARNING;
++ }
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ /* Second token is a replacement template */
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "subjectrx");
++ return MUTT_CMD_WARNING;
++ }
++ mutt_extract_token(&templ, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (mutt_replacelist_add(list, buf->data, templ.data, err) != 0)
++ {
++ FREE(&templ.data);
++ return MUTT_CMD_ERROR;
++ }
++ FREE(&templ.data);
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * is_function - Is the argument a neomutt function?
++ * @param name Command name to be searched for
++ * @retval true Function found
++ * @retval false Function not found
++ */
++static bool is_function(const char *name)
++{
++ for (enum MenuType i = 0; i < MENU_MAX; i++)
++ {
++ const struct Binding *b = km_get_table(Menus[i].value);
++ if (!b)
++ continue;
++
++ for (int j = 0; b[j].name; j++)
++ if (mutt_str_strcmp(name, b[j].name) == 0)
++ return true;
++ }
++ return false;
++}
++
++/**
++ * mutt_attachmatch_new - Create a new AttachMatch
++ * @retval ptr New AttachMatch
++ */
++static struct AttachMatch *mutt_attachmatch_new(void)
++{
++ return mutt_mem_calloc(1, sizeof(struct AttachMatch));
++}
++
++/**
++ * parse_attach_list - Parse the "attachments" command
++ * @param buf Buffer for temporary storage
++ * @param s Buffer containing the attachments command
++ * @param head List of AttachMatch to add to
++ * @param err Buffer for error messages
++ * @retval #CommandResult Result e.g. #MUTT_CMD_SUCCESS
++ */
++static enum CommandResult parse_attach_list(struct Buffer *buf, struct Buffer *s,
++ struct ListHead *head, struct Buffer *err)
++{
++ struct AttachMatch *a = NULL;
++ char *p = NULL;
++ char *tmpminor = NULL;
++ size_t len;
++ int ret;
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (!buf->data || (*buf->data == '\0'))
++ continue;
++
++ a = mutt_attachmatch_new();
++
++ /* some cheap hacks that I expect to remove */
++ if (mutt_str_strcasecmp(buf->data, "any") == 0)
++ a->major = mutt_str_strdup("*/.*");
++ else if (mutt_str_strcasecmp(buf->data, "none") == 0)
++ a->major = mutt_str_strdup("cheap_hack/this_should_never_match");
++ else
++ a->major = mutt_str_strdup(buf->data);
++
++ p = strchr(a->major, '/');
++ if (p)
++ {
++ *p = '\0';
++ p++;
++ a->minor = p;
++ }
++ else
++ {
++ a->minor = "unknown";
++ }
++
++ len = strlen(a->minor);
++ tmpminor = mutt_mem_malloc(len + 3);
++ strcpy(&tmpminor[1], a->minor);
++ tmpminor[0] = '^';
++ tmpminor[len + 1] = '$';
++ tmpminor[len + 2] = '\0';
++
++ a->major_int = mutt_check_mime_type(a->major);
++ ret = REG_COMP(&a->minor_regex, tmpminor, REG_ICASE);
++
++ FREE(&tmpminor);
++
++ if (ret != 0)
++ {
++ regerror(ret, &a->minor_regex, err->data, err->dsize);
++ FREE(&a->major);
++ FREE(&a);
++ return MUTT_CMD_ERROR;
++ }
++
++ mutt_debug(LL_DEBUG3, "added %s/%s [%d]\n", a->major, a->minor, a->major_int);
++
++ mutt_list_insert_tail(head, (char *) a);
++ } while (MoreArgs(s));
++
++ attachments_clean();
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * print_attach_list - Print a list of attachments
++ * @param h List of attachments
++ * @param op Operation, e.g. '+', '-'
++ * @param name Attached/Inline, 'A', 'I'
++ * @retval 0 Always
++ */
++static int print_attach_list(struct ListHead *h, const char op, const char *name)
++{
++ struct ListNode *np = NULL;
++ STAILQ_FOREACH(np, h, entries)
++ {
++ printf("attachments %c%s %s/%s\n", op, name,
++ ((struct AttachMatch *) np->data)->major,
++ ((struct AttachMatch *) np->data)->minor);
++ }
++
++ return 0;
++}
++
++/**
++ * alternates_clean - Clear the recipient valid flag of all emails
++ */
++static void alternates_clean(void)
++{
++ if (!Context || !Context->mailbox)
++ return;
++
++ struct Mailbox *m = Context->mailbox;
++ for (int i = 0; i < m->msg_count; i++)
++ {
++ struct Email *e = m->emails[i];
++ if (!e)
++ break;
++ e->recip_valid = false;
++ }
++}
++
++/**
++ * parse_grouplist - Parse a group context
++ * @param gl GroupList to add to
++ * @param buf Temporary Buffer space
++ * @param s Buffer containing string to be parsed
++ * @param data Flags associated with the command
++ * @param err Buffer for error messages
++ * @retval 0 Success
++ * @retval -1 Error
++ */
++static int parse_grouplist(struct GroupList *gl, struct Buffer *buf,
++ struct Buffer *s, unsigned long data, struct Buffer *err)
++{
++ while (mutt_str_strcasecmp(buf->data, "-group") == 0)
++ {
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_strcpy(err, _("-group: no group name"));
++ return -1;
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ mutt_grouplist_add(gl, mutt_pattern_group(buf->data));
++
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_strcpy(err, _("out of arguments"));
++ return -1;
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ }
++
++ return 0;
++}
++
++/**
++ * source_rc - Read an initialization file
++ * @param rcfile_path Path to initialization file
++ * @param err Buffer for error messages
++ * @retval <0 if neomutt should pause to let the user know
++ */
++int source_rc(const char *rcfile_path, struct Buffer *err)
++{
++ int line = 0, rc = 0, warnings = 0;
++ enum CommandResult line_rc;
++ struct Buffer token;
++ char *linebuf = NULL;
++ char *currentline = NULL;
++ char rcfile[PATH_MAX];
++ size_t buflen;
++
++ pid_t pid;
++
++ mutt_str_strfcpy(rcfile, rcfile_path, sizeof(rcfile));
++
++ size_t rcfilelen = mutt_str_strlen(rcfile);
++ if (rcfilelen == 0)
++ return -1;
++
++ bool ispipe = rcfile[rcfilelen - 1] == '|';
++
++ if (!ispipe)
++ {
++ struct ListNode *np = STAILQ_FIRST(&MuttrcStack);
++ if (!mutt_path_to_absolute(rcfile, np ? NONULL(np->data) : ""))
++ {
++ mutt_error(_("Error: Can't build path of '%s'"), rcfile_path);
++ return -1;
++ }
++
++ STAILQ_FOREACH(np, &MuttrcStack, entries)
++ {
++ if (mutt_str_strcmp(np->data, rcfile) == 0)
++ {
++ break;
++ }
++ }
++ if (np)
++ {
++ mutt_error(_("Error: Cyclic sourcing of configuration file '%s'"), rcfile);
++ return -1;
++ }
++
++ mutt_list_insert_head(&MuttrcStack, mutt_str_strdup(rcfile));
++ }
++
++ mutt_debug(LL_DEBUG2, "Reading configuration file '%s'\n", rcfile);
++
++ FILE *fp = mutt_open_read(rcfile, &pid);
++ if (!fp)
++ {
++ mutt_buffer_printf(err, "%s: %s", rcfile, strerror(errno));
++ return -1;
++ }
++
++ mutt_buffer_init(&token);
++ while ((linebuf = mutt_file_read_line(linebuf, &buflen, fp, &line, MUTT_CONT)))
++ {
++ const bool conv = C_ConfigCharset && C_Charset;
++ if (conv)
++ {
++ currentline = mutt_str_strdup(linebuf);
++ if (!currentline)
++ continue;
++ mutt_ch_convert_string(¤tline, C_ConfigCharset, C_Charset, 0);
++ }
++ else
++ currentline = linebuf;
++ mutt_buffer_reset(err);
++ line_rc = mutt_parse_rc_line(currentline, &token, err);
++ if (line_rc == MUTT_CMD_ERROR)
++ {
++ mutt_error(_("Error in %s, line %d: %s"), rcfile, line, err->data);
++ if (--rc < -MAX_ERRS)
++ {
++ if (conv)
++ FREE(¤tline);
++ break;
++ }
++ }
++ else if (line_rc == MUTT_CMD_WARNING)
++ {
++ /* Warning */
++ mutt_warning(_("Warning in %s, line %d: %s"), rcfile, line, err->data);
++ warnings++;
++ }
++ else if (line_rc == MUTT_CMD_FINISH)
++ {
++ break; /* Found "finish" command */
++ }
++ else
++ {
++ if (rc < 0)
++ rc = -1;
++ }
++ if (conv)
++ FREE(¤tline);
++ }
++ FREE(&token.data);
++ FREE(&linebuf);
++ mutt_file_fclose(&fp);
++ if (pid != -1)
++ filter_wait(pid);
++ if (rc)
++ {
++ /* the neomuttrc source keyword */
++ mutt_buffer_reset(err);
++ mutt_buffer_printf(err, (rc >= -MAX_ERRS) ? _("source: errors in %s") : _("source: reading aborted due to too many errors in %s"),
++ rcfile);
++ rc = -1;
++ }
++ else
++ {
++ /* Don't alias errors with warnings */
++ if (warnings > 0)
++ {
++ mutt_buffer_printf(err, ngettext("source: %d warning in %s", "source: %d warnings in %s", warnings),
++ warnings, rcfile);
++ rc = -2;
++ }
++ }
++
++ if (!ispipe && !STAILQ_EMPTY(&MuttrcStack))
++ {
++ struct ListNode *np = STAILQ_FIRST(&MuttrcStack);
++ STAILQ_REMOVE_HEAD(&MuttrcStack, entries);
++ FREE(&np->data);
++ FREE(&np);
++ }
++
++ return rc;
++}
++
++/**
++ * parse_alias - Parse the 'alias' command - Implements Command::parse()
++ */
++enum CommandResult parse_alias(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Alias *tmp = NULL;
++ char *estr = NULL;
++ struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
++
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_strcpy(err, _("alias: no address"));
++ return MUTT_CMD_WARNING;
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (parse_grouplist(&gl, buf, s, data, err) == -1)
++ return MUTT_CMD_ERROR;
++
++ /* check to see if an alias with this name already exists */
++ TAILQ_FOREACH(tmp, &Aliases, entries)
++ {
++ if (mutt_str_strcasecmp(tmp->name, buf->data) == 0)
++ break;
++ }
++
++ if (tmp)
++ {
++ mutt_alias_delete_reverse(tmp);
++ /* override the previous value */
++ mutt_addrlist_clear(&tmp->addr);
++ if (CurrentMenu == MENU_ALIAS)
++ mutt_menu_set_current_redraw_full();
++ }
++ else
++ {
++ /* create a new alias */
++ tmp = mutt_alias_new();
++ tmp->name = mutt_str_strdup(buf->data);
++ TAILQ_INSERT_TAIL(&Aliases, tmp, entries);
++ /* give the main addressbook code a chance */
++ if (CurrentMenu == MENU_ALIAS)
++ OptMenuCaller = true;
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_QUOTE | MUTT_TOKEN_SPACE | MUTT_TOKEN_SEMICOLON);
++ mutt_debug(LL_DEBUG5, "Second token is '%s'\n", buf->data);
++
++ mutt_addrlist_parse2(&tmp->addr, buf->data);
++
++ if (mutt_addrlist_to_intl(&tmp->addr, &estr))
++ {
++ mutt_buffer_printf(err, _("Warning: Bad IDN '%s' in alias '%s'"), estr, tmp->name);
++ FREE(&estr);
++ goto bail;
++ }
++
++ mutt_grouplist_add_addrlist(&gl, &tmp->addr);
++ mutt_alias_add_reverse(tmp);
++
++ if (C_DebugLevel > LL_DEBUG4)
++ {
++ /* A group is terminated with an empty address, so check a->mailbox */
++ struct Address *a = NULL;
++ TAILQ_FOREACH(a, &tmp->addr, entries)
++ {
++ if (!a->mailbox)
++ break;
++
++ if (a->group)
++ mutt_debug(LL_DEBUG5, " Group %s\n", a->mailbox);
++ else
++ mutt_debug(LL_DEBUG5, " %s\n", a->mailbox);
++ }
++ }
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_SUCCESS;
++
++bail:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_ERROR;
++}
++
++/**
++ * parse_alternates - Parse the 'alternates' command - Implements Command::parse()
++ */
++enum CommandResult parse_alternates(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
++
++ alternates_clean();
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (parse_grouplist(&gl, buf, s, data, err) == -1)
++ goto bail;
++
++ mutt_regexlist_remove(&UnAlternates, buf->data);
++
++ if (mutt_regexlist_add(&Alternates, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++
++ if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++ } while (MoreArgs(s));
++
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_SUCCESS;
++
++bail:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_ERROR;
++}
++
++/**
++ * parse_attachments - Parse the 'attachments' command - Implements Command::parse()
++ */
++enum CommandResult parse_attachments(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ char op;
++ char *category = NULL;
++ struct ListHead *head = NULL;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (!buf->data || (*buf->data == '\0'))
++ {
++ mutt_buffer_strcpy(err, _("attachments: no disposition"));
++ return MUTT_CMD_WARNING;
++ }
++
++ category = buf->data;
++ op = *category++;
++
++ if (op == '?')
++ {
++ mutt_endwin();
++ fflush(stdout);
++ printf("\n%s\n\n", _("Current attachments settings:"));
++ print_attach_list(&AttachAllow, '+', "A");
++ print_attach_list(&AttachExclude, '-', "A");
++ print_attach_list(&InlineAllow, '+', "I");
++ print_attach_list(&InlineExclude, '-', "I");
++ mutt_any_key_to_continue(NULL);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ if ((op != '+') && (op != '-'))
++ {
++ op = '+';
++ category--;
++ }
++ if (mutt_str_startswith("attachment", category, CASE_IGNORE))
++ {
++ if (op == '+')
++ head = &AttachAllow;
++ else
++ head = &AttachExclude;
++ }
++ else if (mutt_str_startswith("inline", category, CASE_IGNORE))
++ {
++ if (op == '+')
++ head = &InlineAllow;
++ else
++ head = &InlineExclude;
++ }
++ else
++ {
++ mutt_buffer_strcpy(err, _("attachments: invalid disposition"));
++ return MUTT_CMD_ERROR;
++ }
++
++ return parse_attach_list(buf, s, head, err);
++}
++
++/**
++ * parse_echo - Parse the 'echo' command - Implements Command::parse()
++ */
++enum CommandResult parse_echo(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "echo");
++ return MUTT_CMD_WARNING;
++ }
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ OptForceRefresh = true;
++ mutt_message("%s", buf->data);
++ OptForceRefresh = false;
++ mutt_sleep(0);
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_finish - Parse the 'finish' command - Implements Command::parse()
++ * @retval #MUTT_CMD_FINISH Stop processing the current file
++ * @retval #MUTT_CMD_WARNING Failed
++ *
++ * If the 'finish' command is found, we should stop reading the current file.
++ */
++enum CommandResult parse_finish(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too many arguments"), "finish");
++ return MUTT_CMD_WARNING;
++ }
++
++ return MUTT_CMD_FINISH;
++}
++
++/**
++ * parse_group - Parse the 'group' and 'ungroup' commands - Implements Command::parse()
++ */
++enum CommandResult parse_group(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
++ enum GroupState state = GS_NONE;
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (parse_grouplist(&gl, buf, s, data, err) == -1)
++ goto bail;
++
++ if ((data == MUTT_UNGROUP) && (mutt_str_strcasecmp(buf->data, "*") == 0))
++ {
++ mutt_grouplist_clear(&gl);
++ goto out;
++ }
++
++ if (mutt_str_strcasecmp(buf->data, "-rx") == 0)
++ state = GS_RX;
++ else if (mutt_str_strcasecmp(buf->data, "-addr") == 0)
++ state = GS_ADDR;
++ else
++ {
++ switch (state)
++ {
++ case GS_NONE:
++ mutt_buffer_printf(err, _("%sgroup: missing -rx or -addr"),
++ (data == MUTT_UNGROUP) ? "un" : "");
++ goto warn;
++
++ case GS_RX:
++ if ((data == MUTT_GROUP) &&
++ (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0))
++ {
++ goto bail;
++ }
++ else if ((data == MUTT_UNGROUP) &&
++ (mutt_grouplist_remove_regex(&gl, buf->data) < 0))
++ {
++ goto bail;
++ }
++ break;
++
++ case GS_ADDR:
++ {
++ char *estr = NULL;
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ mutt_addrlist_parse2(&al, buf->data);
++ if (TAILQ_EMPTY(&al))
++ goto bail;
++ if (mutt_addrlist_to_intl(&al, &estr))
++ {
++ mutt_buffer_printf(err, _("%sgroup: warning: bad IDN '%s'"),
++ (data == 1) ? "un" : "", estr);
++ mutt_addrlist_clear(&al);
++ FREE(&estr);
++ goto bail;
++ }
++ if (data == MUTT_GROUP)
++ mutt_grouplist_add_addrlist(&gl, &al);
++ else if (data == MUTT_UNGROUP)
++ mutt_grouplist_remove_addrlist(&gl, &al);
++ mutt_addrlist_clear(&al);
++ break;
++ }
++ }
++ }
++ } while (MoreArgs(s));
++
++out:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_SUCCESS;
++
++bail:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_ERROR;
++
++warn:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_WARNING;
++}
++
++/**
++ * parse_ifdef - Parse the 'ifdef' and 'ifndef' commands - Implements Command::parse()
++ *
++ * The 'ifdef' command allows conditional elements in the config file.
++ * If a given variable, function, command or compile-time symbol exists, then
++ * read the rest of the line of config commands.
++ * e.g.
++ * ifdef sidebar source ~/.neomutt/sidebar.rc
++ *
++ * If (data == 1) then it means use the 'ifndef' (if-not-defined) command.
++ * e.g.
++ * ifndef imap finish
++ */
++enum CommandResult parse_ifdef(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Buffer token = mutt_buffer_make(0);
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ // is the item defined as:
++ bool res = cs_subset_lookup(NeoMutt->sub, buf->data) // a variable?
++ || feature_enabled(buf->data) // a compiled-in feature?
++ || is_function(buf->data) // a function?
++ || mutt_command_get(buf->data) // a command?
++ || myvar_get(buf->data) // a my_ variable?
++ || mutt_str_getenv(buf->data); // an environment variable?
++
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), (data ? "ifndef" : "ifdef"));
++ return MUTT_CMD_WARNING;
++ }
++ mutt_extract_token(buf, s, MUTT_TOKEN_SPACE);
++
++ /* ifdef KNOWN_SYMBOL or ifndef UNKNOWN_SYMBOL */
++ if ((res && (data == 0)) || (!res && (data == 1)))
++ {
++ enum CommandResult rc = mutt_parse_rc_line(buf->data, &token, err);
++ if (rc == MUTT_CMD_ERROR)
++ {
++ mutt_error(_("Error: %s"), err->data);
++ FREE(&token.data);
++ return MUTT_CMD_ERROR;
++ }
++ FREE(&token.data);
++ return rc;
++ }
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_ignore - Parse the 'ignore' command - Implements Command::parse()
++ */
++enum CommandResult parse_ignore(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ remove_from_stailq(&UnIgnore, buf->data);
++ add_to_stailq(&Ignore, buf->data);
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_lists - Parse the 'lists' command - Implements Command::parse()
++ */
++enum CommandResult parse_lists(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (parse_grouplist(&gl, buf, s, data, err) == -1)
++ goto bail;
++
++ mutt_regexlist_remove(&UnMailLists, buf->data);
++
++ if (mutt_regexlist_add(&MailLists, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++
++ if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++ } while (MoreArgs(s));
++
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_SUCCESS;
++
++bail:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_ERROR;
++}
++
++/**
++ * parse_mailboxes - Parse the 'mailboxes' command - Implements Command::parse()
++ *
++ * This is also used by 'virtual-mailboxes'.
++ */
++enum CommandResult parse_mailboxes(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ while (MoreArgs(s))
++ {
++ struct Mailbox *m = mailbox_new();
++
++ if (data & MUTT_NAMED)
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (buf->data && (*buf->data != '\0'))
++ {
++ m->name = mutt_str_strdup(buf->data);
++ }
++ else
++ {
++ mailbox_free(&m);
++ continue;
++ }
++ }
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (mutt_buffer_is_empty(buf))
++ {
++ /* Skip empty tokens. */
++ mailbox_free(&m);
++ continue;
++ }
++
++ mutt_buffer_strcpy(&m->pathbuf, buf->data);
++ /* int rc = */ mx_path_canon2(m, C_Folder);
++
++ if (m->magic <= MUTT_UNKNOWN)
++ {
++ mutt_error("Unknown Mailbox: %s", m->realpath);
++ mailbox_free(&m);
++ return MUTT_CMD_ERROR;
++ }
++
++ bool new_account = false;
++ struct Account *a = mx_ac_find(m);
++ if (!a)
++ {
++ a = account_new(NULL, NeoMutt->sub);
++ a->magic = m->magic;
++ new_account = true;
++ }
++
++ if (!new_account)
++ {
++ struct Mailbox *m_old = mx_mbox_find(a, m->realpath);
++ if (m_old)
++ {
++ if (m_old->flags == MB_HIDDEN)
++ {
++ m_old->flags = MB_NORMAL;
++ mutt_sb_notify_mailbox(m_old, true);
++ }
++ mailbox_free(&m);
++ continue;
++ }
++ }
++
++ if (mx_ac_add(a, m) < 0)
++ {
++ //error
++ mailbox_free(&m);
++ if (new_account)
++ {
++ cs_subset_free(&a->sub);
++ FREE(&a->name);
++ notify_free(&a->notify);
++ FREE(&a);
++ }
++ continue;
++ }
++ if (new_account)
++ {
++ neomutt_account_add(NeoMutt, a);
++ }
++
++#ifdef USE_SIDEBAR
++ mutt_sb_notify_mailbox(m, true);
++#endif
++#ifdef USE_INOTIFY
++ mutt_monitor_add(m);
++#endif
++ }
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_my_hdr - Parse the 'my_hdr' command - Implements Command::parse()
++ */
++enum CommandResult parse_my_hdr(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct ListNode *n = NULL;
++ size_t keylen;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_SPACE | MUTT_TOKEN_QUOTE);
++ char *p = strpbrk(buf->data, ": \t");
++ if (!p || (*p != ':'))
++ {
++ mutt_buffer_strcpy(err, _("invalid header field"));
++ return MUTT_CMD_WARNING;
++ }
++ keylen = p - buf->data + 1;
++
++ STAILQ_FOREACH(n, &UserHeader, entries)
++ {
++ /* see if there is already a field by this name */
++ if (mutt_str_strncasecmp(buf->data, n->data, keylen) == 0)
++ {
++ break;
++ }
++ }
++
++ if (!n)
++ {
++ /* not found, allocate memory for a new node and add it to the list */
++ n = mutt_list_insert_tail(&UserHeader, NULL);
++ }
++ else
++ {
++ /* found, free the existing data */
++ FREE(&n->data);
++ }
++
++ n->data = buf->data;
++ mutt_buffer_init(buf);
++
++ return MUTT_CMD_SUCCESS;
++}
++
++#ifdef USE_SIDEBAR
++/**
++ * parse_path_list - Parse the 'sidebar_whitelist' command - Implements Command::parse()
++ */
++enum CommandResult parse_path_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Buffer *path = mutt_buffer_pool_get();
++
++ do
++ {
++ mutt_extract_token(path, s, MUTT_TOKEN_NO_FLAGS);
++ mutt_buffer_expand_path(path);
++ add_to_stailq((struct ListHead *) data, mutt_b2s(path));
++ } while (MoreArgs(s));
++ mutt_buffer_pool_release(&path);
++
++ return MUTT_CMD_SUCCESS;
++}
++#endif
++
++#ifdef USE_SIDEBAR
++/**
++ * parse_path_unlist - Parse the 'unsidebar_whitelist' command - Implements Command::parse()
++ */
++enum CommandResult parse_path_unlist(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Buffer *path = mutt_buffer_pool_get();
++
++ do
++ {
++ mutt_extract_token(path, s, MUTT_TOKEN_NO_FLAGS);
++ /* Check for deletion of entire list */
++ if (mutt_str_strcmp(mutt_b2s(path), "*") == 0)
++ {
++ mutt_list_free((struct ListHead *) data);
++ break;
++ }
++ mutt_buffer_expand_path(path);
++ remove_from_stailq((struct ListHead *) data, mutt_b2s(path));
++ } while (MoreArgs(s));
++ mutt_buffer_pool_release(&path);
++
++ return MUTT_CMD_SUCCESS;
++}
++#endif
++
++/**
++ * parse_set - Parse the 'set' family of commands - Implements Command::parse()
++ *
++ * This is used by 'reset', 'set', 'toggle' and 'unset'.
++ */
++enum CommandResult parse_set(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ /* The order must match `enum MuttSetCommand` */
++ static const char *set_commands[] = { "set", "toggle", "unset", "reset" };
++
++ int rc = 0;
++
++ while (MoreArgs(s))
++ {
++ bool prefix = false;
++ bool query = false;
++ bool inv = (data == MUTT_SET_INV);
++ bool reset = (data == MUTT_SET_RESET);
++ bool unset = (data == MUTT_SET_UNSET);
++
++ if (*s->dptr == '?')
++ {
++ prefix = true;
++ query = true;
++ s->dptr++;
++ }
++ else if (mutt_str_startswith(s->dptr, "no", CASE_MATCH))
++ {
++ prefix = true;
++ unset = !unset;
++ s->dptr += 2;
++ }
++ else if (mutt_str_startswith(s->dptr, "inv", CASE_MATCH))
++ {
++ prefix = true;
++ inv = !inv;
++ s->dptr += 3;
++ }
++ else if (*s->dptr == '&')
++ {
++ prefix = true;
++ reset = true;
++ s->dptr++;
++ }
++
++ if (prefix && (data != MUTT_SET_SET))
++ {
++ mutt_buffer_printf(err, "ERR22 can't use 'inv', 'no', '&' or '?' with the '%s' command",
++ set_commands[data]);
++ return MUTT_CMD_WARNING;
++ }
++
++ /* get the variable name */
++ mutt_extract_token(buf, s, MUTT_TOKEN_EQUAL | MUTT_TOKEN_QUESTION);
++
++ bool bq = false;
++ bool equals = false;
++
++ struct HashElem *he = NULL;
++ bool my = mutt_str_startswith(buf->data, "my_", CASE_MATCH);
++ if (!my)
++ {
++ he = cs_subset_lookup(NeoMutt->sub, buf->data);
++ if (!he)
++ {
++ if (reset && (mutt_str_strcmp(buf->data, "all") == 0))
++ {
++ struct HashElem **list = get_elem_list(NeoMutt->sub->cs);
++ if (!list)
++ return MUTT_CMD_ERROR;
++
++ for (size_t i = 0; list[i]; i++)
++ cs_subset_he_reset(NeoMutt->sub, list[i], NULL);
++
++ FREE(&list);
++ break;
++ }
++ else
++ {
++ mutt_buffer_printf(err, "ERR01 unknown variable: %s", buf->data);
++ return MUTT_CMD_ERROR;
++ }
++ }
++
++ bq = ((DTYPE(he->type) == DT_BOOL) || (DTYPE(he->type) == DT_QUAD));
++ }
++
++ if (*s->dptr == '?')
++ {
++ if (prefix)
++ {
++ mutt_buffer_printf(err,
++ "ERR02 can't use a prefix when querying a variable");
++ return MUTT_CMD_WARNING;
++ }
++
++ if (reset || unset || inv)
++ {
++ mutt_buffer_printf(err, "ERR03 can't query a variable with the '%s' command",
++ set_commands[data]);
++ return MUTT_CMD_WARNING;
++ }
++
++ query = true;
++ s->dptr++;
++ }
++ else if (*s->dptr == '=')
++ {
++ if (prefix)
++ {
++ mutt_buffer_printf(err,
++ "ERR04 can't use prefix when setting a variable");
++ return MUTT_CMD_WARNING;
++ }
++
++ if (reset || unset || inv)
++ {
++ mutt_buffer_printf(err, "ERR05 can't set a variable with the '%s' command",
++ set_commands[data]);
++ return MUTT_CMD_WARNING;
++ }
++
++ equals = true;
++ s->dptr++;
++ }
++
++ if (!bq && (inv || (unset && prefix)))
++ {
++ if (data == MUTT_SET_SET)
++ {
++ mutt_buffer_printf(err, "ERR06 prefixes 'no' and 'inv' may only be "
++ "used with bool/quad variables");
++ }
++ else
++ {
++ mutt_buffer_printf(err, "ERR07 command '%s' can only be used with bool/quad variables",
++ set_commands[data]);
++ }
++ return MUTT_CMD_WARNING;
++ }
++
++ if (reset)
++ {
++ // mutt_buffer_printf(err, "ACT24 reset variable %s", buf->data);
++ if (he)
++ {
++ rc = cs_subset_he_reset(NeoMutt->sub, he, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return MUTT_CMD_ERROR;
++ }
++ else
++ {
++ myvar_del(buf->data);
++ }
++ continue;
++ }
++
++ if ((data == MUTT_SET_SET) && !inv && !unset)
++ {
++ if (query)
++ {
++ // mutt_buffer_printf(err, "ACT08 query variable %s", buf->data);
++ if (he)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ mutt_buffer_addch(err, '=');
++ mutt_buffer_reset(buf);
++ rc = cs_subset_he_string_get(NeoMutt->sub, he, buf);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ return MUTT_CMD_ERROR;
++ }
++ if (DTYPE(he->type) == DT_PATH)
++ mutt_pretty_mailbox(buf->data, buf->dsize);
++ pretty_var(buf->data, err);
++ }
++ else
++ {
++ const char *val = myvar_get(buf->data);
++ if (val)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ mutt_buffer_addch(err, '=');
++ pretty_var(val, err);
++ }
++ else
++ {
++ mutt_buffer_printf(err, _("%s: unknown variable"), buf->data);
++ return MUTT_CMD_ERROR;
++ }
++ }
++ break;
++ }
++ else if (equals)
++ {
++ // mutt_buffer_printf(err, "ACT11 set variable %s to ", buf->data);
++ const char *name = NULL;
++ if (my)
++ {
++ name = mutt_str_strdup(buf->data);
++ }
++ mutt_extract_token(buf, s, MUTT_TOKEN_BACKTICK_VARS);
++ if (my)
++ {
++ myvar_set(name, buf->data);
++ FREE(&name);
++ }
++ else
++ {
++ if (DTYPE(he->type) == DT_PATH)
++ {
++ if (he->type & (DT_PATH_DIR | DT_PATH_FILE))
++ mutt_buffer_expand_path(buf);
++ else
++ mutt_path_tilde(buf->data, buf->dsize, HomeDir);
++ }
++ else if (IS_MAILBOX(he))
++ {
++ mutt_buffer_expand_path(buf);
++ }
++ else if (IS_COMMAND(he))
++ {
++ struct Buffer scratch = mutt_buffer_make(1024);
++ mutt_buffer_copy(&scratch, buf);
++
++ if (mutt_str_strcmp(buf->data, "builtin") != 0)
++ {
++ mutt_buffer_expand_path(&scratch);
++ }
++ mutt_buffer_reset(buf);
++ mutt_buffer_addstr(buf, mutt_b2s(&scratch));
++ mutt_buffer_dealloc(&scratch);
++ }
++
++ rc = cs_subset_he_string_set(NeoMutt->sub, he, buf->data, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return MUTT_CMD_ERROR;
++ }
++ continue;
++ }
++ else
++ {
++ if (bq)
++ {
++ // mutt_buffer_printf(err, "ACT23 set variable %s to 'yes'", buf->data);
++ rc = cs_subset_he_native_set(NeoMutt->sub, he, true, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return MUTT_CMD_ERROR;
++ continue;
++ }
++ else
++ {
++ // mutt_buffer_printf(err, "ACT10 query variable %s", buf->data);
++ if (he)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ mutt_buffer_addch(err, '=');
++ mutt_buffer_reset(buf);
++ rc = cs_subset_he_string_get(NeoMutt->sub, he, buf);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ return MUTT_CMD_ERROR;
++ }
++ if (DTYPE(he->type) == DT_PATH)
++ mutt_pretty_mailbox(buf->data, buf->dsize);
++ pretty_var(buf->data, err);
++ }
++ else
++ {
++ const char *val = myvar_get(buf->data);
++ if (val)
++ {
++ mutt_buffer_addstr(err, buf->data);
++ mutt_buffer_addch(err, '=');
++ pretty_var(val, err);
++ }
++ else
++ {
++ mutt_buffer_printf(err, _("%s: unknown variable"), buf->data);
++ return MUTT_CMD_ERROR;
++ }
++ }
++ break;
++ }
++ }
++ }
++
++ if (my)
++ {
++ myvar_del(buf->data);
++ }
++ else if (bq)
++ {
++ if (inv)
++ {
++ // mutt_buffer_printf(err, "ACT25 TOGGLE bool/quad variable %s", buf->data);
++ if (DTYPE(he->type) == DT_BOOL)
++ bool_he_toggle(NeoMutt->sub, he, err);
++ else
++ quad_he_toggle(NeoMutt->sub, he, err);
++ }
++ else
++ {
++ // mutt_buffer_printf(err, "ACT26 UNSET bool/quad variable %s", buf->data);
++ rc = cs_subset_he_native_set(NeoMutt->sub, he, false, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return MUTT_CMD_ERROR;
++ }
++ continue;
++ }
++ else
++ {
++ rc = cs_subset_he_string_set(NeoMutt->sub, he, NULL, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return MUTT_CMD_ERROR;
++ }
++ }
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_setenv - Parse the 'setenv' and 'unsetenv' commands - Implements Command::parse()
++ */
++enum CommandResult parse_setenv(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ char **envp = mutt_envlist_getlist();
++
++ bool query = false;
++ bool unset = (data == MUTT_SET_UNSET);
++
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "setenv");
++ return MUTT_CMD_WARNING;
++ }
++
++ if (*s->dptr == '?')
++ {
++ query = true;
++ s->dptr++;
++ }
++
++ /* get variable name */
++ mutt_extract_token(buf, s, MUTT_TOKEN_EQUAL);
++
++ if (query)
++ {
++ bool found = false;
++ while (envp && *envp)
++ {
++ /* This will display all matches for "^QUERY" */
++ if (mutt_str_startswith(*envp, buf->data, CASE_MATCH))
++ {
++ if (!found)
++ {
++ mutt_endwin();
++ found = true;
++ }
++ puts(*envp);
++ }
++ envp++;
++ }
++
++ if (found)
++ {
++ mutt_any_key_to_continue(NULL);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ mutt_buffer_printf(err, _("%s is unset"), buf->data);
++ return MUTT_CMD_WARNING;
++ }
++
++ if (unset)
++ {
++ if (mutt_envlist_unset(buf->data))
++ return MUTT_CMD_SUCCESS;
++ return MUTT_CMD_ERROR;
++ }
++
++ /* set variable */
++
++ if (*s->dptr == '=')
++ {
++ s->dptr++;
++ SKIPWS(s->dptr);
++ }
++
++ if (!MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too few arguments"), "setenv");
++ return MUTT_CMD_WARNING;
++ }
++
++ char *name = mutt_str_strdup(buf->data);
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ mutt_envlist_set(name, buf->data, true);
++ FREE(&name);
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_source - Parse the 'source' command - Implements Command::parse()
++ */
++enum CommandResult parse_source(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ char path[PATH_MAX];
++
++ do
++ {
++ if (mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS) != 0)
++ {
++ mutt_buffer_printf(err, _("source: error at %s"), s->dptr);
++ return MUTT_CMD_ERROR;
++ }
++ mutt_str_strfcpy(path, buf->data, sizeof(path));
++ mutt_expand_path(path, sizeof(path));
++
++ if (source_rc(path, err) < 0)
++ {
++ mutt_buffer_printf(err, _("source: file %s could not be sourced"), path);
++ return MUTT_CMD_ERROR;
++ }
++
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_spam_list - Parse the 'spam' and 'nospam' commands - Implements Command::parse()
++ */
++enum CommandResult parse_spam_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Buffer templ;
++
++ mutt_buffer_init(&templ);
++
++ /* Insist on at least one parameter */
++ if (!MoreArgs(s))
++ {
++ if (data == MUTT_SPAM)
++ mutt_buffer_strcpy(err, _("spam: no matching pattern"));
++ else
++ mutt_buffer_strcpy(err, _("nospam: no matching pattern"));
++ return MUTT_CMD_ERROR;
++ }
++
++ /* Extract the first token, a regex */
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ /* data should be either MUTT_SPAM or MUTT_NOSPAM. MUTT_SPAM is for spam commands. */
++ if (data == MUTT_SPAM)
++ {
++ /* If there's a second parameter, it's a template for the spam tag. */
++ if (MoreArgs(s))
++ {
++ mutt_extract_token(&templ, s, MUTT_TOKEN_NO_FLAGS);
++
++ /* Add to the spam list. */
++ if (mutt_replacelist_add(&SpamList, buf->data, templ.data, err) != 0)
++ {
++ FREE(&templ.data);
++ return MUTT_CMD_ERROR;
++ }
++ FREE(&templ.data);
++ }
++ /* If not, try to remove from the nospam list. */
++ else
++ {
++ mutt_regexlist_remove(&NoSpamList, buf->data);
++ }
++
++ return MUTT_CMD_SUCCESS;
++ }
++ /* MUTT_NOSPAM is for nospam commands. */
++ else if (data == MUTT_NOSPAM)
++ {
++ /* nospam only ever has one parameter. */
++
++ /* "*" is a special case. */
++ if (mutt_str_strcmp(buf->data, "*") == 0)
++ {
++ mutt_replacelist_free(&SpamList);
++ mutt_regexlist_free(&NoSpamList);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ /* If it's on the spam list, just remove it. */
++ if (mutt_replacelist_remove(&SpamList, buf->data) != 0)
++ return MUTT_CMD_SUCCESS;
++
++ /* Otherwise, add it to the nospam list. */
++ if (mutt_regexlist_add(&NoSpamList, buf->data, REG_ICASE, err) != 0)
++ return MUTT_CMD_ERROR;
++
++ return MUTT_CMD_SUCCESS;
++ }
++
++ /* This should not happen. */
++ mutt_buffer_strcpy(err, "This is no good at all.");
++ return MUTT_CMD_ERROR;
++}
++
++/**
++ * parse_stailq - Parse a list command - Implements Command::parse()
++ *
++ * This is used by 'alternative_order', 'auto_view' and several others.
++ */
++enum CommandResult parse_stailq(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ add_to_stailq((struct ListHead *) data, buf->data);
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_subjectrx_list - Parse the 'subjectrx' command - Implements Command::parse()
++ */
++enum CommandResult parse_subjectrx_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ enum CommandResult rc;
++
++ rc = parse_replace_list(buf, s, data, err);
++ if (rc == MUTT_CMD_SUCCESS)
++ clear_subject_mods();
++ return rc;
++}
++
++/**
++ * parse_subscribe - Parse the 'subscribe' command - Implements Command::parse()
++ */
++enum CommandResult parse_subscribe(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (parse_grouplist(&gl, buf, s, data, err) == -1)
++ goto bail;
++
++ mutt_regexlist_remove(&UnMailLists, buf->data);
++ mutt_regexlist_remove(&UnSubscribedLists, buf->data);
++
++ if (mutt_regexlist_add(&MailLists, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++ if (mutt_regexlist_add(&SubscribedLists, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++ if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
++ goto bail;
++ } while (MoreArgs(s));
++
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_SUCCESS;
++
++bail:
++ mutt_grouplist_destroy(&gl);
++ return MUTT_CMD_ERROR;
++}
++
++#ifdef USE_IMAP
++/**
++ * parse_subscribe_to - Parse the 'subscribe-to' command - Implements Command::parse()
++ *
++ * The 'subscribe-to' command allows to subscribe to an IMAP-Mailbox.
++ * Patterns are not supported.
++ * Use it as follows: subscribe-to =folder
++ */
++enum CommandResult parse_subscribe_to(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (!buf || !s || !err)
++ return MUTT_CMD_ERROR;
++
++ mutt_buffer_reset(err);
++
++ if (MoreArgs(s))
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too many arguments"), "subscribe-to");
++ return MUTT_CMD_WARNING;
++ }
++
++ if (buf->data && (*buf->data != '\0'))
++ {
++ /* Expand and subscribe */
++ if (imap_subscribe(mutt_expand_path(buf->data, buf->dsize), true) == 0)
++ {
++ mutt_message(_("Subscribed to %s"), buf->data);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ mutt_buffer_printf(err, _("Could not subscribe to %s"), buf->data);
++ return MUTT_CMD_ERROR;
++ }
++
++ mutt_debug(LL_DEBUG1, "Corrupted buffer");
++ return MUTT_CMD_ERROR;
++ }
++
++ mutt_buffer_addstr(err, _("No folder specified"));
++ return MUTT_CMD_WARNING;
++}
++#endif
++
++/**
++ * parse_tag_formats - Parse the 'tag-formats' command - Implements Command::parse()
++ */
++enum CommandResult parse_tag_formats(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (!buf || !s)
++ return MUTT_CMD_ERROR;
++
++ char *tmp = NULL;
++
++ while (MoreArgs(s))
++ {
++ char *tag = NULL, *format = NULL;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (buf->data && (*buf->data != '\0'))
++ tag = mutt_str_strdup(buf->data);
++ else
++ continue;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ format = mutt_str_strdup(buf->data);
++
++ /* avoid duplicates */
++ tmp = mutt_hash_find(TagFormats, format);
++ if (tmp)
++ {
++ mutt_debug(LL_DEBUG3, "tag format '%s' already registered as '%s'\n", format, tmp);
++ FREE(&tag);
++ FREE(&format);
++ continue;
++ }
++
++ mutt_hash_insert(TagFormats, format, tag);
++ }
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_tag_transforms - Parse the 'tag-transforms' command - Implements Command::parse()
++ */
++enum CommandResult parse_tag_transforms(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (!buf || !s)
++ return MUTT_CMD_ERROR;
++
++ char *tmp = NULL;
++
++ while (MoreArgs(s))
++ {
++ char *tag = NULL, *transform = NULL;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (buf->data && (*buf->data != '\0'))
++ tag = mutt_str_strdup(buf->data);
++ else
++ continue;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ transform = mutt_str_strdup(buf->data);
++
++ /* avoid duplicates */
++ tmp = mutt_hash_find(TagTransforms, tag);
++ if (tmp)
++ {
++ mutt_debug(LL_DEBUG3, "tag transform '%s' already registered as '%s'\n", tag, tmp);
++ FREE(&tag);
++ FREE(&transform);
++ continue;
++ }
++
++ mutt_hash_insert(TagTransforms, tag, transform);
++ }
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unalias - Parse the 'unalias' command - Implements Command::parse()
++ */
++enum CommandResult parse_unalias(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct Alias *a = NULL;
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (mutt_str_strcmp("*", buf->data) == 0)
++ {
++ if (CurrentMenu == MENU_ALIAS)
++ {
++ TAILQ_FOREACH(a, &Aliases, entries)
++ {
++ a->del = true;
++ }
++ mutt_menu_set_current_redraw_full();
++ }
++ else
++ mutt_aliaslist_free(&Aliases);
++ break;
++ }
++ else
++ {
++ TAILQ_FOREACH(a, &Aliases, entries)
++ {
++ if (mutt_str_strcasecmp(buf->data, a->name) == 0)
++ {
++ if (CurrentMenu == MENU_ALIAS)
++ {
++ a->del = true;
++ mutt_menu_set_current_redraw_full();
++ }
++ else
++ {
++ TAILQ_REMOVE(&Aliases, a, entries);
++ mutt_alias_free(&a);
++ }
++ break;
++ }
++ }
++ }
++ } while (MoreArgs(s));
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unalternates - Parse the 'unalternates' command - Implements Command::parse()
++ */
++enum CommandResult parse_unalternates(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ alternates_clean();
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ mutt_regexlist_remove(&Alternates, buf->data);
++
++ if ((mutt_str_strcmp(buf->data, "*") != 0) &&
++ (mutt_regexlist_add(&UnAlternates, buf->data, REG_ICASE, err) != 0))
++ {
++ return MUTT_CMD_ERROR;
++ }
++
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unattachments - Parse the 'unattachments' command - Implements Command::parse()
++ */
++enum CommandResult parse_unattachments(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ char op;
++ char *p = NULL;
++ struct ListHead *head = NULL;
++
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (!buf->data || (*buf->data == '\0'))
++ {
++ mutt_buffer_strcpy(err, _("unattachments: no disposition"));
++ return MUTT_CMD_WARNING;
++ }
++
++ p = buf->data;
++ op = *p++;
++
++ if (op == '*')
++ {
++ mutt_list_free_type(&AttachAllow, (list_free_t) mutt_attachmatch_free);
++ mutt_list_free_type(&AttachExclude, (list_free_t) mutt_attachmatch_free);
++ mutt_list_free_type(&InlineAllow, (list_free_t) mutt_attachmatch_free);
++ mutt_list_free_type(&InlineExclude, (list_free_t) mutt_attachmatch_free);
++ attachments_clean();
++ return 0;
++ }
++
++ if ((op != '+') && (op != '-'))
++ {
++ op = '+';
++ p--;
++ }
++ if (mutt_str_startswith("attachment", p, CASE_IGNORE))
++ {
++ if (op == '+')
++ head = &AttachAllow;
++ else
++ head = &AttachExclude;
++ }
++ else if (mutt_str_startswith("inline", p, CASE_IGNORE))
++ {
++ if (op == '+')
++ head = &InlineAllow;
++ else
++ head = &InlineExclude;
++ }
++ else
++ {
++ mutt_buffer_strcpy(err, _("unattachments: invalid disposition"));
++ return MUTT_CMD_ERROR;
++ }
++
++ return parse_unattach_list(buf, s, head, err);
++}
++
++/**
++ * parse_unignore - Parse the 'unignore' command - Implements Command::parse()
++ */
++enum CommandResult parse_unignore(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ /* don't add "*" to the unignore list */
++ if (strcmp(buf->data, "*") != 0)
++ add_to_stailq(&UnIgnore, buf->data);
++
++ remove_from_stailq(&Ignore, buf->data);
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unlists - Parse the 'unlists' command - Implements Command::parse()
++ */
++enum CommandResult parse_unlists(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ mutt_hash_free(&AutoSubscribeCache);
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ mutt_regexlist_remove(&SubscribedLists, buf->data);
++ mutt_regexlist_remove(&MailLists, buf->data);
++
++ if ((mutt_str_strcmp(buf->data, "*") != 0) &&
++ (mutt_regexlist_add(&UnMailLists, buf->data, REG_ICASE, err) != 0))
++ {
++ return MUTT_CMD_ERROR;
++ }
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unmailboxes - Parse the 'unmailboxes' command - Implements Command::parse()
++ *
++ * This is also used by 'unvirtual-mailboxes'
++ */
++enum CommandResult parse_unmailboxes(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ bool tmp_valid = false;
++ bool clear_all = false;
++
++ while (!clear_all && MoreArgs(s))
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (mutt_str_strcmp(buf->data, "*") == 0)
++ {
++ clear_all = true;
++ tmp_valid = false;
++ }
++ else
++ {
++ mutt_buffer_expand_path(buf);
++ tmp_valid = true;
++ }
++
++ struct MailboxList ml = neomutt_mailboxlist_get_all(NeoMutt, MUTT_MAILBOX_ANY);
++ struct MailboxNode *np = NULL;
++ struct MailboxNode *nptmp = NULL;
++ STAILQ_FOREACH_SAFE(np, &ml, entries, nptmp)
++ {
++ /* Compare against path or desc? Ensure 'buf' is valid */
++ if (!clear_all && tmp_valid &&
++ (mutt_str_strcasecmp(mutt_b2s(buf), mailbox_path(np->mailbox)) != 0) &&
++ (mutt_str_strcasecmp(mutt_b2s(buf), np->mailbox->name) != 0))
++ {
++ continue;
++ }
++
++#ifdef USE_SIDEBAR
++ mutt_sb_notify_mailbox(np->mailbox, false);
++#endif
++#ifdef USE_INOTIFY
++ mutt_monitor_remove(np->mailbox);
++#endif
++ if (Context && (Context->mailbox == np->mailbox))
++ {
++ np->mailbox->flags |= MB_HIDDEN;
++ }
++ else
++ {
++ account_mailbox_remove(np->mailbox->account, np->mailbox);
++ mailbox_free(&np->mailbox);
++ }
++ }
++ neomutt_mailboxlist_clear(&ml);
++ }
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unmy_hdr - Parse the 'unmy_hdr' command - Implements Command::parse()
++ */
++enum CommandResult parse_unmy_hdr(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ struct ListNode *np = NULL, *tmp = NULL;
++ size_t l;
++
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ if (mutt_str_strcmp("*", buf->data) == 0)
++ {
++ mutt_list_free(&UserHeader);
++ continue;
++ }
++
++ l = mutt_str_strlen(buf->data);
++ if (buf->data[l - 1] == ':')
++ l--;
++
++ STAILQ_FOREACH_SAFE(np, &UserHeader, entries, tmp)
++ {
++ if ((mutt_str_strncasecmp(buf->data, np->data, l) == 0) && (np->data[l] == ':'))
++ {
++ STAILQ_REMOVE(&UserHeader, np, ListNode, entries);
++ FREE(&np->data);
++ FREE(&np);
++ }
++ }
++ } while (MoreArgs(s));
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unstailq - Parse an unlist command - Implements Command::parse()
++ *
++ * This is used by 'unalternative_order', 'unauto_view' and several others.
++ */
++enum CommandResult parse_unstailq(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ /* Check for deletion of entire list */
++ if (mutt_str_strcmp(buf->data, "*") == 0)
++ {
++ mutt_list_free((struct ListHead *) data);
++ break;
++ }
++ remove_from_stailq((struct ListHead *) data, buf->data);
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++/**
++ * parse_unsubjectrx_list - Parse the 'unsubjectrx' command - Implements Command::parse()
++ */
++enum CommandResult parse_unsubjectrx_list(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ enum CommandResult rc;
++
++ rc = parse_unreplace_list(buf, s, data, err);
++ if (rc == MUTT_CMD_SUCCESS)
++ clear_subject_mods();
++ return rc;
++}
++
++/**
++ * parse_unsubscribe - Parse the 'unsubscribe' command - Implements Command::parse()
++ */
++enum CommandResult parse_unsubscribe(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ mutt_hash_free(&AutoSubscribeCache);
++ do
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ mutt_regexlist_remove(&SubscribedLists, buf->data);
++
++ if ((mutt_str_strcmp(buf->data, "*") != 0) &&
++ (mutt_regexlist_add(&UnSubscribedLists, buf->data, REG_ICASE, err) != 0))
++ {
++ return MUTT_CMD_ERROR;
++ }
++ } while (MoreArgs(s));
++
++ return MUTT_CMD_SUCCESS;
++}
++
++#ifdef USE_IMAP
++/**
++ * parse_unsubscribe_from - Parse the 'unsubscribe-from' command - Implements Command::parse()
++ *
++ * The 'unsubscribe-from' command allows to unsubscribe from an IMAP-Mailbox.
++ * Patterns are not supported.
++ * Use it as follows: unsubscribe-from =folder
++ */
++enum CommandResult parse_unsubscribe_from(struct Buffer *buf, struct Buffer *s,
++ unsigned long data, struct Buffer *err)
++{
++ if (!buf || !s || !err)
++ return MUTT_CMD_ERROR;
++
++ if (MoreArgs(s))
++ {
++ mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++
++ if (MoreArgs(s))
++ {
++ mutt_buffer_printf(err, _("%s: too many arguments"), "unsubscribe-from");
++ return MUTT_CMD_WARNING;
++ }
++
++ if (buf->data && (*buf->data != '\0'))
++ {
++ /* Expand and subscribe */
++ if (imap_subscribe(mutt_expand_path(buf->data, buf->dsize), false) == 0)
++ {
++ mutt_message(_("Unsubscribed from %s"), buf->data);
++ return MUTT_CMD_SUCCESS;
++ }
++
++ mutt_buffer_printf(err, _("Could not unsubscribe from %s"), buf->data);
++ return MUTT_CMD_ERROR;
++ }
++
++ mutt_debug(LL_DEBUG1, "Corrupted buffer");
++ return MUTT_CMD_ERROR;
++ }
++
++ mutt_buffer_addstr(err, _("No folder specified"));
++ return MUTT_CMD_WARNING;
++}
++#endif
++
++/**
++ * clear_source_stack - Free memory from the stack used for the souce command
++ */
++void clear_source_stack(void)
++{
++ mutt_list_free(&MuttrcStack);
++}
+diff --git a/command_parse.h b/command_parse.h
+new file mode 100644
+index 000000000..0631c4fd4
+--- /dev/null
++++ b/command_parse.h
+@@ -0,0 +1,76 @@
++/**
++ * @file
++ * Functions to parse commands in a config file
++ *
++ * @authors
++ * Copyright (C) 1996-2002,2007,2010,2012-2013,2016 Michael R. Elkins <me@mutt.org>
++ * Copyright (C) 2004 g10 Code GmbH
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_COMMAND_PARSE_H
++#define MUTT_COMMAND_PARSE_H
++
++#include "config.h"
++#include "mutt_commands.h"
++
++struct Buffer;
++
++enum CommandResult parse_alias (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_alternates (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_attachments (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_echo (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_finish (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_group (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_ifdef (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_ignore (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_lists (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_mailboxes (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_my_hdr (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#ifdef USE_SIDEBAR
++enum CommandResult parse_path_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_path_unlist (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#endif
++enum CommandResult parse_set (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_setenv (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_source (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_spam_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_stailq (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_subjectrx_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_subscribe (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#ifdef USE_IMAP
++enum CommandResult parse_subscribe_to (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#endif
++enum CommandResult parse_tag_formats (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_tag_transforms (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unalias (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unalternates (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unattachments (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unignore (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unlists (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unmailboxes (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unmy_hdr (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unstailq (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unsubjectrx_list(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++enum CommandResult parse_unsubscribe (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#ifdef USE_IMAP
++enum CommandResult parse_unsubscribe_from(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++#endif
++
++void clear_source_stack(void);
++int source_rc(const char *rcfile_path, struct Buffer *err);
++
++#endif /* MUTT_COMMAND_PARSE_H */
+diff --git a/commands.c b/commands.c
+index 29bcbb642..6bb524353 100644
+--- a/commands.c
++++ b/commands.c
+@@ -37,50 +37,48 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "commands.h"
+ #include "alias.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hdrline.h"
+ #include "hook.h"
+ #include "icommands.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mutt_commands.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+ #include "mutt_parse.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "pager.h"
+ #include "protos.h"
+ #include "sendlib.h"
+ #include "sort.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in commands.c */
+@@ -173,8 +171,8 @@ static void process_protected_headers(struct Email *e)
+ if (C_CryptProtectedHeadersSave)
+ {
+ e->env->changed |= MUTT_ENV_CHANGED_SUBJECT;
+- e->changed = 1;
+- Context->mailbox->changed = 1;
++ e->changed = true;
++ Context->mailbox->changed = true;
+ }
+ }
+
+@@ -188,13 +186,18 @@ static void process_protected_headers(struct Email *e)
+
+ /**
+ * mutt_display_message - Display a message in the pager
+- * @param win Window
+- * @param m Mailbox
+- * @param e Email to display
++ * @param win_index Index Window
++ * @param win_ibar Index Bar Window
++ * @param win_pager Pager Window
++ * @param win_pbar Pager Bar Window
++ * @param m Mailbox
++ * @param e Email to display
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+-int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email *e)
++int mutt_display_message(struct MuttWindow *win_index, struct MuttWindow *win_ibar,
++ struct MuttWindow *win_pager, struct MuttWindow *win_pbar,
++ struct Mailbox *m, struct Email *e)
+ {
+ int rc = 0;
+ bool builtin = false;
+@@ -208,7 +211,7 @@ int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email
+ mutt_message_hook(m, e, MUTT_MESSAGE_HOOK);
+
+ char columns[16];
+- snprintf(columns, sizeof(columns), "%d", win->cols);
++ snprintf(columns, sizeof(columns), "%d", win_pager->state.cols);
+ mutt_envlist_set("COLUMNS", columns, true);
+
+ /* see if crypto is needed for this message. if so, we should exit curses */
+@@ -262,8 +265,8 @@ int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email
+ {
+ fp_filter_out = fp_out;
+ fp_out = NULL;
+- filterpid = mutt_create_filter_fd(C_DisplayFilter, &fp_out, NULL, NULL, -1,
+- fileno(fp_filter_out), -1);
++ filterpid = filter_create_fd(C_DisplayFilter, &fp_out, NULL, NULL, -1,
++ fileno(fp_filter_out), -1);
+ if (filterpid < 0)
+ {
+ mutt_error(_("Can't create display filter"));
+@@ -284,8 +287,8 @@ int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email
+ hfi.mailbox = m;
+ hfi.pager_progress = ExtPagerProgress;
+ hfi.email = e;
+- mutt_make_string_info(buf, sizeof(buf), win->cols, NONULL(C_PagerFormat),
+- &hfi, MUTT_FORMAT_NO_FLAGS);
++ mutt_make_string_info(buf, sizeof(buf), win_pager->state.cols,
++ NONULL(C_PagerFormat), &hfi, MUTT_FORMAT_NO_FLAGS);
+ fputs(buf, fp_out);
+ fputs("\n\n", fp_out);
+ }
+@@ -295,21 +298,21 @@ int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email
+ if (m->magic == MUTT_NOTMUCH)
+ chflags |= CH_VIRTUAL;
+ #endif
+- res = mutt_copy_message(fp_out, m, e, cmflags, chflags, win->cols);
++ res = mutt_copy_message(fp_out, m, e, cmflags, chflags, win_pager->state.cols);
+
+ if (((mutt_file_fclose(&fp_out) != 0) && (errno != EPIPE)) || (res < 0))
+ {
+ mutt_error(_("Could not copy message"));
+ if (fp_filter_out)
+ {
+- mutt_wait_filter(filterpid);
++ filter_wait(filterpid);
+ mutt_file_fclose(&fp_filter_out);
+ }
+ mutt_file_unlink(mutt_b2s(tempfile));
+ goto cleanup;
+ }
+
+- if (fp_filter_out && (mutt_wait_filter(filterpid) != 0))
++ if (fp_filter_out && (filter_wait(filterpid) != 0))
+ mutt_any_key_to_continue(NULL);
+
+ mutt_file_fclose(&fp_filter_out); /* XXX - check result? */
+@@ -359,6 +362,10 @@ int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email
+ /* Invoke the builtin pager */
+ info.email = e;
+ info.ctx = Context;
++ info.win_ibar = win_ibar;
++ info.win_index = win_index;
++ info.win_pbar = win_pbar;
++ info.win_pager = win_pager;
+ rc = mutt_pager(NULL, mutt_b2s(tempfile), MUTT_PAGER_MESSAGE, &info);
+ }
+ else
+@@ -448,15 +455,15 @@ void ci_bounce_message(struct Mailbox *m, struct EmailList *el)
+ }
+
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &al, true);
++ mutt_addrlist_write(&al, buf, sizeof(buf), true);
+
+ #define EXTRA_SPACE (15 + 7 + 2)
+ snprintf(scratch, sizeof(scratch),
+ ngettext("Bounce message to %s?", "Bounce messages to %s?", msg_count), buf);
+
+- if (mutt_strwidth(scratch) > MuttMessageWindow->cols - EXTRA_SPACE)
++ if (mutt_strwidth(scratch) > MuttMessageWindow->state.cols - EXTRA_SPACE)
+ {
+- mutt_simple_format(prompt, sizeof(prompt), 0, MuttMessageWindow->cols - EXTRA_SPACE,
++ mutt_simple_format(prompt, sizeof(prompt), 0, MuttMessageWindow->state.cols - EXTRA_SPACE,
+ JUSTIFY_LEFT, 0, scratch, sizeof(scratch), false);
+ mutt_str_strcat(prompt, sizeof(prompt), "...?");
+ }
+@@ -600,7 +607,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ }
+ mutt_endwin();
+
+- pid = mutt_create_filter(cmd, &fp_out, NULL, NULL);
++ pid = filter_create(cmd, &fp_out, NULL, NULL);
+ if (pid < 0)
+ {
+ mutt_perror(_("Can't create filter process"));
+@@ -610,7 +617,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ OptKeepQuiet = true;
+ pipe_msg(m, en->email, fp_out, decode, print);
+ mutt_file_fclose(&fp_out);
+- rc = mutt_wait_filter(pid);
++ rc = filter_wait(pid);
+ OptKeepQuiet = false;
+ }
+ else
+@@ -636,7 +643,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ {
+ mutt_message_hook(m, en->email, MUTT_MESSAGE_HOOK);
+ mutt_endwin();
+- pid = mutt_create_filter(cmd, &fp_out, NULL, NULL);
++ pid = filter_create(cmd, &fp_out, NULL, NULL);
+ if (pid < 0)
+ {
+ mutt_perror(_("Can't create filter process"));
+@@ -648,7 +655,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ if (sep)
+ fputs(sep, fp_out);
+ mutt_file_fclose(&fp_out);
+- if (mutt_wait_filter(pid) != 0)
++ if (filter_wait(pid) != 0)
+ rc = 1;
+ OptKeepQuiet = false;
+ }
+@@ -656,7 +663,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ else
+ {
+ mutt_endwin();
+- pid = mutt_create_filter(cmd, &fp_out, NULL, NULL);
++ pid = filter_create(cmd, &fp_out, NULL, NULL);
+ if (pid < 0)
+ {
+ mutt_perror(_("Can't create filter process"));
+@@ -672,7 +679,7 @@ static int pipe_message(struct Mailbox *m, struct EmailList *el, char *cmd,
+ fputs(sep, fp_out);
+ }
+ mutt_file_fclose(&fp_out);
+- if (mutt_wait_filter(pid) != 0)
++ if (filter_wait(pid) != 0)
+ rc = 1;
+ OptKeepQuiet = false;
+ }
+@@ -816,7 +823,7 @@ int mutt_select_sort(bool reverse)
+ if (reverse)
+ new_sort |= SORT_REVERSE;
+
+- cs_str_native_set(Config, "sort", new_sort, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "sort", new_sort, NULL);
+ return (C_Sort != method) ? 0 : -1; /* no need to resort if it's the same */
+ }
+
+@@ -911,7 +918,7 @@ void mutt_display_address(struct Envelope *env)
+ * paste the on-the-wire form of the address to other, IDN-unable
+ * software. */
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), al, false);
++ mutt_addrlist_write(al, buf, sizeof(buf), false);
+ mutt_message("%s: %s", pfx, buf);
+ }
+
+@@ -1059,7 +1066,7 @@ int mutt_save_message(struct Mailbox *m, struct EmailList *el,
+ mutt_buffer_fix_dptr(buf);
+
+ mutt_buffer_pretty_mailbox(buf);
+- if (mutt_buffer_enter_fname(prompt, buf, 0) == -1)
++ if (mutt_buffer_enter_fname(prompt, buf, false) == -1)
+ goto cleanup;
+
+ size_t pathlen = mutt_buffer_len(buf);
+@@ -1139,8 +1146,8 @@ int mutt_save_message(struct Mailbox *m, struct EmailList *el,
+ if (mutt_save_message_ctx(en->email, delete_original, decode, decrypt,
+ ctx_save->mailbox) != 0)
+ {
+- m_save->append = old_append;
+ mx_mbox_close(&ctx_save);
++ m_save->append = old_append;
+ goto cleanup;
+ }
+ #ifdef USE_COMPRESSED
+@@ -1195,8 +1202,8 @@ int mutt_save_message(struct Mailbox *m, struct EmailList *el,
+ #endif
+ if (rc != 0)
+ {
+- m_save->append = old_append;
+ mx_mbox_close(&ctx_save);
++ m_save->append = old_append;
+ goto cleanup;
+ }
+ }
+@@ -1204,8 +1211,8 @@ int mutt_save_message(struct Mailbox *m, struct EmailList *el,
+ const bool need_mailbox_cleanup = ((ctx_save->mailbox->magic == MUTT_MBOX) ||
+ (ctx_save->mailbox->magic == MUTT_MMDF));
+
+- m_save->append = old_append;
+ mx_mbox_close(&ctx_save);
++ m_save->append = old_append;
+
+ if (need_mailbox_cleanup)
+ mutt_mailbox_cleanup(mutt_b2s(buf), &st);
+@@ -1260,8 +1267,11 @@ bool mutt_edit_content_type(struct Email *e, struct Body *b, FILE *fp)
+ }
+ }
+
+- if ((mutt_get_field("Content-Type: ", buf, sizeof(buf), 0) != 0) || (buf[0] == '\0'))
++ if ((mutt_get_field("Content-Type: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
++ (buf[0] == '\0'))
++ {
+ return false;
++ }
+
+ /* clean up previous junk */
+ mutt_param_free(&b->parameter);
+diff --git a/commands.h b/commands.h
+index 21770d44f..12da95258 100644
+--- a/commands.h
++++ b/commands.h
+@@ -48,7 +48,7 @@ void ci_bounce_message(struct Mailbox *m, struct EmailList *el);
+ void mutt_check_stats(void);
+ bool mutt_check_traditional_pgp(struct EmailList *el, MuttRedrawFlags *redraw);
+ void mutt_display_address(struct Envelope *env);
+-int mutt_display_message(struct MuttWindow *win, struct Mailbox *m, struct Email *e);
++int mutt_display_message(struct MuttWindow *win_index, struct MuttWindow *win_ibar, struct MuttWindow *win_pager, struct MuttWindow *win_pbar, struct Mailbox *m, struct Email *e);
+ bool mutt_edit_content_type(struct Email *e, struct Body *b, FILE *fp);
+ void mutt_enter_command(void);
+ void mutt_pipe_message(struct Mailbox *m, struct EmailList *el);
+diff --git a/complete.c b/complete.c
+index 3af74efd7..36cc2806c 100644
+--- a/complete.c
++++ b/complete.c
+@@ -31,17 +31,17 @@
+ #include <errno.h>
+ #include <string.h>
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "core/lib.h"
+ #include "globals.h"
+ #include "muttlib.h"
+ #include "options.h"
+ #include "protos.h" // IWYU pragma: keep
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+
+ /**
+diff --git a/compose.c b/compose.c
+index 50f68bd96..e9289605a 100644
+--- a/compose.c
++++ b/compose.c
+@@ -36,35 +36,32 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "compose.h"
+ #include "alias.h"
+ #include "browser.h"
+-#include "color.h"
+ #include "commands.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "edit.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hook.h"
+ #include "index.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mutt_attach.h"
+-#include "mutt_curses.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "protos.h"
+@@ -72,6 +69,7 @@
+ #include "rfc3676.h"
+ #include "sendlib.h"
+ #include "sort.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+@@ -79,16 +77,16 @@
+ #include "remailer.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef USE_POP
+-#include "pop/pop.h"
++#include "pop/lib.h"
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in compose.c */
+@@ -159,7 +157,7 @@ int HeaderPadding[HDR_ATTACH_TITLE] = { 0 };
+ int MaxHeaderWidth = 0;
+
+ #define HDR_XOFFSET MaxHeaderWidth
+-#define W (rd->win->cols - MaxHeaderWidth)
++#define W (rd->win->state.cols - MaxHeaderWidth)
+
+ static const char *const Prompts[] = {
+ /* L10N: Compose menu field. May not want to translate. */
+@@ -311,14 +309,15 @@ static void init_header_padding(void)
+ }
+
+ /**
+- * snd_make_entry - Format a menu item for the attachment list - Implements Menu::menu_make_entry()
++ * snd_make_entry - Format a menu item for the attachment list - Implements Menu::make_entry()
+ */
+ static void snd_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+ struct AttachCtx *actx = menu->data;
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, NONULL(C_AttachFormat),
+- attach_format_str, (unsigned long) (actx->idx[actx->v2r[line]]),
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
++ NONULL(C_AttachFormat), attach_format_str,
++ (unsigned long) (actx->idx[actx->v2r[line]]),
+ MUTT_FORMAT_STAT_FILE | MUTT_FORMAT_ARROWCURSOR);
+ }
+
+@@ -557,7 +556,7 @@ static void redraw_mix_line(struct ListHead *chain, struct ComposeRedrawData *rd
+ if (t && (t[0] == '0') && (t[1] == '\0'))
+ t = "<random>";
+
+- if (c + mutt_str_strlen(t) + 2 >= rd->win->cols)
++ if (c + mutt_str_strlen(t) + 2 >= rd->win->state.cols)
+ break;
+
+ mutt_window_addstr(NONULL(t));
+@@ -648,7 +647,7 @@ static void draw_envelope_addr(int line, struct AddressList *al, struct ComposeR
+ char buf[1024];
+
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), al, true);
++ mutt_addrlist_write(al, buf, sizeof(buf), true);
+ mutt_curses_set_color(MT_COLOR_COMPOSE_HEADER);
+ mutt_window_mvprintw(rd->win, line, 0, "%*s", HeaderPadding[line], _(Prompts[line]));
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+@@ -731,7 +730,7 @@ static void edit_address_list(int line, struct AddressList *al, struct ComposeRe
+ char *err = NULL;
+
+ mutt_addrlist_to_local(al);
+- mutt_addrlist_write(buf, sizeof(buf), al, false);
++ mutt_addrlist_write(al, buf, sizeof(buf), false);
+ if (mutt_get_field(_(Prompts[line]), buf, sizeof(buf), MUTT_ALIAS) == 0)
+ {
+ mutt_addrlist_clear(al);
+@@ -748,7 +747,7 @@ static void edit_address_list(int line, struct AddressList *al, struct ComposeRe
+
+ /* redraw the expanded list so the user can see the result */
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), al, true);
++ mutt_addrlist_write(al, buf, sizeof(buf), true);
+ mutt_window_move(rd->win, line, HDR_XOFFSET);
+ mutt_paddstr(W, buf);
+ }
+@@ -887,7 +886,7 @@ static void update_idx(struct Menu *menu, struct AttachCtx *actx, struct AttachP
+ }
+
+ /**
+- * compose_custom_redraw - Redraw the compose menu - Implements Menu::menu_custom_redraw()
++ * compose_custom_redraw - Redraw the compose menu - Implements Menu::custom_redraw()
+ */
+ static void compose_custom_redraw(struct Menu *menu)
+ {
+@@ -902,7 +901,7 @@ static void compose_custom_redraw(struct Menu *menu)
+
+ draw_envelope(rd);
+ menu->offset = HDR_ATTACH;
+- menu->pagelen = menu->indexwin->rows - HDR_ATTACH;
++ menu->pagelen = menu->win_index->state.rows - HDR_ATTACH;
+ }
+
+ menu_check_recenter(menu);
+@@ -910,11 +909,11 @@ static void compose_custom_redraw(struct Menu *menu)
+ if (menu->redraw & REDRAW_STATUS)
+ {
+ char buf[1024];
+- compose_status_line(buf, sizeof(buf), 0, menu->statuswin->cols, menu,
++ compose_status_line(buf, sizeof(buf), 0, menu->win_ibar->state.cols, menu,
+ NONULL(C_ComposeFormat));
+- mutt_window_move(menu->statuswin, 0, 0);
++ mutt_window_move(menu->win_ibar, 0, 0);
+ mutt_curses_set_color(MT_COLOR_STATUS);
+- mutt_draw_statusline(menu->statuswin->cols, buf, sizeof(buf));
++ mutt_draw_statusline(menu->win_ibar->state.cols, buf, sizeof(buf));
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ menu->redraw &= ~REDRAW_STATUS;
+ }
+@@ -1083,6 +1082,36 @@ static void compose_status_line(char *buf, size_t buflen, size_t col, int cols,
+ (unsigned long) menu, MUTT_FORMAT_NO_FLAGS);
+ }
+
++/**
++ * mutt_dlg_compose_observer - Listen for config changes affecting the Compose menu - Implements ::observer_t
++ */
++static int mutt_dlg_compose_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") != 0)
++ return 0;
++
++ struct MuttWindow *win_first = TAILQ_FIRST(&dlg->children);
++
++ if ((C_StatusOnTop && (win_first->type == WT_INDEX)) ||
++ (!C_StatusOnTop && (win_first->type != WT_INDEX)))
++ {
++ // Swap the Index and the IndexBar Windows
++ TAILQ_REMOVE(&dlg->children, win_first, entries);
++ TAILQ_INSERT_TAIL(&dlg->children, win_first, entries);
++ }
++
++ mutt_window_reflow(dlg);
++ return 0;
++}
++
+ /**
+ * mutt_compose_menu - Allow the user to edit the message envelope
+ * @param e Email to fill
+@@ -1108,21 +1137,55 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+
+ init_header_padding();
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "compose";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
+ rd->email = e;
+ rd->fcc = fcc;
+- rd->win = MuttIndexWindow;
++ rd->win = index;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_dlg_compose_observer, dlg);
++ dialog_push(dlg);
+
+ struct Menu *menu = mutt_menu_new(MENU_COMPOSE);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->offset = HDR_ATTACH;
+- menu->menu_make_entry = snd_make_entry;
+- menu->menu_tag = attach_tag;
++ menu->make_entry = snd_make_entry;
++ menu->tag = attach_tag;
+ #ifdef USE_NNTP
+ if (news)
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_COMPOSE, ComposeNewsHelp);
+ else
+ #endif
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_COMPOSE, ComposeHelp);
+- menu->menu_custom_redraw = compose_custom_redraw;
++ menu->custom_redraw = compose_custom_redraw;
+ menu->redraw_data = rd;
+ mutt_menu_push_current(menu);
+
+@@ -1186,14 +1249,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ mutt_str_strfcpy(buf, e->env->newsgroups, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (mutt_get_field("Newsgroups: ", buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field("Newsgroups: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_str_replace(&e->env->newsgroups, buf);
+- mutt_window_move(menu->indexwin, HDR_TO, HDR_XOFFSET);
++ mutt_window_move(menu->win_index, HDR_TO, HDR_XOFFSET);
+ if (e->env->newsgroups)
+ mutt_paddstr(W, e->env->newsgroups);
+ else
+- mutt_window_clrtoeol(menu->indexwin);
++ mutt_window_clrtoeol(menu->win_index);
+ }
+ break;
+
+@@ -1204,14 +1267,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ mutt_str_strfcpy(buf, e->env->followup_to, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (mutt_get_field("Followup-To: ", buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field("Followup-To: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_str_replace(&e->env->followup_to, buf);
+- mutt_window_move(menu->indexwin, HDR_CC, HDR_XOFFSET);
++ mutt_window_move(menu->win_index, HDR_CC, HDR_XOFFSET);
+ if (e->env->followup_to)
+ mutt_paddstr(W, e->env->followup_to);
+ else
+- mutt_window_clrtoeol(menu->indexwin);
++ mutt_window_clrtoeol(menu->win_index);
+ }
+ break;
+
+@@ -1222,14 +1285,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ mutt_str_strfcpy(buf, e->env->x_comment_to, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (mutt_get_field("X-Comment-To: ", buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field("X-Comment-To: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_str_replace(&e->env->x_comment_to, buf);
+- mutt_window_move(menu->indexwin, HDR_BCC, HDR_XOFFSET);
++ mutt_window_move(menu->win_index, HDR_BCC, HDR_XOFFSET);
+ if (e->env->x_comment_to)
+ mutt_paddstr(W, e->env->x_comment_to);
+ else
+- mutt_window_clrtoeol(menu->indexwin);
++ mutt_window_clrtoeol(menu->win_index);
+ }
+ break;
+ #endif
+@@ -1239,14 +1302,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ mutt_str_strfcpy(buf, e->env->subject, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (mutt_get_field(_("Subject: "), buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field(_("Subject: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_str_replace(&e->env->subject, buf);
+- mutt_window_move(menu->indexwin, HDR_SUBJECT, HDR_XOFFSET);
++ mutt_window_move(menu->win_index, HDR_SUBJECT, HDR_XOFFSET);
+ if (e->env->subject)
+ mutt_paddstr(W, e->env->subject);
+ else
+- mutt_window_clrtoeol(menu->indexwin);
++ mutt_window_clrtoeol(menu->win_index);
+ }
+ mutt_message_hook(NULL, e, MUTT_SEND2_HOOK);
+ break;
+@@ -1262,7 +1325,7 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ {
+ mutt_buffer_copy(fcc, &fname);
+ mutt_buffer_pretty_mailbox(fcc);
+- mutt_window_move(menu->indexwin, HDR_FCC, HDR_XOFFSET);
++ mutt_window_move(menu->win_index, HDR_FCC, HDR_XOFFSET);
+ mutt_paddstr(W, mutt_b2s(fcc));
+ fcc_set = true;
+ }
+@@ -1650,11 +1713,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ #ifdef USE_NNTP
+ if (!OptNews && (nntp_path_probe(mutt_b2s(&fname), NULL) != MUTT_NNTP))
+ #endif
+- /* check to make sure the file exists and is readable */
+- if (access(mutt_b2s(&fname), R_OK) == -1)
++ if (mx_path_probe(mutt_b2s(&fname)) != MUTT_NOTMUCH)
+ {
+- mutt_perror(mutt_b2s(&fname));
+- break;
++ /* check to make sure the file exists and is readable */
++ if (access(mutt_b2s(&fname), R_OK) == -1)
++ {
++ mutt_perror(mutt_b2s(&fname));
++ break;
++ }
+ }
+
+ menu->redraw = REDRAW_FULL;
+@@ -1684,7 +1750,14 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ Context = ctx;
+ OptAttachMsg = true;
+ mutt_message(_("Tag the messages you want to attach"));
+- mutt_index_menu();
++ struct MuttWindow *dlg_index = index_pager_init();
++ notify_observer_add(NeoMutt->notify, mutt_dlg_index_observer, dlg_index);
++ dialog_push(dlg_index);
++ mutt_index_menu(dlg_index);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_index_observer, dlg_index);
++ index_pager_shutdown(dlg_index);
++ mutt_window_free(&dlg_index);
+ OptAttachMsg = false;
+
+ if (!Context)
+@@ -1768,7 +1841,7 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ buf, CUR_ATTACH->content->description ? CUR_ATTACH->content->description : "",
+ sizeof(buf));
+ /* header names should not be translated */
+- if (mutt_get_field("Description: ", buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field("Description: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_str_replace(&CUR_ATTACH->content->description, buf);
+ menu->redraw = REDRAW_CURRENT;
+@@ -1821,7 +1894,7 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ buf[0] = '\0'; /* clear buffer first */
+ if (CUR_ATTACH->content->language)
+ mutt_str_strfcpy(buf, CUR_ATTACH->content->language, sizeof(buf));
+- if (mutt_get_field("Content-Language: ", buf, sizeof(buf), 0) == 0)
++ if (mutt_get_field("Content-Language: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0)
+ {
+ CUR_ATTACH->content->language = mutt_str_strdup(buf);
+ menu->redraw = REDRAW_CURRENT | REDRAW_STATUS;
+@@ -1835,7 +1908,8 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+ case OP_COMPOSE_EDIT_ENCODING:
+ CHECK_COUNT;
+ mutt_str_strfcpy(buf, ENCODING(CUR_ATTACH->content->encoding), sizeof(buf));
+- if ((mutt_get_field("Content-Transfer-Encoding: ", buf, sizeof(buf), 0) == 0) &&
++ if ((mutt_get_field("Content-Transfer-Encoding: ", buf, sizeof(buf),
++ MUTT_COMP_NO_FLAGS) == 0) &&
+ (buf[0] != '\0'))
+ {
+ int enc = mutt_check_encoding(buf);
+@@ -1972,7 +2046,7 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+
+ /* Call to lookup_mime_type () ? maybe later */
+ char type[256] = { 0 };
+- if ((mutt_get_field("Content-Type: ", type, sizeof(type), 0) != 0) ||
++ if ((mutt_get_field("Content-Type: ", type, sizeof(type), MUTT_COMP_NO_FLAGS) != 0) ||
+ (type[0] == '\0'))
+ {
+ continue;
+@@ -2209,7 +2283,7 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+
+ #ifdef MIXMASTER
+ case OP_COMPOSE_MIX:
+- mix_make_chain(menu->indexwin, &e->chain, menu->indexwin->cols);
++ mix_make_chain(menu->win_index, &e->chain, menu->win_index->state.cols);
+ mutt_message_hook(NULL, e, MUTT_SEND2_HOOK);
+ break;
+ #endif
+@@ -2253,6 +2327,9 @@ int mutt_compose_menu(struct Email *e, struct Buffer *fcc, struct Email *e_cur,
+
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_compose_observer, dlg);
++ mutt_window_free(&dlg);
+
+ if (actx->idxlen)
+ e->content = actx->idx[0]->content;
+diff --git a/compress.c b/compress/compress.c
+similarity index 98%
+rename from compress.c
+rename to compress/compress.c
+index ceb736fcf..afcc7ff70 100644
+--- a/compress.c
++++ b/compress/compress.c
+@@ -22,7 +22,7 @@
+ */
+
+ /**
+- * @page compress Compressed mbox local mailbox type
++ * @page comp_compress Compressed mbox local mailbox type
+ *
+ * Compressed mbox local mailbox type
+ *
+@@ -38,14 +38,13 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "core/lib.h"
+-#include "compress.h"
+-#include "curs_lib.h"
++#include "gui/lib.h"
++#include "lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hook.h"
+-#include "mutt_curses.h"
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "protos.h"
+@@ -451,7 +450,7 @@ static int comp_mbox_open(struct Mailbox *m)
+
+ unlock_realpath(m);
+
+- m->magic = mx_path_probe(mailbox_path(m), NULL);
++ m->magic = mx_path_probe(mailbox_path(m));
+ if (m->magic == MUTT_UNKNOWN)
+ {
+ mutt_error(_("Can't identify the contents of the compressed file"));
+@@ -521,7 +520,7 @@ static int comp_mbox_open_append(struct Mailbox *m, OpenMailboxFlags flags)
+ mutt_error(_("Compress command failed: %s"), ci->cmd_open);
+ goto cmoa_fail2;
+ }
+- m->magic = mx_path_probe(mailbox_path(m), NULL);
++ m->magic = mx_path_probe(mailbox_path(m));
+ }
+ else
+ m->magic = C_MboxType;
+@@ -886,7 +885,7 @@ static int comp_path_canon(char *buf, size_t buflen)
+ if (!buf)
+ return -1;
+
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, false);
+ return 0;
+ }
+
+@@ -901,7 +900,7 @@ static int comp_path_pretty(char *buf, size_t buflen, const char *folder)
+ if (mutt_path_abbr_folder(buf, buflen, folder))
+ return 0;
+
+- if (mutt_path_pretty(buf, buflen, HomeDir))
++ if (mutt_path_pretty(buf, buflen, HomeDir, false))
+ return 0;
+
+ return -1;
+@@ -919,7 +918,7 @@ static int comp_path_parent(char *buf, size_t buflen)
+ return 0;
+
+ if (buf[0] == '~')
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, false);
+
+ if (mutt_path_parent(buf, buflen))
+ return 0;
+@@ -937,11 +936,13 @@ static int comp_path_parent(char *buf, size_t buflen)
+ struct MxOps MxCompOps = {
+ .magic = MUTT_COMPRESSED,
+ .name = "compressed",
++ .is_local = true,
+ .ac_find = comp_ac_find,
+ .ac_add = comp_ac_add,
+ .mbox_open = comp_mbox_open,
+ .mbox_open_append = comp_mbox_open_append,
+ .mbox_check = comp_mbox_check,
++ .mbox_check_stats = NULL,
+ .mbox_sync = comp_mbox_sync,
+ .mbox_close = comp_mbox_close,
+ .msg_open = comp_msg_open,
+diff --git a/compress.h b/compress/lib.h
+similarity index 82%
+rename from compress.h
+rename to compress/lib.h
+index 250ad4793..726cb11ea 100644
+--- a/compress.h
++++ b/compress/lib.h
+@@ -21,8 +21,18 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MUTT_COMPRESS_H
+-#define MUTT_COMPRESS_H
++/**
++ * @page comp COMPRESS: Compressed Mailbox
++ *
++ * Compressed mbox local mailbox type
++ *
++ * | File | Description |
++ * | :------------------ | :------------------------- |
++ * | compress/compress.c | @subpage comp_compress |
++ */
++
++#ifndef MUTT_COMPRESS_LIB_H
++#define MUTT_COMPRESS_LIB_H
+
+ #include <stdbool.h>
+ #include <stdio.h>
+@@ -52,4 +62,4 @@ int mutt_comp_valid_command(const char *cmd);
+
+ extern struct MxOps MxCompOps;
+
+-#endif /* MUTT_COMPRESS_H */
++#endif /* MUTT_COMPRESS_LIB_H */
+diff --git a/config/address.c b/config/address.c
+index 99a117dfe..ed98165ae 100644
+--- a/config/address.c
++++ b/config/address.c
+@@ -32,14 +32,14 @@
+ #include <limits.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "address.h"
+ #include "set.h"
+ #include "types.h"
+
+ /**
+- * address_destroy - Destroy an Address object - Implements ::cst_destroy()
++ * address_destroy - Destroy an Address object - Implements ConfigSetType::destroy()
+ */
+ static void address_destroy(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef)
+ {
+@@ -54,7 +54,7 @@ static void address_destroy(const struct ConfigSet *cs, void *var, const struct
+ }
+
+ /**
+- * address_string_set - Set an Address by string - Implements ::cst_string_set()
++ * address_string_set - Set an Address by string - Implements ConfigSetType::string_set()
+ */
+ static int address_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -111,7 +111,7 @@ static int address_string_set(const struct ConfigSet *cs, void *var, struct Conf
+ }
+
+ /**
+- * address_string_get - Get an Address as a string - Implements ::cst_string_get()
++ * address_string_get - Get an Address as a string - Implements ConfigSetType::string_get()
+ */
+ static int address_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -160,7 +160,7 @@ static struct Address *address_dup(struct Address *addr)
+ }
+
+ /**
+- * address_native_set - Set an Address config item by Address object - Implements ::cst_native_set()
++ * address_native_set - Set an Address config item by Address object - Implements ConfigSetType::native_set()
+ */
+ static int address_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value,
+@@ -192,7 +192,7 @@ static int address_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * address_native_get - Get an Address object from an Address config item - Implements ::cst_native_get()
++ * address_native_get - Get an Address object from an Address config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t address_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -206,7 +206,7 @@ static intptr_t address_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * address_reset - Reset an Address to its initial value - Implements ::cst_reset()
++ * address_reset - Reset an Address to its initial value - Implements ConfigSetType::reset()
+ */
+ static int address_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/address.h b/config/address.h
+index 90bc072fa..0bb2c20c7 100644
+--- a/config/address.h
++++ b/config/address.h
+@@ -26,8 +26,8 @@
+ struct Address;
+ struct ConfigSet;
+
+-void address_init(struct ConfigSet *cs);
+-struct Address *address_new(const char *addr);
+-void address_free(struct Address **addr);
++void address_free(struct Address **addr);
++void address_init(struct ConfigSet *cs);
++struct Address *address_new (const char *addr);
+
+ #endif /* MUTT_CONFIG_ADDRESS_H */
+diff --git a/config/bool.c b/config/bool.c
+index 5bda860ea..048341474 100644
+--- a/config/bool.c
++++ b/config/bool.c
+@@ -31,9 +31,10 @@
+ #include <limits.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "bool.h"
+ #include "set.h"
++#include "subset.h"
+ #include "types.h"
+
+ /**
+@@ -46,7 +47,7 @@ const char *BoolValues[] = {
+ };
+
+ /**
+- * bool_string_set - Set a Bool by string - Implements ::cst_string_set()
++ * bool_string_set - Set a Bool by string - Implements ConfigSetType::string_set()
+ */
+ static int bool_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -66,7 +67,7 @@ static int bool_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+
+ if (num < 0)
+ {
+- mutt_buffer_printf(err, "Invalid boolean value: %s", value);
++ mutt_buffer_printf(err, _("Invalid boolean value: %s"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -94,7 +95,7 @@ static int bool_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ }
+
+ /**
+- * bool_string_get - Get a Bool as a string - Implements ::cst_string_get()
++ * bool_string_get - Get a Bool as a string - Implements ConfigSetType::string_get()
+ */
+ static int bool_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -117,7 +118,7 @@ static int bool_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * bool_native_set - Set a Bool config item by bool - Implements ::cst_native_set()
++ * bool_native_set - Set a Bool config item by bool - Implements ConfigSetType::native_set()
+ */
+ static int bool_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
+@@ -127,7 +128,7 @@ static int bool_native_set(const struct ConfigSet *cs, void *var,
+
+ if ((value < 0) || (value > 1))
+ {
+- mutt_buffer_printf(err, "Invalid boolean value: %ld", value);
++ mutt_buffer_printf(err, _("Invalid boolean value: %ld"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -147,7 +148,7 @@ static int bool_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * bool_native_get - Get a bool from a Bool config item - Implements ::cst_native_get()
++ * bool_native_get - Get a bool from a Bool config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t bool_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -159,7 +160,7 @@ static intptr_t bool_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * bool_reset - Reset a Bool to its initial value - Implements ::cst_reset()
++ * bool_reset - Reset a Bool to its initial value - Implements ConfigSetType::reset()
+ */
+ static int bool_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -202,53 +203,42 @@ void bool_init(struct ConfigSet *cs)
+
+ /**
+ * bool_he_toggle - Toggle the value of a bool
+- * @param cs Config items
++ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int bool_he_toggle(struct ConfigSet *cs, struct HashElem *he, struct Buffer *err)
++int bool_he_toggle(struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err)
+ {
+- if (!cs || !he || !he->data)
++ if (!sub || !he || !he->data)
+ return CSR_ERR_CODE;
+
+- if (DTYPE(he->type) != DT_BOOL)
++ struct HashElem *he_base = cs_get_base(he);
++ if (DTYPE(he_base->type) != DT_BOOL)
+ return CSR_ERR_CODE;
+
+- const struct ConfigDef *cdef = he->data;
+- char *var = cdef->var;
++ intptr_t value = cs_he_native_get(sub->cs, he, err);
++ if (value == INT_MIN)
++ return CSR_ERR_CODE;
+
+- char value = *var;
+- if ((value < 0) || (value > 1))
+- {
+- mutt_buffer_printf(err, "Invalid boolean value: %d", value);
+- return CSR_ERR_INVALID | CSR_INV_TYPE;
+- }
++ int rc = cs_he_native_set(sub->cs, he, !value, err);
+
+- *(char *) var = !value;
++ if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
++ cs_subset_notify_observers(sub, he, NT_CONFIG_SET);
+
+- cs_notify_observers(cs, he, he->key.strkey, NT_CONFIG_SET);
+- return CSR_SUCCESS;
++ return rc;
+ }
+
+ /**
+ * bool_str_toggle - Toggle the value of a bool
+- * @param cs Config items
++ * @param sub Config Subset
+ * @param name Name of config item
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int bool_str_toggle(struct ConfigSet *cs, const char *name, struct Buffer *err)
++int bool_str_toggle(struct ConfigSubset *sub, const char *name, struct Buffer *err)
+ {
+- if (!cs || !name)
+- return CSR_ERR_CODE;
+-
+- struct HashElem *he = cs_get_elem(cs, name);
+- if (!he)
+- {
+- mutt_buffer_printf(err, "Unknown var '%s'", name);
+- return CSR_ERR_UNKNOWN;
+- }
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
+
+- return bool_he_toggle(cs, he, err);
++ return bool_he_toggle(sub, he, err);
+ }
+diff --git a/config/bool.h b/config/bool.h
+index 112adefe4..7add7a9c7 100644
+--- a/config/bool.h
++++ b/config/bool.h
+@@ -25,12 +25,14 @@
+
+ struct Buffer;
+ struct ConfigSet;
++struct ConfigSubset;
+ struct HashElem;
+
+ extern const char *BoolValues[];
+
+ void bool_init(struct ConfigSet *cs);
+-int bool_he_toggle(struct ConfigSet *cs, struct HashElem *he, struct Buffer *err);
+-int bool_str_toggle(struct ConfigSet *cs, const char *name, struct Buffer *err);
++
++int bool_he_toggle (struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
++int bool_str_toggle(struct ConfigSubset *sub, const char *name, struct Buffer *err);
+
+ #endif /* MUTT_CONFIG_BOOL_H */
+diff --git a/config/dump.c b/config/dump.c
+index 8dae7b63c..999901535 100644
+--- a/config/dump.c
++++ b/config/dump.c
+@@ -29,10 +29,10 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "dump.h"
+ #include "set.h"
++#include "subset.h"
+ #include "types.h"
+
+ void mutt_pretty_mailbox(char *buf, size_t buflen);
+@@ -91,53 +91,6 @@ size_t pretty_var(const char *str, struct Buffer *buf)
+ return len;
+ }
+
+-/**
+- * elem_list_sort - Sort two HashElem pointers to config
+- * @param a First HashElem
+- * @param b Second HashElem
+- * @retval -1 a precedes b
+- * @retval 0 a and b are identical
+- * @retval 1 b precedes a
+- */
+-int elem_list_sort(const void *a, const void *b)
+-{
+- if (!a || !b)
+- return 0;
+-
+- const struct HashElem *hea = *(struct HashElem const *const *) a;
+- const struct HashElem *heb = *(struct HashElem const *const *) b;
+-
+- return mutt_str_strcasecmp(hea->key.strkey, heb->key.strkey);
+-}
+-
+-/**
+- * get_elem_list - Create a sorted list of all config items
+- * @param cs ConfigSet to read
+- * @retval ptr Null-terminated array of HashElem
+- */
+-struct HashElem **get_elem_list(struct ConfigSet *cs)
+-{
+- if (!cs)
+- return NULL;
+-
+- struct HashElem **list = mutt_mem_calloc(1024, sizeof(struct HashElem *));
+- size_t index = 0;
+-
+- struct HashWalkState walk = { 0 };
+- struct HashElem *he = NULL;
+-
+- while ((he = mutt_hash_walk(cs->hash, &walk)))
+- {
+- list[index++] = he;
+- if (index == 1022)
+- break; /* LCOV_EXCL_LINE */
+- }
+-
+- qsort(list, index, sizeof(struct HashElem *), elem_list_sort);
+-
+- return list;
+-}
+-
+ /**
+ * dump_config_neo - Dump the config in the style of NeoMutt
+ * @param cs Config items
+@@ -249,7 +202,7 @@ bool dump_config(struct ConfigSet *cs, ConfigDumpFlags flags, FILE *fp)
+ mutt_buffer_addstr(&value, "***");
+ }
+
+- if (IS_PATH(he) && (value.data[0] == '/'))
++ if (((type == DT_PATH) || IS_MAILBOX(he)) && (value.data[0] == '/'))
+ mutt_pretty_mailbox(value.data, value.dsize);
+
+ if ((type != DT_BOOL) && (type != DT_NUMBER) && (type != DT_LONG) &&
+@@ -271,7 +224,7 @@ bool dump_config(struct ConfigSet *cs, ConfigDumpFlags flags, FILE *fp)
+ break; /* LCOV_EXCL_LINE */
+ }
+
+- if (IS_PATH(he) && !(he->type & DT_MAILBOX))
++ if (((type == DT_PATH) || IS_MAILBOX(he)) && !(he->type & DT_MAILBOX))
+ mutt_pretty_mailbox(initial.data, initial.dsize);
+
+ if ((type != DT_BOOL) && (type != DT_NUMBER) && (type != DT_LONG) &&
+diff --git a/config/dump.h b/config/dump.h
+index f1a0ca324..6087ce549 100644
+--- a/config/dump.h
++++ b/config/dump.h
+@@ -45,9 +45,7 @@ typedef uint16_t ConfigDumpFlags; ///< Flags for dump_config(), e.g. #CS
+
+ void dump_config_neo(struct ConfigSet *cs, struct HashElem *he, struct Buffer *value, struct Buffer *initial, ConfigDumpFlags flags, FILE *fp);
+ bool dump_config(struct ConfigSet *cs, ConfigDumpFlags flags, FILE *fp);
+-int elem_list_sort(const void *a, const void *b);
+ size_t escape_string(struct Buffer *buf, const char *src);
+-struct HashElem **get_elem_list(struct ConfigSet *cs);
+ size_t pretty_var(const char *str, struct Buffer *buf);
+
+ #endif /* MUTT_CONFIG_DUMP_H */
+diff --git a/config/enum.c b/config/enum.c
+index dc7489fcc..03a88ebf9 100644
+--- a/config/enum.c
++++ b/config/enum.c
+@@ -30,7 +30,7 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "enum.h"
+ #include "set.h"
+ #include "types.h"
+@@ -59,7 +59,7 @@ static int enum_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ int num = mutt_map_get_value(value, ed->lookup);
+ if (num < 0)
+ {
+- mutt_buffer_printf(err, "Invalid enum value: %s", value);
++ mutt_buffer_printf(err, _("Invalid enum value: %s"), value);
+ return (CSR_ERR_INVALID | CSR_INV_TYPE);
+ }
+
+@@ -146,7 +146,7 @@ static int enum_native_set(const struct ConfigSet *cs, void *var,
+ const char *name = mutt_map_get_name(value, ed->lookup);
+ if (!name)
+ {
+- mutt_buffer_printf(err, "Invalid enum value: %ld", value);
++ mutt_buffer_printf(err, _("Invalid enum value: %ld"), value);
+ return (CSR_ERR_INVALID | CSR_INV_TYPE);
+ }
+
+diff --git a/config/lib.h b/config/lib.h
+index f454582e7..4da7f5042 100644
+--- a/config/lib.h
++++ b/config/lib.h
+@@ -34,6 +34,7 @@
+ * | config/long.c | @subpage config_long |
+ * | config/mbtable.c | @subpage config_mbtable |
+ * | config/number.c | @subpage config_number |
++ * | config/path.c | @subpage config_path |
+ * | config/quad.c | @subpage config_quad |
+ * | config/regex.c | @subpage config_regex |
+ * | config/set.c | @subpage config_set |
+@@ -55,6 +56,7 @@
+ #include "long.h"
+ #include "mbtable.h"
+ #include "number.h"
++#include "path.h"
+ #include "quad.h"
+ #include "regex2.h"
+ #include "set.h"
+diff --git a/config/long.c b/config/long.c
+index 222a041fe..be1cbca0e 100644
+--- a/config/long.c
++++ b/config/long.c
+@@ -30,13 +30,13 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "long.h"
+ #include "set.h"
+ #include "types.h"
+
+ /**
+- * long_string_set - Set a Long by string - Implements ::cst_string_set()
++ * long_string_set - Set a Long by string - Implements ConfigSetType::string_set()
+ */
+ static int long_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -47,13 +47,13 @@ static int long_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ long num = 0;
+ if (!value || (value[0] == '\0') || (mutt_str_atol(value, &num) < 0))
+ {
+- mutt_buffer_printf(err, "Invalid long: %s", NONULL(value));
++ mutt_buffer_printf(err, _("Invalid long: %s"), NONULL(value));
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+ if ((num < 0) && (cdef->type & DT_NOT_NEGATIVE))
+ {
+- mutt_buffer_printf(err, "Option %s may not be negative", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be negative"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -81,7 +81,7 @@ static int long_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ }
+
+ /**
+- * long_string_get - Get a Long as a string - Implements ::cst_string_get()
++ * long_string_get - Get a Long as a string - Implements ConfigSetType::string_get()
+ */
+ static int long_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -101,7 +101,7 @@ static int long_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * long_native_set - Set a Long config item by int - Implements ::cst_native_set()
++ * long_native_set - Set a Long config item by int - Implements ConfigSetType::native_set()
+ */
+ static int long_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
+@@ -111,7 +111,7 @@ static int long_native_set(const struct ConfigSet *cs, void *var,
+
+ if ((value < 0) && (cdef->type & DT_NOT_NEGATIVE))
+ {
+- mutt_buffer_printf(err, "Option %s may not be negative", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be negative"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -131,7 +131,7 @@ static int long_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * long_native_get - Get an int from a Long config item - Implements ::cst_native_get()
++ * long_native_get - Get an int from a Long config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t long_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -143,7 +143,7 @@ static intptr_t long_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * long_reset - Reset a Long to its initial value - Implements ::cst_reset()
++ * long_reset - Reset a Long to its initial value - Implements ConfigSetType::reset()
+ */
+ static int long_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/mbtable.c b/config/mbtable.c
+index 7c1cc6886..cda15a1c0 100644
+--- a/config/mbtable.c
++++ b/config/mbtable.c
+@@ -31,7 +31,7 @@
+ #include <stdint.h>
+ #include <string.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "mbtable.h"
+ #include "set.h"
+ #include "types.h"
+@@ -85,7 +85,7 @@ struct MbTable *mbtable_parse(const char *s)
+ }
+
+ /**
+- * mbtable_destroy - Destroy an MbTable object - Implements ::cst_destroy()
++ * mbtable_destroy - Destroy an MbTable object - Implements ConfigSetType::destroy()
+ */
+ static void mbtable_destroy(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef)
+ {
+@@ -100,7 +100,7 @@ static void mbtable_destroy(const struct ConfigSet *cs, void *var, const struct
+ }
+
+ /**
+- * mbtable_string_set - Set a MbTable by string - Implements ::cst_string_set()
++ * mbtable_string_set - Set a MbTable by string - Implements ConfigSetType::string_set()
+ */
+ static int mbtable_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -108,6 +108,7 @@ static int mbtable_string_set(const struct ConfigSet *cs, void *var, struct Conf
+ if (!cs || !cdef)
+ return CSR_ERR_CODE; /* LCOV_EXCL_LINE */
+
++ /* Store empty strings as NULL */
+ if (value && (value[0] == '\0'))
+ value = NULL;
+
+@@ -154,7 +155,7 @@ static int mbtable_string_set(const struct ConfigSet *cs, void *var, struct Conf
+ }
+
+ /**
+- * mbtable_string_get - Get a MbTable as a string - Implements ::cst_string_get()
++ * mbtable_string_get - Get a MbTable as a string - Implements ConfigSetType::string_get()
+ */
+ static int mbtable_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -196,7 +197,7 @@ static struct MbTable *mbtable_dup(struct MbTable *table)
+ }
+
+ /**
+- * mbtable_native_set - Set a MbTable config item by MbTable object - Implements ::cst_native_set()
++ * mbtable_native_set - Set a MbTable config item by MbTable object - Implements ConfigSetType::native_set()
+ */
+ static int mbtable_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value,
+@@ -228,7 +229,7 @@ static int mbtable_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * mbtable_native_get - Get an MbTable object from a MbTable config item - Implements ::cst_native_get()
++ * mbtable_native_get - Get an MbTable object from a MbTable config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t mbtable_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -242,7 +243,7 @@ static intptr_t mbtable_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * mbtable_reset - Reset an MbTable to its initial value - Implements ::cst_reset()
++ * mbtable_reset - Reset an MbTable to its initial value - Implements ConfigSetType::reset()
+ */
+ static int mbtable_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/mbtable.h b/config/mbtable.h
+index f71c38dbe..679898a13 100644
+--- a/config/mbtable.h
++++ b/config/mbtable.h
+@@ -40,8 +40,8 @@ struct MbTable
+ char *segmented_str; ///< Each chars entry points inside this string
+ };
+
+-void mbtable_init(struct ConfigSet *cs);
++void mbtable_free (struct MbTable **table);
++void mbtable_init (struct ConfigSet *cs);
+ struct MbTable *mbtable_parse(const char *str);
+-void mbtable_free(struct MbTable **table);
+
+ #endif /* MUTT_CONFIG_MBTABLE_H */
+diff --git a/config/number.c b/config/number.c
+index d3b67ab92..d2dfde049 100644
+--- a/config/number.c
++++ b/config/number.c
+@@ -30,13 +30,13 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "number.h"
+ #include "set.h"
+ #include "types.h"
+
+ /**
+- * number_string_set - Set a Number by string - Implements ::cst_string_set()
++ * number_string_set - Set a Number by string - Implements ConfigSetType::string_set()
+ */
+ static int number_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -46,26 +46,26 @@ static int number_string_set(const struct ConfigSet *cs, void *var, struct Confi
+
+ if (!value || !value[0])
+ {
+- mutt_buffer_printf(err, "Option %s may not be empty", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+ int num = 0;
+ if (mutt_str_atoi(value, &num) < 0)
+ {
+- mutt_buffer_printf(err, "Invalid number: %s", value);
++ mutt_buffer_printf(err, _("Invalid number: %s"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+ if ((num < SHRT_MIN) || (num > SHRT_MAX))
+ {
+- mutt_buffer_printf(err, "Number is too big: %s", value);
++ mutt_buffer_printf(err, _("Number is too big: %s"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+ if ((num < 0) && (cdef->type & DT_NOT_NEGATIVE))
+ {
+- mutt_buffer_printf(err, "Option %s may not be negative", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be negative"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -93,7 +93,7 @@ static int number_string_set(const struct ConfigSet *cs, void *var, struct Confi
+ }
+
+ /**
+- * number_string_get - Get a Number as a string - Implements ::cst_string_get()
++ * number_string_get - Get a Number as a string - Implements ConfigSetType::string_get()
+ */
+ static int number_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -113,7 +113,7 @@ static int number_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * number_native_set - Set a Number config item by int - Implements ::cst_native_set()
++ * number_native_set - Set a Number config item by int - Implements ConfigSetType::native_set()
+ */
+ static int number_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value,
+@@ -124,13 +124,13 @@ static int number_native_set(const struct ConfigSet *cs, void *var,
+
+ if ((value < SHRT_MIN) || (value > SHRT_MAX))
+ {
+- mutt_buffer_printf(err, "Invalid number: %ld", value);
++ mutt_buffer_printf(err, _("Invalid number: %ld"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+ if ((value < 0) && (cdef->type & DT_NOT_NEGATIVE))
+ {
+- mutt_buffer_printf(err, "Option %s may not be negative", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be negative"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -150,7 +150,7 @@ static int number_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * number_native_get - Get an int from a Number config item - Implements ::cst_native_get()
++ * number_native_get - Get an int from a Number config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t number_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -162,7 +162,7 @@ static intptr_t number_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * number_reset - Reset a Number to its initial value - Implements ::cst_reset()
++ * number_reset - Reset a Number to its initial value - Implements ConfigSetType::reset()
+ */
+ static int number_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/path.c b/config/path.c
+new file mode 100644
+index 000000000..e1fd19ba8
+--- /dev/null
++++ b/config/path.c
+@@ -0,0 +1,279 @@
++/**
++ * @file
++ * Type representing a path
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page config_path Type: Path
++ *
++ * Type representing a path.
++ */
++
++#include "config.h"
++#include <stddef.h>
++#include <limits.h>
++#include <stdbool.h>
++#include <stdint.h>
++#include "mutt/lib.h"
++#include "path.h"
++#include "set.h"
++#include "types.h"
++
++extern char *HomeDir;
++
++/**
++ * path_tidy - Tidy a path for storage
++ * @param path Path to be tidied
++ * @param is_dir Is the path a directory?
++ * @retval ptr Tidy path
++ *
++ * Expand `~` and remove junk like `/./`
++ *
++ * @note The caller must free the returned string
++ */
++static char *path_tidy(const char *path, bool is_dir)
++{
++ if (!path || !*path)
++ return NULL;
++
++ char buf[PATH_MAX] = { 0 };
++ mutt_str_strfcpy(buf, path, sizeof(buf));
++
++ mutt_path_tilde(buf, sizeof(buf), HomeDir);
++ mutt_path_tidy(buf, is_dir);
++
++ return mutt_str_strdup(buf);
++}
++
++/**
++ * path_destroy - Destroy a Path - Implements ConfigSetType::destroy()
++ */
++static void path_destroy(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef)
++{
++ if (!cs || !var || !cdef)
++ return; /* LCOV_EXCL_LINE */
++
++ const char **str = (const char **) var;
++ if (!*str)
++ return;
++
++ /* Don't free paths from the var definition */
++ if (*(char **) var == (char *) cdef->initial)
++ {
++ *(char **) var = NULL;
++ return;
++ }
++
++ FREE(var);
++}
++
++/**
++ * path_string_set - Set a Path by path - Implements ConfigSetType::string_set()
++ */
++static int path_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
++ const char *value, struct Buffer *err)
++{
++ if (!cs || !cdef)
++ return CSR_ERR_CODE; /* LCOV_EXCL_LINE */
++
++ /* Store empty paths as NULL */
++ if (value && (value[0] == '\0'))
++ value = NULL;
++
++ if (!value && (cdef->type & DT_NOT_EMPTY))
++ {
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
++ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
++ }
++
++ int rc = CSR_SUCCESS;
++
++ if (var)
++ {
++ if (mutt_str_strcmp(value, (*(char **) var)) == 0)
++ return CSR_SUCCESS | CSR_SUC_NO_CHANGE;
++
++ if (cdef->validator)
++ {
++ rc = cdef->validator(cs, cdef, (intptr_t) value, err);
++
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return rc | CSR_INV_VALIDATOR;
++ }
++
++ path_destroy(cs, var, cdef);
++
++ char *str = path_tidy(value, cdef->type & DT_PATH_DIR);
++ if (!str)
++ rc |= CSR_SUC_EMPTY;
++
++ *(char **) var = str;
++ }
++ else
++ {
++ /* we're already using the initial value */
++ if (*(char **) cdef->var == (char *) cdef->initial)
++ *(char **) cdef->var = mutt_str_strdup((char *) cdef->initial);
++
++ if (cdef->type & DT_INITIAL_SET)
++ FREE(&cdef->initial);
++
++ cdef->type |= DT_INITIAL_SET;
++ cdef->initial = IP mutt_str_strdup(value);
++ }
++
++ return rc;
++}
++
++/**
++ * path_string_get - Get a Path as a path - Implements ConfigSetType::string_get()
++ */
++static int path_string_get(const struct ConfigSet *cs, void *var,
++ const struct ConfigDef *cdef, struct Buffer *result)
++{
++ if (!cs || !cdef)
++ return CSR_ERR_CODE; /* LCOV_EXCL_LINE */
++
++ const char *str = NULL;
++
++ if (var)
++ str = *(const char **) var;
++ else
++ str = (char *) cdef->initial;
++
++ if (!str)
++ return CSR_SUCCESS | CSR_SUC_EMPTY; /* empty path */
++
++ mutt_buffer_addstr(result, str);
++ return CSR_SUCCESS;
++}
++
++/**
++ * path_native_set - Set a Path config item by path - Implements ConfigSetType::native_set()
++ */
++static int path_native_set(const struct ConfigSet *cs, void *var,
++ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
++{
++ if (!cs || !var || !cdef)
++ return CSR_ERR_CODE; /* LCOV_EXCL_LINE */
++
++ char *str = (char *) value;
++
++ /* Store empty paths as NULL */
++ if (str && (str[0] == '\0'))
++ value = 0;
++
++ if ((value == 0) && (cdef->type & DT_NOT_EMPTY))
++ {
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
++ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
++ }
++
++ if (mutt_str_strcmp((const char *) value, (*(char **) var)) == 0)
++ return CSR_SUCCESS | CSR_SUC_NO_CHANGE;
++
++ int rc;
++
++ if (cdef->validator)
++ {
++ rc = cdef->validator(cs, cdef, value, err);
++
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ return rc | CSR_INV_VALIDATOR;
++ }
++
++ path_destroy(cs, var, cdef);
++
++ str = path_tidy(str, cdef->type & DT_PATH_DIR);
++ rc = CSR_SUCCESS;
++ if (!str)
++ rc |= CSR_SUC_EMPTY;
++
++ *(const char **) var = str;
++ return rc;
++}
++
++/**
++ * path_native_get - Get a path from a Path config item - Implements ConfigSetType::native_get()
++ */
++static intptr_t path_native_get(const struct ConfigSet *cs, void *var,
++ const struct ConfigDef *cdef, struct Buffer *err)
++{
++ if (!cs || !var || !cdef)
++ return INT_MIN; /* LCOV_EXCL_LINE */
++
++ const char *str = *(const char **) var;
++
++ return (intptr_t) str;
++}
++
++/**
++ * path_reset - Reset a Path to its initial value - Implements ConfigSetType::reset()
++ */
++static int path_reset(const struct ConfigSet *cs, void *var,
++ const struct ConfigDef *cdef, struct Buffer *err)
++{
++ if (!cs || !var || !cdef)
++ return CSR_ERR_CODE; /* LCOV_EXCL_LINE */
++
++ int rc = CSR_SUCCESS;
++
++ const char *str = path_tidy((const char *) cdef->initial, cdef->type & DT_PATH_DIR);
++ if (!str)
++ rc |= CSR_SUC_EMPTY;
++
++ if (mutt_str_strcmp(str, (*(char **) var)) == 0)
++ {
++ FREE(&str);
++ return rc | CSR_SUC_NO_CHANGE;
++ }
++
++ if (cdef->validator)
++ {
++ rc = cdef->validator(cs, cdef, cdef->initial, err);
++
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ FREE(&str);
++ return rc | CSR_INV_VALIDATOR;
++ }
++ }
++
++ path_destroy(cs, var, cdef);
++
++ if (!str)
++ rc |= CSR_SUC_EMPTY;
++
++ *(const char **) var = str;
++ return rc;
++}
++
++/**
++ * path_init - Register the Path config type
++ * @param cs Config items
++ */
++void path_init(struct ConfigSet *cs)
++{
++ const struct ConfigSetType cst_path = {
++ "path", path_string_set, path_string_get, path_native_set,
++ path_native_get, path_reset, path_destroy,
++ };
++ cs_register_type(cs, DT_PATH, &cst_path);
++}
+diff --git a/config/path.h b/config/path.h
+new file mode 100644
+index 000000000..5c817ba50
+--- /dev/null
++++ b/config/path.h
+@@ -0,0 +1,30 @@
++/**
++ * @file
++ * Type representing a path
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_CONFIG_PATH_H
++#define MUTT_CONFIG_PATH_H
++
++struct ConfigSet;
++
++void path_init(struct ConfigSet *cs);
++
++#endif /* MUTT_CONFIG_PATH_H */
+diff --git a/config/quad.c b/config/quad.c
+index d68908337..e95a2a264 100644
+--- a/config/quad.c
++++ b/config/quad.c
+@@ -30,9 +30,10 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "quad.h"
+ #include "set.h"
++#include "subset.h"
+ #include "types.h"
+
+ /**
+@@ -45,7 +46,7 @@ const char *QuadValues[] = {
+ };
+
+ /**
+- * quad_string_set - Set a Quad-option by string - Implements ::cst_string_set()
++ * quad_string_set - Set a Quad-option by string - Implements ConfigSetType::string_set()
+ */
+ static int quad_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -65,7 +66,7 @@ static int quad_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+
+ if (num < 0)
+ {
+- mutt_buffer_printf(err, "Invalid quad value: %s", value);
++ mutt_buffer_printf(err, _("Invalid quad value: %s"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -93,7 +94,7 @@ static int quad_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ }
+
+ /**
+- * quad_string_get - Get a Quad-option as a string - Implements ::cst_string_get()
++ * quad_string_get - Get a Quad-option as a string - Implements ConfigSetType::string_get()
+ */
+ static int quad_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -119,7 +120,7 @@ static int quad_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * quad_native_set - Set a Quad-option config item by int - Implements ::cst_native_set()
++ * quad_native_set - Set a Quad-option config item by int - Implements ConfigSetType::native_set()
+ */
+ static int quad_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
+@@ -129,7 +130,7 @@ static int quad_native_set(const struct ConfigSet *cs, void *var,
+
+ if ((value < 0) || (value >= (mutt_array_size(QuadValues) - 1)))
+ {
+- mutt_buffer_printf(err, "Invalid quad value: %ld", value);
++ mutt_buffer_printf(err, _("Invalid quad value: %ld"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -149,7 +150,7 @@ static int quad_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * quad_native_get - Get an int object from a Quad-option config item - Implements ::cst_native_get()
++ * quad_native_get - Get an int object from a Quad-option config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t quad_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -161,7 +162,7 @@ static intptr_t quad_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * quad_reset - Reset a Quad-option to its initial value - Implements ::cst_reset()
++ * quad_reset - Reset a Quad-option to its initial value - Implements ConfigSetType::reset()
+ */
+ static int quad_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -204,6 +205,7 @@ void quad_init(struct ConfigSet *cs)
+
+ /**
+ * quad_toggle - Toggle (invert) the value of a quad option
++ * @param opt Value to toggle
+ *
+ * By toggling the low bit, the following are swapped:
+ * - #MUTT_NO <--> #MUTT_YES
+@@ -216,33 +218,47 @@ static int quad_toggle(int opt)
+
+ /**
+ * quad_he_toggle - Toggle the value of a quad
+- * @param cs Config items
++ * @param sub Config subset
+ * @param he HashElem representing config item
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ *
+ * @sa quad_toggle()
+ */
+-int quad_he_toggle(struct ConfigSet *cs, struct HashElem *he, struct Buffer *err)
++int quad_he_toggle(struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err)
+ {
+- if (!cs || !he || !he->data)
++ if (!sub || !he || !he->data)
+ return CSR_ERR_CODE;
+
+- if (DTYPE(he->type) != DT_QUAD)
++ struct HashElem *he_base = cs_get_base(he);
++ if (DTYPE(he_base->type) != DT_QUAD)
+ return CSR_ERR_CODE;
+
+- const struct ConfigDef *cdef = he->data;
+- char *var = cdef->var;
++ intptr_t value = cs_he_native_get(sub->cs, he, err);
++ if (value == INT_MIN)
++ return CSR_ERR_CODE;
+
+- char value = *var;
+- if ((value < 0) || (value >= (mutt_array_size(QuadValues) - 1)))
+- {
+- mutt_buffer_printf(err, "Invalid quad value: %d", value);
+- return CSR_ERR_INVALID | CSR_INV_TYPE;
+- }
++ value = quad_toggle(value);
++ int rc = cs_he_native_set(sub->cs, he, value, err);
+
+- *(char *) var = quad_toggle(value);
++ if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
++ cs_subset_notify_observers(sub, he, NT_CONFIG_SET);
+
+- cs_notify_observers(cs, he, he->key.strkey, NT_CONFIG_SET);
+- return CSR_SUCCESS;
++ return rc;
++}
++
++/**
++ * quad_str_toggle - Toggle the value of a quad
++ * @param sub Config subset
++ * @param name HashElem representing config item
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ *
++ * @sa quad_toggle()
++ */
++int quad_str_toggle(struct ConfigSubset *sub, const char *name, struct Buffer *err)
++{
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
++
++ return quad_he_toggle(sub, he, err);
+ }
+diff --git a/config/quad.h b/config/quad.h
+index 98f623a9a..adef16cc7 100644
+--- a/config/quad.h
++++ b/config/quad.h
+@@ -25,6 +25,7 @@
+
+ struct Buffer;
+ struct ConfigSet;
++struct ConfigSubset;
+ struct HashElem;
+
+ extern const char *QuadValues[];
+@@ -42,6 +43,8 @@ enum QuadOption
+ };
+
+ void quad_init(struct ConfigSet *cs);
+-int quad_he_toggle(struct ConfigSet *cs, struct HashElem *he, struct Buffer *err);
++
++int quad_he_toggle (struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
++int quad_str_toggle(struct ConfigSubset *sub, const char *name, struct Buffer *err);
+
+ #endif /* MUTT_CONFIG_QUAD_H */
+diff --git a/config/regex.c b/config/regex.c
+index dca9a0a76..3110bbca8 100644
+--- a/config/regex.c
++++ b/config/regex.c
+@@ -32,7 +32,7 @@
+ #include <regex.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "regex2.h" // IWYU pragma: keep
+ #include "set.h"
+ #include "types.h"
+@@ -54,7 +54,7 @@ void regex_free(struct Regex **r)
+ }
+
+ /**
+- * regex_destroy - Destroy a Regex object - Implements ::cst_destroy()
++ * regex_destroy - Destroy a Regex object - Implements ConfigSetType::destroy()
+ */
+ static void regex_destroy(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef)
+ {
+@@ -113,7 +113,7 @@ struct Regex *regex_new(const char *str, int flags, struct Buffer *err)
+ }
+
+ /**
+- * regex_string_set - Set a Regex by string - Implements ::cst_string_set()
++ * regex_string_set - Set a Regex by string - Implements ConfigSetType::string_set()
+ */
+ static int regex_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -173,7 +173,7 @@ static int regex_string_set(const struct ConfigSet *cs, void *var, struct Config
+ }
+
+ /**
+- * regex_string_get - Get a Regex as a string - Implements ::cst_string_get()
++ * regex_string_get - Get a Regex as a string - Implements ConfigSetType::string_get()
+ */
+ static int regex_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -202,7 +202,7 @@ static int regex_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * regex_native_set - Set a Regex config item by Regex object - Implements ::cst_native_set()
++ * regex_native_set - Set a Regex config item by Regex object - Implements ConfigSetType::native_set()
+ */
+ static int regex_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
+@@ -246,7 +246,7 @@ static int regex_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * regex_native_get - Get a Regex object from a Regex config item - Implements ::cst_native_get()
++ * regex_native_get - Get a Regex object from a Regex config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t regex_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -260,7 +260,7 @@ static intptr_t regex_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * regex_reset - Reset a Regex to its initial value - Implements ::cst_reset()
++ * regex_reset - Reset a Regex to its initial value - Implements ConfigSetType::reset()
+ */
+ static int regex_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/regex2.h b/config/regex2.h
+index 367e822ed..191308202 100644
+--- a/config/regex2.h
++++ b/config/regex2.h
+@@ -29,8 +29,8 @@ struct Buffer;
+ struct ConfigSet;
+ struct Regex;
+
+-void regex_init(struct ConfigSet *cs);
+-struct Regex *regex_new(const char *str, int flags, struct Buffer *err);
+-void regex_free(struct Regex **regex);
++void regex_free(struct Regex **regex);
++void regex_init(struct ConfigSet *cs);
++struct Regex *regex_new (const char *str, int flags, struct Buffer *err);
+
+ #endif /* MUTT_CONFIG_REGEX_H */
+diff --git a/config/set.c b/config/set.c
+index 32c94c28b..4548c9750 100644
+--- a/config/set.c
++++ b/config/set.c
+@@ -29,8 +29,7 @@
+ #include "config.h"
+ #include <limits.h>
+ #include <stdio.h>
+-#include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "set.h"
+ #include "inheritance.h"
+ #include "types.h"
+@@ -39,23 +38,6 @@ struct ConfigSetType RegisteredTypes[18] = {
+ { NULL, NULL, NULL, NULL, NULL, NULL, NULL },
+ };
+
+-/**
+- * get_base - Find the root Config Item
+- * @param he Config Item to examine
+- * @retval ptr Root Config Item
+- *
+- * Given an inherited HashElem, find the HashElem representing the original
+- * Config Item.
+- */
+-static struct HashElem *get_base(struct HashElem *he)
+-{
+- if (!(he->type & DT_INHERITED))
+- return he;
+-
+- struct Inheritance *i = he->data;
+- return get_base(i->parent);
+-}
+-
+ /**
+ * destroy - Callback function for the Hash Table - Implements ::hashelem_free_t
+ * @param type Object type, e.g. #DT_STRING
+@@ -75,7 +57,7 @@ static void destroy(int type, void *obj, intptr_t data)
+ {
+ struct Inheritance *i = obj;
+
+- struct HashElem *he_base = get_base(i->parent);
++ struct HashElem *he_base = cs_get_base(i->parent);
+ struct ConfigDef *cdef = he_base->data;
+
+ cst = cs_get_type_def(cs, he_base->type);
+@@ -116,7 +98,7 @@ static struct HashElem *create_synonym(const struct ConfigSet *cs,
+ struct HashElem *parent = cs_get_elem(cs, name);
+ if (!parent)
+ {
+- mutt_buffer_printf(err, "No such variable: %s", name);
++ mutt_buffer_printf(err, _("No such variable: %s"), name);
+ return NULL;
+ }
+
+@@ -148,7 +130,8 @@ static struct HashElem *reg_one_var(const struct ConfigSet *cs,
+ const struct ConfigSetType *cst = cs_get_type_def(cs, cdef->type);
+ if (!cst)
+ {
+- mutt_buffer_printf(err, "Variable '%s' has an invalid type %d", cdef->name, cdef->type);
++ mutt_buffer_printf(err, _("Variable '%s' has an invalid type %d"),
++ cdef->name, cdef->type);
+ return NULL;
+ }
+
+@@ -170,25 +153,12 @@ static struct HashElem *reg_one_var(const struct ConfigSet *cs,
+ */
+ struct ConfigSet *cs_new(size_t size)
+ {
+- struct ConfigSet *cs = mutt_mem_malloc(sizeof(*cs));
+- cs_init(cs, size);
+- return cs;
+-}
+-
+-/**
+- * cs_init - Initialise a Config Set
+- * @param cs Config items
+- * @param size Number of expected config items
+- */
+-void cs_init(struct ConfigSet *cs, size_t size)
+-{
+- if (!cs)
+- return;
++ struct ConfigSet *cs = mutt_mem_calloc(1, sizeof(*cs));
+
+- memset(cs, 0, sizeof(*cs));
+ cs->hash = mutt_hash_new(size, MUTT_HASH_NO_FLAGS);
+ mutt_hash_set_destructor(cs->hash, destroy, (intptr_t) cs);
+- cs->notify = notify_new(cs, NT_CONFIG);
++
++ return cs;
+ }
+
+ /**
+@@ -203,10 +173,26 @@ void cs_free(struct ConfigSet **ptr)
+ struct ConfigSet *cs = *ptr;
+
+ mutt_hash_free(&cs->hash);
+- notify_free(&cs->notify);
+ FREE(ptr);
+ }
+
++/**
++ * cs_get_base - Find the root Config Item
++ * @param he Config Item to examine
++ * @retval ptr Root Config Item
++ *
++ * Given an inherited HashElem, find the HashElem representing the original
++ * Config Item.
++ */
++struct HashElem *cs_get_base(struct HashElem *he)
++{
++ if (!(he->type & DT_INHERITED))
++ return he;
++
++ struct Inheritance *i = he->data;
++ return cs_get_base(i->parent);
++}
++
+ /**
+ * cs_get_elem - Get the HashElem representing a config item
+ * @param cs Config items
+@@ -348,23 +334,6 @@ void cs_uninherit_variable(const struct ConfigSet *cs, const char *name)
+ mutt_hash_delete(cs->hash, name, NULL);
+ }
+
+-/**
+- * cs_notify_observers - Notify all observers of an event
+- * @param cs Config items
+- * @param he HashElem representing config item
+- * @param name Name of config item
+- * @param ev Type of event
+- */
+-void cs_notify_observers(const struct ConfigSet *cs, struct HashElem *he,
+- const char *name, enum NotifyConfig ev)
+-{
+- if (!cs || !he || !name)
+- return;
+-
+- struct EventConfig ec = { cs, he, name };
+- notify_send(cs->notify, NT_CONFIG, ev, IP & ec);
+-}
+-
+ /**
+ * cs_he_reset - Reset a config item to its initial value
+ * @param cs Config items
+@@ -390,7 +359,7 @@ int cs_he_reset(const struct ConfigSet *cs, struct HashElem *he, struct Buffer *
+ if (he->type & DT_INHERITED)
+ {
+ struct Inheritance *i = he->data;
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+
+@@ -408,8 +377,6 @@ int cs_he_reset(const struct ConfigSet *cs, struct HashElem *he, struct Buffer *
+ rc = cst->reset(cs, cdef->var, cdef, err);
+ }
+
+- if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
+- cs_notify_observers(cs, he, he->key.strkey, NT_CONFIG_RESET);
+ return rc;
+ }
+
+@@ -428,7 +395,7 @@ int cs_str_reset(const struct ConfigSet *cs, const char *name, struct Buffer *er
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(err, "Unknown var '%s'", name);
++ mutt_buffer_printf(err, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -454,7 +421,7 @@ int cs_he_initial_set(const struct ConfigSet *cs, struct HashElem *he,
+
+ if (he->type & DT_INHERITED)
+ {
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ mutt_debug(LL_DEBUG1, "Variable '%s' is inherited type\n", cdef->name);
+ return CSR_ERR_CODE;
+@@ -472,7 +439,6 @@ int cs_he_initial_set(const struct ConfigSet *cs, struct HashElem *he,
+ if (CSR_RESULT(rc) != CSR_SUCCESS)
+ return rc;
+
+- cs_notify_observers(cs, he, he->key.strkey, NT_CONFIG_INITIAL_SET);
+ return CSR_SUCCESS;
+ }
+
+@@ -493,7 +459,7 @@ int cs_str_initial_set(const struct ConfigSet *cs, const char *name,
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(err, "Unknown var '%s'", name);
++ mutt_buffer_printf(err, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -520,7 +486,7 @@ int cs_he_initial_get(const struct ConfigSet *cs, struct HashElem *he, struct Bu
+
+ if (he->type & DT_INHERITED)
+ {
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ }
+@@ -558,7 +524,7 @@ int cs_str_initial_get(const struct ConfigSet *cs, const char *name, struct Buff
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(result, "Unknown var '%s'", name);
++ mutt_buffer_printf(result, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -586,7 +552,7 @@ int cs_he_string_set(const struct ConfigSet *cs, struct HashElem *he,
+ if (he->type & DT_INHERITED)
+ {
+ struct Inheritance *i = he->data;
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ var = &i->var;
+@@ -611,8 +577,6 @@ int cs_he_string_set(const struct ConfigSet *cs, struct HashElem *he,
+ if (he->type & DT_INHERITED)
+ he->type = cdef->type | DT_INHERITED;
+
+- if (!(rc & CSR_SUC_NO_CHANGE))
+- cs_notify_observers(cs, he, he->key.strkey, NT_CONFIG_SET);
+ return rc;
+ }
+
+@@ -633,7 +597,7 @@ int cs_str_string_set(const struct ConfigSet *cs, const char *name,
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(err, "Unknown var '%s'", name);
++ mutt_buffer_printf(err, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -665,7 +629,7 @@ int cs_he_string_get(const struct ConfigSet *cs, struct HashElem *he, struct Buf
+ return cs_he_string_get(cs, i->parent, result);
+
+ // inherited, value set
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ var = &i->var;
+@@ -703,7 +667,7 @@ int cs_str_string_get(const struct ConfigSet *cs, const char *name, struct Buffe
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(result, "Unknown var '%s'", name);
++ mutt_buffer_printf(result, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -731,7 +695,7 @@ int cs_he_native_set(const struct ConfigSet *cs, struct HashElem *he,
+ if (he->type & DT_INHERITED)
+ {
+ struct Inheritance *i = he->data;
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ var = &i->var;
+@@ -756,8 +720,6 @@ int cs_he_native_set(const struct ConfigSet *cs, struct HashElem *he,
+ if (he->type & DT_INHERITED)
+ he->type = cdef->type | DT_INHERITED;
+
+- if (!(rc & CSR_SUC_NO_CHANGE))
+- cs_notify_observers(cs, he, cdef->name, NT_CONFIG_SET);
+ return rc;
+ }
+
+@@ -778,7 +740,7 @@ int cs_str_native_set(const struct ConfigSet *cs, const char *name,
+ struct HashElem *he = cs_get_elem(cs, name);
+ if (!he)
+ {
+- mutt_buffer_printf(err, "Unknown var '%s'", name);
++ mutt_buffer_printf(err, _("Unknown variable '%s'"), name);
+ return CSR_ERR_UNKNOWN;
+ }
+
+@@ -789,7 +751,7 @@ int cs_str_native_set(const struct ConfigSet *cs, const char *name,
+ if (he->type & DT_INHERITED)
+ {
+ struct Inheritance *i = he->data;
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ var = &i->var;
+@@ -811,8 +773,6 @@ int cs_str_native_set(const struct ConfigSet *cs, const char *name,
+ if (he->type & DT_INHERITED)
+ he->type = cdef->type | DT_INHERITED;
+
+- if (!(rc & CSR_SUC_NO_CHANGE))
+- cs_notify_observers(cs, he, cdef->name, NT_CONFIG_SET);
+ return rc;
+ }
+
+@@ -842,7 +802,7 @@ intptr_t cs_he_native_get(const struct ConfigSet *cs, struct HashElem *he, struc
+ return cs_he_native_get(cs, i->parent, err);
+
+ // inherited, value set
+- struct HashElem *he_base = get_base(he);
++ struct HashElem *he_base = cs_get_base(he);
+ cdef = he_base->data;
+ cst = cs_get_type_def(cs, he_base->type);
+ var = &i->var;
+@@ -857,7 +817,7 @@ intptr_t cs_he_native_get(const struct ConfigSet *cs, struct HashElem *he, struc
+
+ if (!cst)
+ {
+- mutt_buffer_printf(err, "Variable '%s' has an invalid type %d", cdef->name, he->type);
++ mutt_buffer_printf(err, _("Variable '%s' has an invalid type %d"), cdef->name, he->type);
+ return INT_MIN;
+ }
+
+diff --git a/config/set.h b/config/set.h
+index f2775da8c..c8e03bd6a 100644
+--- a/config/set.h
++++ b/config/set.h
+@@ -32,16 +32,6 @@ struct ConfigSet;
+ struct HashElem;
+ struct ConfigDef;
+
+-/**
+- * enum NotifyConfig - Config notification types
+- */
+-enum NotifyConfig
+-{
+- NT_CONFIG_SET = 1, ///< Config item has been set
+- NT_CONFIG_RESET, ///< Config item has been reset to initial, or parent, value
+- NT_CONFIG_INITIAL_SET, ///< Config item's initial value has been set
+-};
+-
+ /* Config Set Results */
+ #define CSR_SUCCESS 0 ///< Action completed successfully
+ #define CSR_ERR_CODE 1 ///< Problem with the code
+@@ -61,86 +51,6 @@ enum NotifyConfig
+ #define CSR_RESULT_MASK 0x0F
+ #define CSR_RESULT(x) ((x) & CSR_RESULT_MASK)
+
+-/**
+- * enum CsObserverAction - Config Observer responses
+- */
+-enum CsObserverAction
+-{
+- CSOA_CONTINUE = 1, ///< Continue notifying observers
+- CSOA_STOP, ///< Stop notifying observers
+-};
+-
+-/**
+- * typedef cs_validator - Validate the "charset" config variable
+- * @param cs Config items
+- * @param cdef Config definition
+- * @param value Native value
+- * @param err Message for the user
+- * @retval #CSR_SUCCESS Success
+- * @retval #CSR_ERR_INVALID Failure
+- */
+-typedef int (*cs_validator) (const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+-/**
+- * typedef cst_string_set - Set a config item by string
+- * @param cs Config items
+- * @param var Variable to set
+- * @param cdef Variable definition
+- * @param value Value to set
+- * @param err Buffer for error messages
+- * @retval num Result, e.g. #CSR_SUCCESS
+- *
+- * If var is NULL, then the config item's initial value will be set.
+- */
+-typedef int (*cst_string_set)(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef, const char *value, struct Buffer *err);
+-/**
+- * typedef cst_string_get - Get a config item as a string
+- * @param cs Config items
+- * @param var Variable to get
+- * @param cdef Variable definition
+- * @param result Buffer for results or error messages
+- * @retval num Result, e.g. #CSR_SUCCESS
+- *
+- * If var is NULL, then the config item's initial value will be returned.
+- */
+-typedef int (*cst_string_get)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *result);
+-/**
+- * typedef cst_native_set - Set a config item by string
+- * @param cs Config items
+- * @param var Variable to set
+- * @param cdef Variable definition
+- * @param value Native pointer/value to set
+- * @param err Buffer for error messages
+- * @retval num Result, e.g. #CSR_SUCCESS
+- */
+-typedef int (*cst_native_set)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+-/**
+- * typedef cst_native_get - Get a string from a config item
+- * @param cs Config items
+- * @param var Variable to get
+- * @param cdef Variable definition
+- * @param err Buffer for error messages
+- * @retval intptr_t Config item string
+- * @retval INT_MIN Error
+- */
+-typedef intptr_t(*cst_native_get)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *err);
+-
+-/**
+- * typedef cst_reset - Reset a config item to its initial value
+- * @param cs Config items
+- * @param var Variable to reset
+- * @param cdef Variable definition
+- * @param err Buffer for error messages
+- * @retval num Result, e.g. #CSR_SUCCESS
+- */
+-typedef int (*cst_reset) (const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *err);
+-/**
+- * typedef cst_destroy - Destroy a config item
+- * @param cs Config items
+- * @param var Variable to destroy
+- * @param cdef Variable definition
+- */
+-typedef void (*cst_destroy) (const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef);
+-
+ #define IP (intptr_t)
+
+ #define CS_REG_DISABLED (1 << 0)
+@@ -157,7 +67,17 @@ struct ConfigDef
+ void *var; ///< Pointer to the global variable
+ intptr_t initial; ///< Initial value
+ intptr_t data; ///< Extra variable data
+- cs_validator validator; ///< Validator callback function
++
++ /**
++ * validator - Validate a config variable
++ * @param cs Config items
++ * @param cdef Config definition
++ * @param value Native value
++ * @param err Message for the user
++ * @retval #CSR_SUCCESS Success
++ * @retval #CSR_ERR_INVALID Failure
++ */
++ int (*validator)(const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+ };
+
+ /**
+@@ -168,12 +88,71 @@ struct ConfigDef
+ struct ConfigSetType
+ {
+ const char *name; ///< Name of the type, e.g. "String"
+- cst_string_set string_set; ///< Convert the variable to a string
+- cst_string_get string_get; ///< Initialise a variable from a string
+- cst_native_set native_set; ///< Set the variable using a C-native type
+- cst_native_get native_get; ///< Get the variable's value as a C-native type
+- cst_reset reset; ///< Reset the variable to its initial, or parent, value
+- cst_destroy destroy; ///< Free the resources for a variable
++
++ /**
++ * string_set - Set a config item by string
++ * @param cs Config items
++ * @param var Variable to set
++ * @param cdef Variable definition
++ * @param value Value to set
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ *
++ * If var is NULL, then the config item's initial value will be set.
++ */
++ int (*string_set)(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef, const char *value, struct Buffer *err);
++
++ /**
++ * string_get - Get a config item as a string
++ * @param cs Config items
++ * @param var Variable to get
++ * @param cdef Variable definition
++ * @param result Buffer for results or error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ *
++ * If var is NULL, then the config item's initial value will be returned.
++ */
++ int (*string_get)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *result);
++
++ /**
++ * native_set - Set a config item by string
++ * @param cs Config items
++ * @param var Variable to set
++ * @param cdef Variable definition
++ * @param value Native pointer/value to set
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ */
++ int (*native_set)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
++
++ /**
++ * native_get - Get a string from a config item
++ * @param cs Config items
++ * @param var Variable to get
++ * @param cdef Variable definition
++ * @param err Buffer for error messages
++ * @retval intptr_t Config item string
++ * @retval INT_MIN Error
++ */
++ intptr_t (*native_get)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *err);
++
++ /**
++ * reset - Reset a config item to its initial value
++ * @param cs Config items
++ * @param var Variable to reset
++ * @param cdef Variable definition
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ */
++ int (*reset)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef, struct Buffer *err);
++
++ /**
++ * destroy - Destroy a config item
++ * @param cs Config items
++ * @param var Variable to destroy
++ * @param cdef Variable definition
++ */
++ void (*destroy)(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef);
+ };
+
+ /**
+@@ -188,35 +167,20 @@ struct ConfigSet
+ {
+ struct Hash *hash; ///< HashTable storing the config items
+ struct ConfigSetType types[18]; ///< All the defined config types
+- struct Notify *notify; ///< Notifications system
+-};
+-
+-/**
+- * struct EventConfig - A config-change event
+- *
+- * Events such as #NT_CONFIG_SET
+- */
+-struct EventConfig
+-{
+- const struct ConfigSet *cs; ///< Config set
+- struct HashElem *he; ///< Config item that changed
+- const char *name; ///< Name of config item that changed
+ };
+
+ struct ConfigSet *cs_new(size_t size);
+-void cs_init(struct ConfigSet *cs, size_t size);
+ void cs_free(struct ConfigSet **ptr);
+
+-struct HashElem * cs_get_elem(const struct ConfigSet *cs, const char *name);
++struct HashElem * cs_get_base (struct HashElem *he);
++struct HashElem * cs_get_elem (const struct ConfigSet *cs, const char *name);
+ const struct ConfigSetType *cs_get_type_def(const struct ConfigSet *cs, unsigned int type);
+
+-bool cs_register_type(struct ConfigSet *cs, unsigned int type, const struct ConfigSetType *cst);
++bool cs_register_type (struct ConfigSet *cs, unsigned int type, const struct ConfigSetType *cst);
+ bool cs_register_variables(const struct ConfigSet *cs, struct ConfigDef vars[], int flags);
+-struct HashElem *cs_inherit_variable(const struct ConfigSet *cs, struct HashElem *parent, const char *name);
++struct HashElem *cs_inherit_variable (const struct ConfigSet *cs, struct HashElem *parent, const char *name);
+ void cs_uninherit_variable(const struct ConfigSet *cs, const char *name);
+
+-void cs_notify_observers(const struct ConfigSet *cs, struct HashElem *he, const char *name, enum NotifyConfig ev);
+-
+ int cs_he_initial_get (const struct ConfigSet *cs, struct HashElem *he, struct Buffer *result);
+ int cs_he_initial_set (const struct ConfigSet *cs, struct HashElem *he, const char *value, struct Buffer *err);
+ intptr_t cs_he_native_get (const struct ConfigSet *cs, struct HashElem *he, struct Buffer *err);
+diff --git a/config/slist.c b/config/slist.c
+index 83c8f4a55..89c1616f5 100644
+--- a/config/slist.c
++++ b/config/slist.c
+@@ -30,7 +30,7 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "slist.h"
+ #include "set.h"
+ #include "types.h"
+diff --git a/config/sort.c b/config/sort.c
+index b1ed0bf2d..91c267aa6 100644
+--- a/config/sort.c
++++ b/config/sort.c
+@@ -30,7 +30,7 @@
+ #include <limits.h>
+ #include <stdint.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "set.h"
+ #include "sort2.h"
+ #include "types.h"
+@@ -129,7 +129,7 @@ const struct Mapping SortSidebarMethods[] = {
+ // clang-format on
+
+ /**
+- * sort_string_set - Set a Sort by string - Implements ::cst_string_set()
++ * sort_string_set - Set a Sort by string - Implements ConfigSetType::string_set()
+ */
+ static int sort_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -142,7 +142,7 @@ static int sort_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+
+ if (!value || !value[0])
+ {
+- mutt_buffer_printf(err, "Option %s may not be empty", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -189,7 +189,7 @@ static int sort_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+
+ if (id < 0)
+ {
+- mutt_buffer_printf(err, "Invalid sort name: %s", value);
++ mutt_buffer_printf(err, _("Invalid sort name: %s"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -219,7 +219,7 @@ static int sort_string_set(const struct ConfigSet *cs, void *var, struct ConfigD
+ }
+
+ /**
+- * sort_string_get - Get a Sort as a string - Implements ::cst_string_get()
++ * sort_string_get - Get a Sort as a string - Implements ConfigSetType::string_get()
+ */
+ static int sort_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -281,7 +281,7 @@ static int sort_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * sort_native_set - Set a Sort config item by int - Implements ::cst_native_set()
++ * sort_native_set - Set a Sort config item by int - Implements ConfigSetType::native_set()
+ */
+ static int sort_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value, struct Buffer *err)
+@@ -319,7 +319,7 @@ static int sort_native_set(const struct ConfigSet *cs, void *var,
+
+ if (!str)
+ {
+- mutt_buffer_printf(err, "Invalid sort type: %ld", value);
++ mutt_buffer_printf(err, _("Invalid sort type: %ld"), value);
+ return CSR_ERR_INVALID | CSR_INV_TYPE;
+ }
+
+@@ -339,7 +339,7 @@ static int sort_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * sort_native_get - Get an int from a Sort config item - Implements ::cst_native_get()
++ * sort_native_get - Get an int from a Sort config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t sort_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -351,7 +351,7 @@ static intptr_t sort_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * sort_reset - Reset a Sort to its initial value - Implements ::cst_reset()
++ * sort_reset - Reset a Sort to its initial value - Implements ConfigSetType::reset()
+ */
+ static int sort_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/sort2.h b/config/sort2.h
+index 3f557752f..a483995a2 100644
+--- a/config/sort2.h
++++ b/config/sort2.h
+@@ -23,7 +23,7 @@
+ #ifndef MUTT_CONFIG_SORT_H
+ #define MUTT_CONFIG_SORT_H
+
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ConfigSet;
+
+diff --git a/config/string.c b/config/string.c
+index 00e2ac85c..5cf64eae4 100644
+--- a/config/string.c
++++ b/config/string.c
+@@ -30,13 +30,13 @@
+ #include <stddef.h>
+ #include <limits.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "set.h"
+ #include "string3.h" // IWYU pragma: keep
+ #include "types.h"
+
+ /**
+- * string_destroy - Destroy a String - Implements ::cst_destroy()
++ * string_destroy - Destroy a String - Implements ConfigSetType::destroy()
+ */
+ static void string_destroy(const struct ConfigSet *cs, void *var, const struct ConfigDef *cdef)
+ {
+@@ -58,7 +58,7 @@ static void string_destroy(const struct ConfigSet *cs, void *var, const struct C
+ }
+
+ /**
+- * string_string_set - Set a String by string - Implements ::cst_string_set()
++ * string_string_set - Set a String by string - Implements ConfigSetType::string_set()
+ */
+ static int string_string_set(const struct ConfigSet *cs, void *var, struct ConfigDef *cdef,
+ const char *value, struct Buffer *err)
+@@ -72,7 +72,7 @@ static int string_string_set(const struct ConfigSet *cs, void *var, struct Confi
+
+ if (!value && (cdef->type & DT_NOT_EMPTY))
+ {
+- mutt_buffer_printf(err, "Option %s may not be empty", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -116,7 +116,7 @@ static int string_string_set(const struct ConfigSet *cs, void *var, struct Confi
+ }
+
+ /**
+- * string_string_get - Get a String as a string - Implements ::cst_string_get()
++ * string_string_get - Get a String as a string - Implements ConfigSetType::string_get()
+ */
+ static int string_string_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *result)
+@@ -139,7 +139,7 @@ static int string_string_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * string_native_set - Set a String config item by string - Implements ::cst_native_set()
++ * string_native_set - Set a String config item by string - Implements ConfigSetType::native_set()
+ */
+ static int string_native_set(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, intptr_t value,
+@@ -156,7 +156,7 @@ static int string_native_set(const struct ConfigSet *cs, void *var,
+
+ if ((value == 0) && (cdef->type & DT_NOT_EMPTY))
+ {
+- mutt_buffer_printf(err, "Option %s may not be empty", cdef->name);
++ mutt_buffer_printf(err, _("Option %s may not be empty"), cdef->name);
+ return CSR_ERR_INVALID | CSR_INV_VALIDATOR;
+ }
+
+@@ -185,7 +185,7 @@ static int string_native_set(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * string_native_get - Get a string from a String config item - Implements ::cst_native_get()
++ * string_native_get - Get a string from a String config item - Implements ConfigSetType::native_get()
+ */
+ static intptr_t string_native_get(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+@@ -199,7 +199,7 @@ static intptr_t string_native_get(const struct ConfigSet *cs, void *var,
+ }
+
+ /**
+- * string_reset - Reset a String to its initial value - Implements ::cst_reset()
++ * string_reset - Reset a String to its initial value - Implements ConfigSetType::reset()
+ */
+ static int string_reset(const struct ConfigSet *cs, void *var,
+ const struct ConfigDef *cdef, struct Buffer *err)
+diff --git a/config/subset.c b/config/subset.c
+index 716e51cd8..76335329a 100644
+--- a/config/subset.c
++++ b/config/subset.c
+@@ -30,11 +30,60 @@
+ #include <limits.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include <stdlib.h>
++#include "mutt/lib.h"
+ #include "subset.h"
+-#include "dump.h"
+ #include "set.h"
+
++struct Notify;
++
++/**
++ * elem_list_sort - Sort two HashElem pointers to config
++ * @param a First HashElem
++ * @param b Second HashElem
++ * @retval -1 a precedes b
++ * @retval 0 a and b are identical
++ * @retval 1 b precedes a
++ */
++int elem_list_sort(const void *a, const void *b)
++{
++ if (!a || !b)
++ return 0;
++
++ const struct HashElem *hea = *(struct HashElem const *const *) a;
++ const struct HashElem *heb = *(struct HashElem const *const *) b;
++
++ return mutt_str_strcasecmp(hea->key.strkey, heb->key.strkey);
++}
++
++/**
++ * get_elem_list - Create a sorted list of all config items
++ * @param cs ConfigSet to read
++ * @retval ptr Null-terminated array of HashElem
++ */
++struct HashElem **get_elem_list(struct ConfigSet *cs)
++{
++ if (!cs)
++ return NULL;
++
++ struct HashElem **list = mutt_mem_calloc(1024, sizeof(struct HashElem *));
++ size_t index = 0;
++
++ struct HashWalkState walk = { 0 };
++ struct HashElem *he = NULL;
++
++ while ((he = mutt_hash_walk(cs->hash, &walk)))
++ {
++ list[index++] = he;
++ if (index == 1022)
++ break; /* LCOV_EXCL_LINE */
++ }
++
++ qsort(list, index, sizeof(struct HashElem *), elem_list_sort);
++
++ return list;
++}
++
+ /**
+ * cs_subset_free - Free a Config Subset
+ * @param ptr Subset to free
+@@ -48,13 +97,10 @@ void cs_subset_free(struct ConfigSubset **ptr)
+
+ struct ConfigSubset *sub = *ptr;
+
+- if (sub->name)
++ if (sub->cs && sub->name)
+ {
+ char scope[256];
+- if (sub->parent && sub->parent->name)
+- snprintf(scope, sizeof(scope), "%s:%s:", sub->parent->name, sub->name);
+- else
+- snprintf(scope, sizeof(scope), "%s:", sub->name);
++ snprintf(scope, sizeof(scope), "%s:", sub->name);
+
+ // We don't know if any config items have been set,
+ // so search for anything with a matching scope.
+@@ -70,6 +116,7 @@ void cs_subset_free(struct ConfigSubset **ptr)
+ FREE(&list);
+ }
+
++ notify_free(&sub->notify);
+ FREE(&sub->name);
+ FREE(ptr);
+ }
+@@ -77,33 +124,38 @@ void cs_subset_free(struct ConfigSubset **ptr)
+ /**
+ * cs_subset_new - Create a new Config Subset
+ * @param name Name for this Subset
+- * @param parent Parent Subset
++ * @param sub_parent Parent Subset
++ * @param not_parent Parent Notification
+ * @retval ptr New Subset
+ *
+- * @note The name will be combined with the parent's names
++ * @note The name will be combined with the parents' names
+ */
+-struct ConfigSubset *cs_subset_new(const char *name, struct ConfigSubset *parent)
++struct ConfigSubset *cs_subset_new(const char *name, struct ConfigSubset *sub_parent,
++ struct Notify *not_parent)
+ {
+ struct ConfigSubset *sub = mutt_mem_calloc(1, sizeof(*sub));
+
+- if (parent)
++ if (sub_parent)
+ {
+- sub->parent = parent;
+- sub->cs = parent->cs;
++ sub->parent = sub_parent;
++ sub->cs = sub_parent->cs;
+ }
+
+ if (name)
+ {
+ char scope[256];
+
+- if (parent && parent->name)
+- snprintf(scope, sizeof(scope), "%s:%s", parent->name, name);
++ if (sub_parent && sub_parent->name)
++ snprintf(scope, sizeof(scope), "%s:%s", sub_parent->name, name);
+ else
+ mutt_str_strfcpy(scope, name, sizeof(scope));
+
+ sub->name = mutt_str_strdup(scope);
+ }
+
++ sub->notify = notify_new();
++ notify_set_parent(sub->notify, not_parent);
++
+ return sub;
+ }
+
+@@ -128,112 +180,222 @@ struct HashElem *cs_subset_lookup(const struct ConfigSubset *sub, const char *na
+ }
+
+ /**
+- * cs_subset_native_get - Natively get the value of an inherited config item
++ * cs_subset_create_inheritance - Create a Subset config item (inherited)
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @retval ptr HashElem of the config item
++ * @retval NULL Error
++ */
++struct HashElem *cs_subset_create_inheritance(const struct ConfigSubset *sub, const char *name)
++{
++ if (!sub)
++ return NULL;
++
++ struct HashElem *he = cs_subset_lookup(sub, name);
++ if (he)
++ return he;
++
++ if (sub->parent)
++ {
++ // Create parent before creating name
++ he = cs_subset_create_inheritance(sub->parent, name);
++ }
++
++ if (!he)
++ return NULL;
++
++ char scope[256];
++ snprintf(scope, sizeof(scope), "%s:%s", sub->name, name);
++ return cs_inherit_variable(sub->cs, he, scope);
++}
++
++/**
++ * cs_subset_notify_observers - Notify all observers of an event
++ * @param sub Config Subset
++ * @param he HashElem representing config item
++ * @param ev Type of event
++ */
++void cs_subset_notify_observers(const struct ConfigSubset *sub,
++ struct HashElem *he, enum NotifyConfig ev)
++{
++ if (!sub || !he)
++ return;
++
++ struct HashElem *he_base = cs_get_base(he);
++ struct EventConfig ec = { sub, he_base->key.strkey, he };
++ notify_send(sub->notify, NT_CONFIG, ev, &ec);
++}
++
++/**
++ * cs_subset_he_native_get - Natively get the value of a HashElem config item
+ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param err Buffer for error messages
+ * @retval intptr_t Native pointer/value
+ * @retval INT_MIN Error
+ */
+-intptr_t cs_subset_native_get(const struct ConfigSubset *sub,
+- struct HashElem *he, struct Buffer *err)
++intptr_t cs_subset_he_native_get(const struct ConfigSubset *sub,
++ struct HashElem *he, struct Buffer *err)
+ {
+- if (!sub || !he)
++ if (!sub)
+ return INT_MIN;
+
+ return cs_he_native_get(sub->cs, he, err);
+ }
+
+ /**
+- * cs_subset_native_set - Natively set the value of an inherited config item
++ * cs_subset_str_native_get - Natively get the value of a string config item
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @param err Buffer for error messages
++ * @retval intptr_t Native pointer/value
++ * @retval INT_MIN Error
++ */
++intptr_t cs_subset_str_native_get(const struct ConfigSubset *sub,
++ const char *name, struct Buffer *err)
++{
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
++
++ return cs_subset_he_native_get(sub, he, err);
++}
++
++/**
++ * cs_subset_he_native_set - Natively set the value of a HashElem config item
+ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param value Native pointer/value to set
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int cs_subset_native_set(const struct ConfigSubset *sub, struct HashElem *he,
+- intptr_t value, struct Buffer *err)
++int cs_subset_he_native_set(const struct ConfigSubset *sub, struct HashElem *he,
++ intptr_t value, struct Buffer *err)
+ {
+- if (!sub || !he)
++ if (!sub)
+ return CSR_ERR_CODE;
+
+- return cs_he_native_set(sub->cs, he, value, err);
++ int rc = cs_he_native_set(sub->cs, he, value, err);
++
++ if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
++ cs_subset_notify_observers(sub, he, NT_CONFIG_SET);
++
++ return rc;
++}
++
++/**
++ * cs_subset_str_native_set - Natively set the value of a string config item
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @param value Native pointer/value to set
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ */
++int cs_subset_str_native_set(const struct ConfigSubset *sub, const char *name,
++ intptr_t value, struct Buffer *err)
++{
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
++
++ return cs_subset_he_native_set(sub, he, value, err);
+ }
+
+ /**
+- * cs_subset_reset - Reset an inherited config item to its parent value
++ * cs_subset_he_reset - Reset a config item to its initial value
+ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int cs_subset_reset(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err)
++int cs_subset_he_reset(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err)
+ {
+- if (!sub || !he)
++ if (!sub)
+ return CSR_ERR_CODE;
+
+- return cs_he_reset(sub->cs, he, err);
++ int rc = cs_he_reset(sub->cs, he, err);
++
++ if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
++ cs_subset_notify_observers(sub, he, NT_CONFIG_RESET);
++
++ return rc;
++}
++
++/**
++ * cs_subset_str_reset - Reset a config item to its initial value
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ */
++int cs_subset_str_reset(const struct ConfigSubset *sub, const char *name, struct Buffer *err)
++{
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
++
++ return cs_subset_he_reset(sub, he, err);
+ }
+
+ /**
+- * cs_subset_string_get - Get an inherited config item as a string
++ * cs_subset_he_string_get - Get a config item as a string
+ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param result Buffer for results or error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int cs_subset_string_get(const struct ConfigSubset *sub, struct HashElem *he,
+- struct Buffer *result)
++int cs_subset_he_string_get(const struct ConfigSubset *sub, struct HashElem *he,
++ struct Buffer *result)
+ {
+- if (!sub || !he)
++ if (!sub)
+ return CSR_ERR_CODE;
+
+ return cs_he_string_get(sub->cs, he, result);
+ }
+
+ /**
+- * cs_subset_string_set - Set an inherited config item by string
++ * cs_subset_str_string_get - Get a config item as a string
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @param result Buffer for results or error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
++ */
++int cs_subset_str_string_get(const struct ConfigSubset *sub, const char *name,
++ struct Buffer *result)
++{
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
++
++ return cs_subset_he_string_get(sub, he, result);
++}
++
++/**
++ * cs_subset_he_string_set - Set a config item by string
+ * @param sub Config Subset
+ * @param he HashElem representing config item
+ * @param value Value to set
+ * @param err Buffer for error messages
+ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-int cs_subset_string_set(const struct ConfigSubset *sub, struct HashElem *he,
+- const char *value, struct Buffer *err)
++int cs_subset_he_string_set(const struct ConfigSubset *sub, struct HashElem *he,
++ const char *value, struct Buffer *err)
+ {
+- if (!sub || !he)
+- return INT_MIN;
++ if (!sub)
++ return CSR_ERR_CODE;
++
++ int rc = cs_he_string_set(sub->cs, he, value, err);
+
+- return cs_he_string_set(sub->cs, he, value, err);
++ if ((CSR_RESULT(rc) == CSR_SUCCESS) && !(rc & CSR_SUC_NO_CHANGE))
++ cs_subset_notify_observers(sub, he, NT_CONFIG_SET);
++
++ return rc;
+ }
+
+ /**
+- * cs_subset_create_var - Create an inherited config item
+- * @param sub Config Subset
+- * @param name Name of Config item to create
+- * @param err Buffer for error messages
+- * @retval ptr HashElem of the config item
++ * cs_subset_str_string_set - Set a config item by string
++ * @param sub Config Subset
++ * @param name Name of config item
++ * @param value Value to set
++ * @param err Buffer for error messages
++ * @retval num Result, e.g. #CSR_SUCCESS
+ */
+-struct HashElem *cs_subset_create_var(const struct ConfigSubset *sub,
+- const char *name, struct Buffer *err)
++int cs_subset_str_string_set(const struct ConfigSubset *sub, const char *name,
++ const char *value, struct Buffer *err)
+ {
+- if (!sub || !name)
+- return NULL;
+-
+- // Check if name already exists
+- struct HashElem *he = cs_subset_lookup(sub, name);
+- if (he)
+- return he;
++ struct HashElem *he = cs_subset_create_inheritance(sub, name);
+
+- // Create parent before creating name
+- he = cs_subset_create_var(sub->parent, name, err);
+- if (!he)
+- return NULL;
+-
+- char scope[256];
+- snprintf(scope, sizeof(scope), "%s:%s", sub->name, name);
+-
+- return cs_inherit_variable(sub->cs, he, scope);
++ return cs_subset_he_string_set(sub, he, value, err);
+ }
+diff --git a/config/subset.h b/config/subset.h
+index b7f728ee8..7c26e01d5 100644
+--- a/config/subset.h
++++ b/config/subset.h
+@@ -26,27 +26,74 @@
+ #include <stdint.h>
+
+ struct Buffer;
++struct ConfigSet;
+ struct HashElem;
++struct Notify;
++
++/**
++ * enum ConfigScope - Who does this Config belong to?
++ */
++enum ConfigScope
++{
++ SET_SCOPE_NEOMUTT, ///< This Config is NeoMutt-specific (global)
++ SET_SCOPE_ACCOUNT, ///< This Config is Account-specific
++ SET_SCOPE_MAILBOX, ///< This Config is Mailbox-specific
++};
+
+ /**
+ * struct ConfigSubset - A set of inherited config items
+ */
+ struct ConfigSubset
+ {
+- char *name; ///< Scope name of Subset
++ const char *name; ///< Scope name of Subset
++ enum ConfigScope scope; ///< Scope of Subset, e.g. #SET_SCOPE_ACCOUNT
+ struct ConfigSubset *parent; ///< Parent Subset
+ struct ConfigSet *cs; ///< Parent ConfigSet
++ struct Notify *notify; ///< Notifications system
++};
++
++/**
++ * enum NotifyConfig - Config notification types
++ */
++enum NotifyConfig
++{
++ NT_CONFIG_SET = 1, ///< Config item has been set
++ NT_CONFIG_RESET, ///< Config item has been reset to initial, or parent, value
++ NT_CONFIG_INITIAL_SET, ///< Config item's initial value has been set
+ };
+
+-struct ConfigSubset *cs_subset_new (const char *name, struct ConfigSubset *parent);
+-void cs_subset_free (struct ConfigSubset **ptr);
+-struct HashElem * cs_subset_lookup (const struct ConfigSubset *sub, const char *name);
+-struct HashElem * cs_subset_create_var(const struct ConfigSubset *sub, const char *name, struct Buffer *err);
++/**
++ * struct EventConfig - A config-change event
++ *
++ * Events such as #NT_CONFIG_SET
++ */
++struct EventConfig
++{
++ const struct ConfigSubset *sub; ///< Config Subset
++ const char *name; ///< Name of config item that changed
++ struct HashElem *he; ///< Config item that changed
++};
++
++struct ConfigSubset *cs_subset_new (const char *name, struct ConfigSubset *sub_parent, struct Notify *not_parent);
++void cs_subset_free(struct ConfigSubset **ptr);
++
++struct HashElem *cs_subset_create_inheritance(const struct ConfigSubset *sub, const char *name);
++struct HashElem *cs_subset_lookup (const struct ConfigSubset *sub, const char *name);
++void cs_subset_notify_observers (const struct ConfigSubset *sub, struct HashElem *he, enum NotifyConfig ev);
++
++intptr_t cs_subset_he_native_get(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
++int cs_subset_he_native_set(const struct ConfigSubset *sub, struct HashElem *he, intptr_t value, struct Buffer *err);
++int cs_subset_he_reset (const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
++int cs_subset_he_string_get(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *result);
++int cs_subset_he_string_set(const struct ConfigSubset *sub, struct HashElem *he, const char *value, struct Buffer *err);
++
++intptr_t cs_subset_str_native_get(const struct ConfigSubset *sub, const char *name, struct Buffer *err);
++int cs_subset_str_native_set(const struct ConfigSubset *sub, const char *name, intptr_t value, struct Buffer *err);
++int cs_subset_str_reset (const struct ConfigSubset *sub, const char *name, struct Buffer *err);
++int cs_subset_str_string_get(const struct ConfigSubset *sub, const char *name, struct Buffer *result);
++int cs_subset_str_string_set(const struct ConfigSubset *sub, const char *name, const char *value, struct Buffer *err);
+
+-intptr_t cs_subset_native_get(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
+-int cs_subset_native_set(const struct ConfigSubset *sub, struct HashElem *he, intptr_t value, struct Buffer *err);
+-int cs_subset_reset (const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *err);
+-int cs_subset_string_get(const struct ConfigSubset *sub, struct HashElem *he, struct Buffer *result);
+-int cs_subset_string_set(const struct ConfigSubset *sub, struct HashElem *he, const char *value, struct Buffer *err);
++int elem_list_sort(const void *a, const void *b);
++struct HashElem **get_elem_list(struct ConfigSet *cs);
+
+ #endif /* MUTT_CONFIG_SUBSET_H */
+diff --git a/config/types.h b/config/types.h
+index 71ff5136e..95085c3ac 100644
+--- a/config/types.h
++++ b/config/types.h
+@@ -28,17 +28,18 @@
+ /* Data Types */
+ #define DT_ADDRESS 1 ///< e-mail address
+ #define DT_BOOL 2 ///< boolean option
+-#define DT_ENUM 4 ///< an enumeration
+-#define DT_HCACHE 5 ///< header cache backend
+-#define DT_LONG 6 ///< a number (long)
+-#define DT_MBTABLE 8 ///< multibyte char table
+-#define DT_NUMBER 9 ///< a number
+-#define DT_QUAD 11 ///< quad-option (no/yes/ask-no/ask-yes)
+-#define DT_REGEX 12 ///< regular expressions
+-#define DT_SLIST 13 ///< a list of strings
+-#define DT_SORT 14 ///< sorting methods
+-#define DT_STRING 15 ///< a string
+-#define DT_SYNONYM 16 ///< synonym for another variable
++#define DT_ENUM 3 ///< an enumeration
++#define DT_HCACHE 4 ///< header cache backend
++#define DT_LONG 5 ///< a number (long)
++#define DT_MBTABLE 6 ///< multibyte char table
++#define DT_NUMBER 7 ///< a number
++#define DT_PATH 8 ///< a path to a file/directory
++#define DT_QUAD 9 ///< quad-option (no/yes/ask-no/ask-yes)
++#define DT_REGEX 10 ///< regular expressions
++#define DT_SLIST 11 ///< a list of strings
++#define DT_SORT 12 ///< sorting methods
++#define DT_STRING 13 ///< a string
++#define DT_SYNONYM 14 ///< synonym for another variable
+
+ #define DTYPE(x) ((x) & 0x1F) ///< Mask for the Data Type
+
+@@ -46,13 +47,14 @@
+ #define DT_NOT_NEGATIVE (1 << 7) ///< Negative numbers are not allowed
+ #define DT_MAILBOX (1 << 8) ///< Don't perform path expansions
+ #define DT_SENSITIVE (1 << 9) ///< Contains sensitive value, e.g. password
+-#define DT_PATH (1 << 10) ///< A pathname
+-#define DT_COMMAND (1 << 11) ///< A command
+-#define DT_INHERIT_ACC (1 << 12) ///< Config item can be Account-specific
+-#define DT_INHERIT_MBOX (1 << 13) ///< Config item can be Mailbox-specific
++#define DT_COMMAND (1 << 10) ///< A command
++#define DT_INHERIT_ACC (1 << 11) ///< Config item can be Account-specific
++#define DT_INHERIT_MBOX (1 << 12) ///< Config item can be Mailbox-specific
++#define DT_PATH_DIR (1 << 13) ///< Path is a directory
++#define DT_PATH_FILE (1 << 14) ///< Path is a file
+
+ #define IS_SENSITIVE(x) (((x).type & DT_SENSITIVE) == DT_SENSITIVE)
+-#define IS_PATH(x) (((x)->type & (DT_STRING | DT_PATH)) == (DT_STRING | DT_PATH))
++#define IS_MAILBOX(x) (((x)->type & (DT_STRING | DT_MAILBOX)) == (DT_STRING | DT_MAILBOX))
+ #define IS_COMMAND(x) (((x)->type & (DT_STRING | DT_COMMAND)) == (DT_STRING | DT_COMMAND))
+
+ /* subtypes for... */
+diff --git a/conn/conn_globals.c b/conn/conn_globals.c
+index d8d92089c..8da3f7108 100644
+--- a/conn/conn_globals.c
++++ b/conn/conn_globals.c
+@@ -32,30 +32,30 @@
+ #include <stdbool.h>
+ #endif
+
+-short C_ConnectTimeout = 0; ///< Config: Timeout for making network connections (-1 to wait indefinitely)
++// clang-format off
++short C_ConnectTimeout = 0; ///< Config: Timeout for making network connections (-1 to wait indefinitely)
+
+ #ifdef USE_SSL
+-const char *C_CertificateFile = NULL; ///< Config: File containing trusted certificates
+-const char *C_EntropyFile = NULL; ///< Config: (ssl) File/device containing random data to initialise SSL
+-const char *C_SslCiphers = NULL; ///< Config: Ciphers to use when using SSL
+-const char *C_SslClientCert = NULL; ///< Config: File containing client certificates
++const char *C_CertificateFile = NULL; ///< Config: File containing trusted certificates
++const char *C_EntropyFile = NULL; ///< Config: (ssl) File/device containing random data to initialise SSL
++const char *C_SslCiphers = NULL; ///< Config: Ciphers to use when using SSL
++const char *C_SslClientCert = NULL; ///< Config: File containing client certificates
++bool C_SslUseSslv3; ///< Config: (ssl) INSECURE: Use SSLv3 for authentication
++bool C_SslUseTlsv1; ///< Config: (ssl) Use TLSv1 for authentication
++bool C_SslUseTlsv11; ///< Config: (ssl) Use TLSv1.1 for authentication
++bool C_SslUseTlsv12; ///< Config: (ssl) Use TLSv1.2 for authentication
++bool C_SslUseTlsv13; ///< Config: (ssl) Use TLSv1.3 for authentication
++bool C_SslVerifyDates; ///< Config: (ssl) Verify the dates on the server certificate
++bool C_SslVerifyHost; ///< Config: (ssl) Verify the server's hostname against the certificate
++#endif
++
+ #ifdef USE_SSL_GNUTLS
+ const char *C_SslCaCertificatesFile = NULL; ///< Config: File containing trusted CA certificates
+-short C_SslMinDhPrimeBits = 0; ///< Config: Minimum keysize for Diffie-Hellman key exchange
+-#endif
++short C_SslMinDhPrimeBits = 0; ///< Config: Minimum keysize for Diffie-Hellman key exchange
+ #endif
+
+ #ifdef USE_SOCKET
+-const char *C_Preconnect = NULL; ///< Config: (socket) External command to run prior to opening a socket
+-const char *C_Tunnel = NULL; ///< Config: Shell command to establish a tunnel
+-#endif
+-
+-#ifdef USE_SSL
+-bool C_SslUseSslv3; ///< Config: (ssl) INSECURE: Use SSLv3 for authentication
+-bool C_SslUseTlsv1; ///< Config: (ssl) Use TLSv1 for authentication
+-bool C_SslUseTlsv11; ///< Config: (ssl) Use TLSv1.1 for authentication
+-bool C_SslUseTlsv12; ///< Config: (ssl) Use TLSv1.2 for authentication
+-bool C_SslUseTlsv13; ///< Config: (ssl) Use TLSv1.3 for authentication
+-bool C_SslVerifyDates; ///< Config: (ssl) Verify the dates on the server certificate
+-bool C_SslVerifyHost; ///< Config: (ssl) Verify the server's hostname against the certificate
++const char *C_Preconnect = NULL; ///< Config: (socket) External command to run prior to opening a socket
++const char *C_Tunnel = NULL; ///< Config: Shell command to establish a tunnel
+ #endif
++// clang-format on
+diff --git a/conn/conn_globals.h b/conn/conn_globals.h
+index 95a890a28..9fd7d8db0 100644
+--- a/conn/conn_globals.h
++++ b/conn/conn_globals.h
+@@ -26,17 +26,25 @@
+ #include <stdbool.h>
+
+ /* These variables are backing for config items */
+-extern short C_ConnectTimeout;
++extern short C_ConnectTimeout;
+
+ #ifdef USE_SSL
+ extern const char *C_CertificateFile;
+ extern const char *C_EntropyFile;
+ extern const char *C_SslCiphers;
+ extern const char *C_SslClientCert;
++extern bool C_SslUseSslv3;
++extern bool C_SslUseTlsv11;
++extern bool C_SslUseTlsv12;
++extern bool C_SslUseTlsv13;
++extern bool C_SslUseTlsv1;
++extern bool C_SslVerifyDates;
++extern bool C_SslVerifyHost;
++#endif
++
+ #ifdef USE_SSL_GNUTLS
+ extern const char *C_SslCaCertificatesFile;
+-extern short C_SslMinDhPrimeBits;
+-#endif
++extern short C_SslMinDhPrimeBits;
+ #endif
+
+ #ifdef USE_SOCKET
+@@ -44,19 +52,8 @@ extern const char *C_Preconnect;
+ extern const char *C_Tunnel;
+ #endif
+
+-/* These Config Variables are only used in conn/conn_raw.c */
+ #ifdef HAVE_GETADDRINFO
+-extern bool C_UseIpv6;
+-#endif
+-
+-#ifdef USE_SSL
+-extern bool C_SslUseSslv3;
+-extern bool C_SslUseTlsv1;
+-extern bool C_SslUseTlsv11;
+-extern bool C_SslUseTlsv12;
+-extern bool C_SslUseTlsv13;
+-extern bool C_SslVerifyDates;
+-extern bool C_SslVerifyHost;
++extern bool C_UseIpv6;
+ #endif
+
+ #endif /* MUTT_CONN_CONN_GLOBALS_H */
+diff --git a/conn/conn_private.h b/conn/conn_private.h
+new file mode 100644
+index 000000000..dd0d2d1bb
+--- /dev/null
++++ b/conn/conn_private.h
+@@ -0,0 +1,39 @@
++/**
++ * @file
++ * Shared functions that are private to Connections
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_CONN_CONN_PRIVATE_H
++#define MUTT_CONN_CONN_PRIVATE_H
++
++#include <stddef.h>
++#include <time.h>
++
++struct Connection;
++
++int raw_socket_close(struct Connection *conn);
++int raw_socket_open (struct Connection *conn);
++int raw_socket_poll (struct Connection *conn, time_t wait_secs);
++int raw_socket_read (struct Connection *conn, char *buf, size_t len);
++int raw_socket_write(struct Connection *conn, const char *buf, size_t count);
++
++void mutt_tunnel_socket_setup(struct Connection *conn);
++
++#endif /* MUTT_CONN_CONN_PRIVATE_H */
+diff --git a/conn/connaccount.c b/conn/connaccount.c
+new file mode 100644
+index 000000000..6d05ed6d3
+--- /dev/null
++++ b/conn/connaccount.c
+@@ -0,0 +1,216 @@
++/**
++ * @file
++ * Connection Credentials
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page conn_account Connection Credentials
++ *
++ * Connection Credentials
++ */
++
++#include "config.h"
++#include <assert.h>
++#include <stdio.h>
++#include <string.h>
++#include <sys/types.h>
++#include "mutt/lib.h"
++#include "gui/lib.h"
++#include "mutt.h"
++#include "connaccount.h"
++#include "globals.h"
++#include "options.h"
++
++/**
++ * mutt_account_getuser - Retrieve username into ConnAccount, if necessary
++ * @param cac ConnAccount to fill
++ * @retval 0 Success
++ * @retval -1 Failure
++ */
++int mutt_account_getuser(struct ConnAccount *cac)
++{
++ if (cac->flags & MUTT_ACCT_USER)
++ return 0;
++ if (!cac->get_field)
++ return -1;
++
++ const char *user = cac->get_field(MUTT_CA_USER);
++ if (user)
++ mutt_str_strfcpy(cac->user, user, sizeof(cac->user));
++ else if (OptNoCurses)
++ return -1;
++ else
++ {
++ /* prompt (defaults to unix username), copy into cac->user */
++ char prompt[256];
++ /* L10N: Example: Username at myhost.com */
++ snprintf(prompt, sizeof(prompt), _("Username at %s: "), cac->host);
++ mutt_str_strfcpy(cac->user, Username, sizeof(cac->user));
++ if (mutt_get_field_unbuffered(prompt, cac->user, sizeof(cac->user), MUTT_COMP_NO_FLAGS))
++ return -1;
++ }
++
++ cac->flags |= MUTT_ACCT_USER;
++ return 0;
++}
++
++/**
++ * mutt_account_getlogin - Retrieve login info into ConnAccount, if necessary
++ * @param cac ConnAccount to fill
++ * @retval 0 Success
++ * @retval -1 Failure
++ */
++int mutt_account_getlogin(struct ConnAccount *cac)
++{
++ if (cac->flags & MUTT_ACCT_LOGIN)
++ return 0;
++ if (!cac->get_field)
++ return -1;
++
++ const char *login = cac->get_field(MUTT_CA_LOGIN);
++ if (!login && (mutt_account_getuser(cac) == 0))
++ {
++ login = cac->user;
++ }
++
++ if (!login)
++ {
++ mutt_debug(LL_DEBUG1, "Couldn't get user info\n");
++ return -1;
++ }
++
++ mutt_str_strfcpy(cac->login, login, sizeof(cac->login));
++ cac->flags |= MUTT_ACCT_LOGIN;
++ return 0;
++}
++
++/**
++ * mutt_account_getpass - Fetch password into ConnAccount, if necessary
++ * @param cac ConnAccount to fill
++ * @retval 0 Success
++ * @retval -1 Failure
++ */
++int mutt_account_getpass(struct ConnAccount *cac)
++{
++ if (cac->flags & MUTT_ACCT_PASS)
++ return 0;
++ if (!cac->get_field)
++ return -1;
++
++ const char *pass = cac->get_field(MUTT_CA_PASS);
++ if (pass)
++ mutt_str_strfcpy(cac->pass, pass, sizeof(cac->pass));
++ else if (OptNoCurses)
++ return -1;
++ else
++ {
++ char prompt[256];
++ snprintf(prompt, sizeof(prompt), _("Password for %s@%s: "),
++ (cac->flags & MUTT_ACCT_LOGIN) ? cac->login : cac->user, cac->host);
++ cac->pass[0] = '\0';
++ if (mutt_get_password(prompt, cac->pass, sizeof(cac->pass)))
++ return -1;
++ }
++
++ cac->flags |= MUTT_ACCT_PASS;
++ return 0;
++}
++
++/**
++ * mutt_account_unsetpass - Unset ConnAccount's password
++ * @param cac ConnAccount to modify
++ */
++void mutt_account_unsetpass(struct ConnAccount *cac)
++{
++ cac->flags &= ~MUTT_ACCT_PASS;
++ memset(cac->pass, 0, sizeof(cac->pass));
++}
++
++/**
++ * mutt_account_getoauthbearer - Get an OAUTHBEARER token
++ * @param cac Account to use
++ * @retval ptr OAuth token
++ * @retval NULL Error
++ *
++ * Run an external command to generate the oauth refresh token for an account,
++ * then create and encode the OAUTHBEARER token based on RFC7628.
++ *
++ * @note Caller should free the token
++ */
++char *mutt_account_getoauthbearer(struct ConnAccount *cac)
++{
++ if (!cac || !cac->get_field)
++ return NULL;
++
++ /* The oauthbearer token includes the login */
++ if (mutt_account_getlogin(cac))
++ return NULL;
++
++ const char *cmd = cac->get_field(MUTT_CA_OAUTH_CMD);
++ if (!cmd)
++ {
++ /* L10N: You will see this error message if (1) you have "oauthbearer" in
++ one of your $*_authenticators and (2) you do not have the corresponding
++ $*_oauth_refresh_command defined. So the message does not mean "None of
++ your $*_oauth_refresh_command's are defined." */
++ mutt_error(_("No OAUTH refresh command defined"));
++ return NULL;
++ }
++
++ FILE *fp = NULL;
++ pid_t pid = filter_create(cmd, NULL, &fp, NULL);
++ if (pid < 0)
++ {
++ mutt_perror(_("Unable to run refresh command"));
++ return NULL;
++ }
++
++ size_t token_size = 0;
++ char *token = mutt_file_read_line(NULL, &token_size, fp, NULL, 0);
++ mutt_file_fclose(&fp);
++ filter_wait(pid);
++
++ if (!token || (*token == '\0'))
++ {
++ mutt_error(_("Command returned empty string"));
++ FREE(&token);
++ return NULL;
++ }
++
++ if (token_size > 512)
++ {
++ mutt_error(_("OAUTH token is too big: %ld"), token_size);
++ FREE(&token);
++ return NULL;
++ }
++
++ char oauthbearer[1024];
++ int oalen = snprintf(oauthbearer, sizeof(oauthbearer), "n,a=%s,\001host=%s\001port=%d\001auth=Bearer %s\001\001",
++ cac->login, cac->host, cac->port, token);
++ FREE(&token);
++
++ size_t encoded_len = oalen * 4 / 3 + 10;
++ assert(encoded_len < 1400); // Assure LGTM that we won't overflow
++
++ char *encoded_token = mutt_mem_malloc(encoded_len);
++ mutt_b64_encode(oauthbearer, oalen, encoded_token, encoded_len);
++
++ return encoded_token;
++}
+diff --git a/conn/connaccount.h b/conn/connaccount.h
+index 70e1ae88a..da8531665 100644
+--- a/conn/connaccount.h
++++ b/conn/connaccount.h
+@@ -1,6 +1,6 @@
+ /**
+ * @file
+- * ConnAccount object
++ * Connection Credentials
+ *
+ * @authors
+ * Copyright (C) 2000-2005,2008 Brendan Cully <brendan@kublai.com>
+@@ -20,23 +20,57 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MUTT_CONN_ACCOUNT_H
+-#define MUTT_CONN_ACCOUNT_H
++#ifndef MUTT_CONN_CONNACCOUNT_H
++#define MUTT_CONN_CONNACCOUNT_H
+
+-#include "mutt_account.h"
++#include <stdint.h>
++
++/**
++ * enum ConnAccountField - Login credentials
++ */
++enum ConnAccountField
++{
++ MUTT_CA_HOST = 1, ///< Server name
++ MUTT_CA_LOGIN, ///< Login name
++ MUTT_CA_USER, ///< User name
++ MUTT_CA_PASS, ///< Password
++ MUTT_CA_OAUTH_CMD, ///< OAuth refresh command
++};
++
++typedef uint8_t MuttAccountFlags; ///< Flags, Which ConnAccount fields are initialised, e.g. #MUTT_ACCT_PORT
++#define MUTT_ACCT_NO_FLAGS 0 ///< No flags are set
++#define MUTT_ACCT_PORT (1 << 0) ///< Port field has been set
++#define MUTT_ACCT_USER (1 << 1) ///< User field has been set
++#define MUTT_ACCT_LOGIN (1 << 2) ///< Login field has been set
++#define MUTT_ACCT_PASS (1 << 3) ///< Password field has been set
++#define MUTT_ACCT_SSL (1 << 4) ///< Account uses SSL/TLS
+
+ /**
+ * struct ConnAccount - Login details for a remote server
+ */
+ struct ConnAccount
+ {
+- char user[128];
+- char login[128];
+- char pass[256];
+- char host[128];
+- unsigned short port;
++ char host[128]; ///< Server to login to
++ char login[128]; ///< Login name
++ char user[128]; ///< Username
++ char pass[256]; ///< Password
++ unsigned short port; ///< Port to connect to
+ unsigned char type; ///< Connection type, e.g. #MUTT_ACCT_TYPE_IMAP
+ MuttAccountFlags flags; ///< Which fields are initialised, e.g. #MUTT_ACCT_USER
++ const char *service; ///< Name of the service, e.g. "imap"
++
++ /**
++ * get_field - Function to get some login credentials
++ * @param field Field to get, e.g. #MUTT_CA_PASS
++ * @retval ptr Requested string
++ */
++ const char *(*get_field)(enum ConnAccountField field);
+ };
+
+-#endif /* MUTT_CONN_ACCOUNT_H */
++int mutt_account_getlogin (struct ConnAccount *account);
++char *mutt_account_getoauthbearer(struct ConnAccount *account);
++int mutt_account_getpass (struct ConnAccount *account);
++int mutt_account_getuser (struct ConnAccount *account);
++void mutt_account_unsetpass (struct ConnAccount *account);
++
++#endif /* MUTT_CONN_CONNACCOUNT_H */
+diff --git a/conn/connection.h b/conn/connection.h
+index 81390889f..19416a398 100644
+--- a/conn/connection.h
++++ b/conn/connection.h
+@@ -33,58 +33,59 @@
+ */
+ struct Connection
+ {
+- struct ConnAccount account;
+- unsigned int ssf; ///< security strength factor, in bits
+-
+- char inbuf[1024];
+- int bufpos;
+-
+- int fd;
+- int available;
+-
+- void *sockdata;
++ struct ConnAccount account; ///< Account details: username, password, etc
++ unsigned int ssf; ///< Security strength factor, in bits
++ char inbuf[1024]; ///< Buffer for incoming traffic
++ int bufpos; ///< Current position in the buffer
++ int fd; ///< Socket file descriptor
++ int available; ///< Amount of data waiting to be read
++ void *sockdata; ///< Backend-specific socket data
+
+ /**
+- * conn_open - Open a socket Connection
++ * open - Open a socket Connection
+ * @param conn Connection to a server
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+- int (*conn_open) (struct Connection *conn);
++ int (*open)(struct Connection *conn);
++
+ /**
+- * conn_read - Read from a socket Connection
++ * read - Read from a socket Connection
+ * @param conn Connection to a server
+ * @param buf Buffer to store the data
+ * @param count Number of bytes to read
+ * @retval >0 Success, number of bytes read
+ * @retval -1 Error, see errno
+ */
+- int (*conn_read) (struct Connection *conn, char *buf, size_t count);
++ int (*read)(struct Connection *conn, char *buf, size_t count);
++
+ /**
+- * conn_write - Write to a socket Connection
++ * write - Write to a socket Connection
+ * @param conn Connection to a server
+ * @param buf Buffer to read into
+ * @param count Number of bytes to read
+ * @retval >0 Success, number of bytes written
+ * @retval -1 Error, see errno
+ */
+- int (*conn_write)(struct Connection *conn, const char *buf, size_t count);
++ int (*write)(struct Connection *conn, const char *buf, size_t count);
++
+ /**
+- * conn_poll - Check whether a socket read would block
++ * poll - Check whether a socket read would block
+ * @param conn Connection to a server
+ * @param wait_secs How long to wait for a response
+ * @retval >0 There is data to read
+ * @retval 0 Read would block
+ * @retval -1 Connection doesn't support polling
+ */
+- int (*conn_poll) (struct Connection *conn, time_t wait_secs);
++ int (*poll)(struct Connection *conn, time_t wait_secs);
++
+ /**
+- * conn_close - Close a socket Connection
++ * close - Close a socket Connection
+ * @param conn Connection to a server
+ * @retval 0 Success
+ * @retval -1 Error, see errno
+ */
+- int (*conn_close)(struct Connection *conn);
++ int (*close)(struct Connection *conn);
+ };
+
+ #endif /* MUTT_CONN_CONNECTION_H */
+diff --git a/conn/getdomain.c b/conn/getdomain.c
+index a8df6e90e..b5f6337f5 100644
+--- a/conn/getdomain.c
++++ b/conn/getdomain.c
+@@ -32,8 +32,8 @@
+ #include <sys/socket.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
+-#include "conn/conn.h" // IWYU pragma: keep
++#include "mutt/lib.h"
++#include "conn/lib.h" // IWYU pragma: keep
+
+ /**
+ * getdnsdomainname - Lookup the host's name using DNS
+diff --git a/conn/ssl_gnutls.c b/conn/gnutls.c
+similarity index 71%
+rename from conn/ssl_gnutls.c
+rename to conn/gnutls.c
+index 654899b73..37b8c8a13 100644
+--- a/conn/ssl_gnutls.c
++++ b/conn/gnutls.c
+@@ -22,7 +22,7 @@
+ */
+
+ /**
+- * @page conn_ssl_gnutls Handling of GnuTLS encryption
++ * @page conn_gnutls Handling of GnuTLS encryption
+ *
+ * Handling of GnuTLS encryption
+ */
+@@ -35,39 +35,31 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/stat.h>
+-#include <time.h>
+-#include "mutt/mutt.h"
++#include "conn_private.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+-#include "conn_globals.h"
+-#include "connaccount.h"
+-#include "connection.h"
+-#include "keymap.h"
+-#include "mutt_account.h"
+-#include "mutt_menu.h"
++#include "lib.h"
+ #include "muttlib.h"
+-#include "opcodes.h"
+ #include "options.h"
+-#include "protos.h"
+-#include "socket.h"
+-#include "ssl.h" // IWYU pragma: keep
++#include "ssl.h"
+
++// clang-format off
+ /* certificate error bitmap values */
+-#define CERTERR_VALID 0
+-#define CERTERR_EXPIRED 1
+-#define CERTERR_NOTYETVALID 2
+-#define CERTERR_REVOKED 4
+-#define CERTERR_NOTTRUSTED 8
+-#define CERTERR_HOSTNAME 16
+-#define CERTERR_SIGNERNOTCA 32
+-#define CERTERR_INSECUREALG 64
+-#define CERTERR_OTHER 128
++#define CERTERR_VALID 0
++#define CERTERR_EXPIRED (1 << 0)
++#define CERTERR_NOTYETVALID (1 << 1)
++#define CERTERR_REVOKED (1 << 2)
++#define CERTERR_NOTTRUSTED (1 << 3)
++#define CERTERR_HOSTNAME (1 << 4)
++#define CERTERR_SIGNERNOTCA (1 << 5)
++#define CERTERR_INSECUREALG (1 << 6)
++#define CERTERR_OTHER (1 << 7)
++// clang-format on
+
+ const int dialog_row_len = 128;
+
+ #define CERT_SEP "-----BEGIN"
+
+-static int tls_socket_close(struct Connection *conn);
+-
+ #ifndef HAVE_GNUTLS_PRIORITY_SET_DIRECT
+ /* This array needs to be large enough to hold all the possible values support
+ * by NeoMutt. The initialized values are just placeholders--the array gets
+@@ -115,23 +107,7 @@ static int tls_init(void)
+ }
+
+ /**
+- * tls_starttls_close - Close a TLS connection - Implements Connection::conn_close()
+- */
+-static int tls_starttls_close(struct Connection *conn)
+-{
+- int rc;
+-
+- rc = tls_socket_close(conn);
+- conn->conn_read = raw_socket_read;
+- conn->conn_write = raw_socket_write;
+- conn->conn_close = raw_socket_close;
+- conn->conn_poll = raw_socket_poll;
+-
+- return rc;
+-}
+-
+-/**
+- * tls_verify_peers - wrapper for gnutls_certificate_verify_peers
++ * tls_verify_peers - Wrapper for gnutls_certificate_verify_peers()
+ * @param tlsstate TLS state
+ * @retval 0 Success
+ * @retval >0 Error, e.g. GNUTLS_CERT_INVALID
+@@ -213,7 +189,7 @@ static int tls_check_stored_hostname(const gnutls_datum_t *cert, const char *hos
+ regmatch_t pmatch[3];
+
+ /* try checking against names stored in stored certs file */
+- FILE *fp = fopen(C_CertificateFile, "r");
++ FILE *fp = mutt_file_fopen(C_CertificateFile, "r");
+ if (fp)
+ {
+ if (REG_COMP(&preg, "^#H ([a-zA-Z0-9_\\.-]+) ([0-9A-F]{4}( [0-9A-F]{4}){7})[ \t]*$",
+@@ -275,7 +251,7 @@ static int tls_compare_certificates(const gnutls_datum_t *peercert)
+ b64_data_data = mutt_mem_calloc(1, b64_data.size + 1);
+ b64_data.data = b64_data_data;
+
+- FILE *fp = fopen(C_CertificateFile, "r");
++ FILE *fp = mutt_file_fopen(C_CertificateFile, "r");
+ if (!fp)
+ return 0;
+
+@@ -438,6 +414,48 @@ static int tls_check_preauth(const gnutls_datum_t *certdata,
+ return -1;
+ }
+
++/**
++ * add_cert - Look up certificate info and save it to a list
++ * @param title Title for this block of certificate info
++ * @param cert Certificate
++ * @param issuer If true, look up the issuer rather than owner details
++ * @param list List to save info to
++ */
++static void add_cert(const char *title, gnutls_x509_crt_t cert, bool issuer,
++ struct ListHead *list)
++{
++ static const char *part[] = {
++ GNUTLS_OID_X520_COMMON_NAME, // CN
++ GNUTLS_OID_PKCS9_EMAIL, // Email
++ GNUTLS_OID_X520_ORGANIZATION_NAME, // O
++ GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME, // OU
++ GNUTLS_OID_X520_LOCALITY_NAME, // L
++ GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME, // ST
++ GNUTLS_OID_X520_COUNTRY_NAME, // C
++ };
++
++ char buf[128];
++ int rc;
++
++ // Allocate formatted strings and let the ListHead take ownership
++ mutt_list_insert_tail(list, mutt_str_strdup(title));
++
++ for (size_t i = 0; i < mutt_array_size(part); i++)
++ {
++ size_t buflen = sizeof(buf);
++ if (issuer)
++ rc = gnutls_x509_crt_get_issuer_dn_by_oid(cert, part[i], 0, 0, buf, &buflen);
++ else
++ rc = gnutls_x509_crt_get_dn_by_oid(cert, part[i], 0, 0, buf, &buflen);
++ if (rc != 0)
++ continue;
++
++ char *line = NULL;
++ mutt_str_asprintf(&line, " %s", buf);
++ mutt_list_insert_tail(list, line);
++ }
++}
++
+ /**
+ * tls_check_one_certificate - Check a GnuTLS certificate
+ * @param certdata List of GnuTLS certificates
+@@ -452,27 +470,14 @@ static int tls_check_one_certificate(const gnutls_datum_t *certdata,
+ gnutls_certificate_status_t certstat,
+ const char *hostname, int idx, size_t len)
+ {
++ struct ListHead list = STAILQ_HEAD_INITIALIZER(list);
+ int certerr, savedcert;
+ gnutls_x509_crt_t cert;
+- char buf[128];
+ char fpbuf[128];
+- size_t buflen;
+- char dn_common_name[128];
+- char dn_email[128];
+- char dn_organization[128];
+- char dn_organizational_unit[128];
+- char dn_locality[128];
+- char dn_province[128];
+- char dn_country[128];
+ time_t t;
+ char datestr[30];
+- struct Menu *menu = NULL;
+- char helpstr[1024];
+ char title[256];
+- FILE *fp = NULL;
+ gnutls_datum_t pemdata;
+- int done, ret;
+- bool reset_ignoremacro = false;
+
+ if (tls_check_preauth(certdata, certstat, hostname, idx, &certerr, &savedcert) == 0)
+ return 1;
+@@ -491,276 +496,121 @@ static int tls_check_one_certificate(const gnutls_datum_t *certdata,
+ return 0;
+ }
+
+- struct Buffer *drow = mutt_buffer_pool_get();
++ add_cert(_("This certificate belongs to:"), cert, false, &list);
++ mutt_list_insert_tail(&list, NULL);
++ add_cert(_("This certificate was issued by:"), cert, true, &list);
+
+- menu = mutt_menu_new(MENU_GENERIC);
+- mutt_menu_push_current(menu);
+-
+- buflen = sizeof(dn_common_name);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_COMMON_NAME, 0, 0,
+- dn_common_name, &buflen) != 0)
+- {
+- dn_common_name[0] = '\0';
+- }
+- buflen = sizeof(dn_email);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_PKCS9_EMAIL, 0, 0, dn_email, &buflen) != 0)
+- dn_email[0] = '\0';
+- buflen = sizeof(dn_organization);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_ORGANIZATION_NAME, 0,
+- 0, dn_organization, &buflen) != 0)
+- {
+- dn_organization[0] = '\0';
+- }
+- buflen = sizeof(dn_organizational_unit);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME,
+- 0, 0, dn_organizational_unit, &buflen) != 0)
+- {
+- dn_organizational_unit[0] = '\0';
+- }
+- buflen = sizeof(dn_locality);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_LOCALITY_NAME, 0, 0,
+- dn_locality, &buflen) != 0)
+- {
+- dn_locality[0] = '\0';
+- }
+- buflen = sizeof(dn_province);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME,
+- 0, 0, dn_province, &buflen) != 0)
+- {
+- dn_province[0] = '\0';
+- }
+- buflen = sizeof(dn_country);
+- if (gnutls_x509_crt_get_dn_by_oid(cert, GNUTLS_OID_X520_COUNTRY_NAME, 0, 0,
+- dn_country, &buflen) != 0)
+- {
+- dn_country[0] = '\0';
+- }
+-
+- mutt_menu_add_dialog_row(menu, _("This certificate belongs to:"));
+- mutt_buffer_printf(drow, " %s %s", dn_common_name, dn_email);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s", dn_organization);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s", dn_organizational_unit);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s %s %s", dn_locality, dn_province, dn_country);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+-
+- buflen = sizeof(dn_common_name);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_COMMON_NAME, 0,
+- 0, dn_common_name, &buflen) != 0)
+- {
+- dn_common_name[0] = '\0';
+- }
+- buflen = sizeof(dn_email);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_PKCS9_EMAIL, 0, 0,
+- dn_email, &buflen) != 0)
+- {
+- dn_email[0] = '\0';
+- }
+- buflen = sizeof(dn_organization);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_ORGANIZATION_NAME,
+- 0, 0, dn_organization, &buflen) != 0)
+- {
+- dn_organization[0] = '\0';
+- }
+- buflen = sizeof(dn_organizational_unit);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_ORGANIZATIONAL_UNIT_NAME,
+- 0, 0, dn_organizational_unit, &buflen) != 0)
+- {
+- dn_organizational_unit[0] = '\0';
+- }
+- buflen = sizeof(dn_locality);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_LOCALITY_NAME,
+- 0, 0, dn_locality, &buflen) != 0)
+- {
+- dn_locality[0] = '\0';
+- }
+- buflen = sizeof(dn_province);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_STATE_OR_PROVINCE_NAME,
+- 0, 0, dn_province, &buflen) != 0)
+- {
+- dn_province[0] = '\0';
+- }
+- buflen = sizeof(dn_country);
+- if (gnutls_x509_crt_get_issuer_dn_by_oid(cert, GNUTLS_OID_X520_COUNTRY_NAME,
+- 0, 0, dn_country, &buflen) != 0)
+- {
+- dn_country[0] = '\0';
+- }
+-
+- mutt_menu_add_dialog_row(menu, "");
+- mutt_menu_add_dialog_row(menu, _("This certificate was issued by:"));
+- mutt_buffer_printf(drow, " %s %s", dn_common_name, dn_email);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s", dn_organization);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s", dn_organizational_unit);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, " %s %s %s", dn_locality, dn_province, dn_country);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+-
+- mutt_menu_add_dialog_row(menu, "");
+- mutt_menu_add_dialog_row(menu, _("This certificate is valid"));
++ mutt_list_insert_tail(&list, NULL);
++ mutt_list_insert_tail(&list, mutt_str_strdup(_("This certificate is valid")));
+
++ char *line = NULL;
+ t = gnutls_x509_crt_get_activation_time(cert);
+ mutt_date_make_tls(datestr, sizeof(datestr), t);
+- mutt_buffer_printf(drow, _(" from %s"), datestr);
++ mutt_str_asprintf(&line, _(" from %s"), datestr);
++ mutt_list_insert_tail(&list, line);
+
+ t = gnutls_x509_crt_get_expiration_time(cert);
+ mutt_date_make_tls(datestr, sizeof(datestr), t);
+- mutt_buffer_printf(drow, _(" to %s"), datestr);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
++ mutt_str_asprintf(&line, _(" to %s"), datestr);
++ mutt_list_insert_tail(&list, line);
++ mutt_list_insert_tail(&list, NULL);
+
+ fpbuf[0] = '\0';
+ tls_fingerprint(GNUTLS_DIG_SHA, fpbuf, sizeof(fpbuf), certdata);
+- mutt_buffer_printf(drow, _("SHA1 Fingerprint: %s"), fpbuf);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
++ mutt_str_asprintf(&line, _("SHA1 Fingerprint: %s"), fpbuf);
++ mutt_list_insert_tail(&list, line);
+ fpbuf[0] = '\0';
+ fpbuf[40] = '\0'; /* Ensure the second printed line is null terminated */
+ tls_fingerprint(GNUTLS_DIG_SHA256, fpbuf, sizeof(fpbuf), certdata);
+ fpbuf[39] = '\0'; /* Divide into two lines of output */
+- mutt_buffer_printf(drow, "%s%s", _("SHA256 Fingerprint: "), fpbuf);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, "%*s%s", (int) mutt_str_strlen(_("SHA256 Fingerprint: ")),
+- "", fpbuf + 40);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
++ mutt_str_asprintf(&line, "%s%s", _("SHA256 Fingerprint: "), fpbuf);
++ mutt_list_insert_tail(&list, line);
++ mutt_str_asprintf(&line, "%*s%s", (int) mutt_str_strlen(_("SHA256 Fingerprint: ")),
++ "", fpbuf + 40);
++ mutt_list_insert_tail(&list, line);
+
+ if (certerr)
+- mutt_menu_add_dialog_row(menu, "");
++ mutt_list_insert_tail(&list, NULL);
+
+ if (certerr & CERTERR_NOTYETVALID)
+ {
+- mutt_menu_add_dialog_row(menu,
+- _("WARNING: Server certificate is not yet valid"));
++ mutt_list_insert_tail(
++ &list,
++ mutt_str_strdup(_("WARNING: Server certificate is not yet valid")));
+ }
+ if (certerr & CERTERR_EXPIRED)
+ {
+- mutt_menu_add_dialog_row(menu,
+- _("WARNING: Server certificate has expired"));
++ mutt_list_insert_tail(
++ &list, mutt_str_strdup(_("WARNING: Server certificate has expired")));
+ }
+ if (certerr & CERTERR_REVOKED)
+ {
+- mutt_menu_add_dialog_row(menu,
+- _("WARNING: Server certificate has been revoked"));
++ mutt_list_insert_tail(
++ &list,
++ mutt_str_strdup(_("WARNING: Server certificate has been revoked")));
+ }
+ if (certerr & CERTERR_HOSTNAME)
+ {
+- mutt_menu_add_dialog_row(
+- menu, _("WARNING: Server hostname does not match certificate"));
++ mutt_list_insert_tail(
++ &list, mutt_str_strdup(
++ _("WARNING: Server hostname does not match certificate")));
+ }
+ if (certerr & CERTERR_SIGNERNOTCA)
+ {
+- mutt_menu_add_dialog_row(
+- menu, _("WARNING: Signer of server certificate is not a CA"));
++ mutt_list_insert_tail(
++ &list, mutt_str_strdup(
++ _("WARNING: Signer of server certificate is not a CA")));
+ }
+ if (certerr & CERTERR_INSECUREALG)
+ {
+- mutt_menu_add_dialog_row(menu, _("Warning: Server certificate was signed "
+- "using an insecure algorithm"));
++ mutt_list_insert_tail(
++ &list, mutt_str_strdup(_("Warning: Server certificate was signed using "
++ "an insecure algorithm")));
+ }
+
+ snprintf(title, sizeof(title),
+ _("SSL Certificate check (certificate %zu of %zu in chain)"), len - idx, len);
+- menu->title = title;
+- /* certificates with bad dates, or that are revoked, must be
+- * accepted manually each and every time */
+- if (C_CertificateFile && !savedcert &&
+- !(certerr & (CERTERR_EXPIRED | CERTERR_NOTYETVALID | CERTERR_REVOKED)))
+- {
+- menu->prompt = _("(r)eject, accept (o)nce, (a)ccept always");
+- /* L10N: These three letters correspond to the choices in the string:
+- (r)eject, accept (o)nce, (a)ccept always.
+- This is an interactive certificate confirmation prompt for
+- a GNUTLS connection. */
+- menu->keys = _("roa");
+- }
+- else
+- {
+- menu->prompt = _("(r)eject, accept (o)nce");
+- /* L10N: These two letters correspond to the choices in the string:
+- (r)eject, accept (o)nce.
+- These is an interactive certificate confirmation prompt for
+- a GNUTLS connection. */
+- menu->keys = _("ro");
+- }
+-
+- helpstr[0] = '\0';
+- mutt_make_help(buf, sizeof(buf), _("Exit "), MENU_GENERIC, OP_EXIT);
+- mutt_str_strcat(helpstr, sizeof(helpstr), buf);
+- mutt_make_help(buf, sizeof(buf), _("Help"), MENU_GENERIC, OP_HELP);
+- mutt_str_strcat(helpstr, sizeof(helpstr), buf);
+- menu->help = helpstr;
+
+- if (!OptIgnoreMacroEvents)
++ const bool allow_always =
++ (C_CertificateFile && !savedcert &&
++ !(certerr & (CERTERR_EXPIRED | CERTERR_NOTYETVALID | CERTERR_REVOKED)));
++ int rc = dlg_verify_cert(title, &list, allow_always, false);
++ if (rc == 3) // Accept always
+ {
+- OptIgnoreMacroEvents = true;
+- reset_ignoremacro = true;
+- }
+-
+- done = 0;
+- while (done == 0)
+- {
+- switch (mutt_menu_loop(menu))
++ bool saved = false;
++ FILE *fp = mutt_file_fopen(C_CertificateFile, "a");
++ if (fp)
+ {
+- case -1: /* abort */
+- case OP_MAX + 1: /* reject */
+- case OP_EXIT:
+- done = 1;
+- break;
+- case OP_MAX + 3: /* accept always */
+- done = 0;
+- fp = mutt_file_fopen(C_CertificateFile, "a");
+- if (fp)
++ if (certerr & CERTERR_HOSTNAME) // Save hostname if necessary
++ {
++ fpbuf[0] = '\0';
++ tls_fingerprint(GNUTLS_DIG_MD5, fpbuf, sizeof(fpbuf), certdata);
++ fprintf(fp, "#H %s %s\n", hostname, fpbuf);
++ saved = true;
++ }
++ if (certerr ^ CERTERR_HOSTNAME) // Save the cert for all other errors
++ {
++ int rc2 = gnutls_pem_base64_encode_alloc("CERTIFICATE", certdata, &pemdata);
++ if (rc2 == 0)
+ {
+- /* save hostname if necessary */
+- if (certerr & CERTERR_HOSTNAME)
+- {
+- fpbuf[0] = '\0';
+- tls_fingerprint(GNUTLS_DIG_MD5, fpbuf, sizeof(fpbuf), certdata);
+- fprintf(fp, "#H %s %s\n", hostname, fpbuf);
+- done = 1;
+- }
+- /* Save the cert for all other errors */
+- if (certerr ^ CERTERR_HOSTNAME)
++ if (fwrite(pemdata.data, pemdata.size, 1, fp) == 1)
+ {
+- done = 0;
+- ret = gnutls_pem_base64_encode_alloc("CERTIFICATE", certdata, &pemdata);
+- if (ret == 0)
+- {
+- if (fwrite(pemdata.data, pemdata.size, 1, fp) == 1)
+- {
+- done = 1;
+- }
+- gnutls_free(pemdata.data);
+- }
++ saved = true;
+ }
+- mutt_file_fclose(&fp);
++ gnutls_free(pemdata.data);
+ }
+- if (done == 0)
+- {
+- mutt_error(_("Warning: Couldn't save certificate"));
+- }
+- else
+- {
+- mutt_message(_("Certificate saved"));
+- mutt_sleep(0);
+- }
+- /* fallthrough */
+- case OP_MAX + 2: /* accept once */
+- done = 2;
+- break;
++ }
++ mutt_file_fclose(&fp);
+ }
++ if (!saved)
++ mutt_message(_("Certificate saved"));
++ else
++ mutt_error(_("Warning: Couldn't save certificate"));
+ }
+- if (reset_ignoremacro)
+- OptIgnoreMacroEvents = false;
+
+- mutt_buffer_pool_release(&drow);
+- mutt_menu_pop_current(menu);
+- mutt_menu_free(&menu);
++ mutt_list_free(&list);
+ gnutls_x509_crt_deinit(cert);
+-
+- return done == 2;
++ return (rc > 1);
+ }
+
+ /**
+@@ -1135,11 +985,13 @@ static int tls_negotiate(struct Connection *conn)
+ }
+
+ /**
+- * tls_socket_poll - Check whether a socket read would block - Implements Connection::conn_poll()
++ * tls_socket_poll - Check whether a socket read would block - Implements Connection::poll()
+ */
+ static int tls_socket_poll(struct Connection *conn, time_t wait_secs)
+ {
+ struct TlsSockData *data = conn->sockdata;
++ if (!data)
++ return -1;
+
+ if (gnutls_record_check_pending(data->state))
+ return 1;
+@@ -1148,7 +1000,32 @@ static int tls_socket_poll(struct Connection *conn, time_t wait_secs)
+ }
+
+ /**
+- * tls_socket_open - Open a TLS socket - Implements Connection::conn_open()
++ * tls_socket_close - Close a TLS socket - Implements Connection::close()
++ */
++static int tls_socket_close(struct Connection *conn)
++{
++ struct TlsSockData *data = conn->sockdata;
++ if (data)
++ {
++ /* shut down only the write half to avoid hanging waiting for the remote to respond.
++ *
++ * RFC5246 7.2.1. "Closure Alerts"
++ *
++ * It is not required for the initiator of the close to wait for the
++ * responding close_notify alert before closing the read side of the
++ * connection. */
++ gnutls_bye(data->state, GNUTLS_SHUT_WR);
++
++ gnutls_certificate_free_credentials(data->xcred);
++ gnutls_deinit(data->state);
++ FREE(&conn->sockdata);
++ }
++
++ return raw_socket_close(conn);
++}
++
++/**
++ * tls_socket_open - Open a TLS socket - Implements Connection::open()
+ */
+ static int tls_socket_open(struct Connection *conn)
+ {
+@@ -1165,7 +1042,7 @@ static int tls_socket_open(struct Connection *conn)
+ }
+
+ /**
+- * tls_socket_read - Read data from a TLS socket - Implements Connection::conn_read()
++ * tls_socket_read - Read data from a TLS socket - Implements Connection::read()
+ */
+ static int tls_socket_read(struct Connection *conn, char *buf, size_t count)
+ {
+@@ -1192,7 +1069,7 @@ static int tls_socket_read(struct Connection *conn, char *buf, size_t count)
+ }
+
+ /**
+- * tls_socket_write - Write data to a TLS socket - Implements Connection::conn_write()
++ * tls_socket_write - Write data to a TLS socket - Implements Connection::write()
+ */
+ static int tls_socket_write(struct Connection *conn, const char *buf, size_t count)
+ {
+@@ -1226,28 +1103,19 @@ static int tls_socket_write(struct Connection *conn, const char *buf, size_t cou
+ }
+
+ /**
+- * tls_socket_close - Close a TLS socket - Implements Connection::conn_close()
++ * tls_starttls_close - Close a TLS connection - Implements Connection::close()
+ */
+-static int tls_socket_close(struct Connection *conn)
++static int tls_starttls_close(struct Connection *conn)
+ {
+- struct TlsSockData *data = conn->sockdata;
+- if (data)
+- {
+- /* shut down only the write half to avoid hanging waiting for the remote to respond.
+- *
+- * RFC5246 7.2.1. "Closure Alerts"
+- *
+- * It is not required for the initiator of the close to wait for the
+- * responding close_notify alert before closing the read side of the
+- * connection. */
+- gnutls_bye(data->state, GNUTLS_SHUT_WR);
++ int rc;
+
+- gnutls_certificate_free_credentials(data->xcred);
+- gnutls_deinit(data->state);
+- FREE(&conn->sockdata);
+- }
++ rc = tls_socket_close(conn);
++ conn->read = raw_socket_read;
++ conn->write = raw_socket_write;
++ conn->close = raw_socket_close;
++ conn->poll = raw_socket_poll;
+
+- return raw_socket_close(conn);
++ return rc;
+ }
+
+ /**
+@@ -1261,11 +1129,11 @@ int mutt_ssl_socket_setup(struct Connection *conn)
+ if (tls_init() < 0)
+ return -1;
+
+- conn->conn_open = tls_socket_open;
+- conn->conn_read = tls_socket_read;
+- conn->conn_write = tls_socket_write;
+- conn->conn_close = tls_socket_close;
+- conn->conn_poll = tls_socket_poll;
++ conn->open = tls_socket_open;
++ conn->read = tls_socket_read;
++ conn->write = tls_socket_write;
++ conn->close = tls_socket_close;
++ conn->poll = tls_socket_poll;
+
+ return 0;
+ }
+@@ -1284,10 +1152,10 @@ int mutt_ssl_starttls(struct Connection *conn)
+ if (tls_negotiate(conn) < 0)
+ return -1;
+
+- conn->conn_read = tls_socket_read;
+- conn->conn_write = tls_socket_write;
+- conn->conn_close = tls_starttls_close;
+- conn->conn_poll = tls_socket_poll;
++ conn->read = tls_socket_read;
++ conn->write = tls_socket_write;
++ conn->close = tls_starttls_close;
++ conn->poll = tls_socket_poll;
+
+ return 0;
+ }
+diff --git a/conn/gui.c b/conn/gui.c
+new file mode 100644
+index 000000000..3e795dd09
+--- /dev/null
++++ b/conn/gui.c
+@@ -0,0 +1,183 @@
++/**
++ * @file
++ * GUI parts of Connection Library
++ *
++ * @authors
++ * Copyright (C) 2017 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page conn_gui GUI parts of Connection Library
++ *
++ * GUI parts of Connection Library
++ */
++
++#include "config.h"
++#include <stdbool.h>
++#include <stdio.h>
++#include "mutt/lib.h"
++#include "gui/lib.h"
++#include "globals.h"
++#include "keymap.h"
++#include "mutt_menu.h"
++#include "opcodes.h"
++#include "options.h"
++#include "protos.h"
++#include "ssl.h"
++
++#ifdef USE_SSL
++/**
++ * dlg_verify_cert - Ask the user to validate the certificate
++ * @param title Menu title
++ * @param list Certificate text to display
++ * @param allow_always If true, allow the user to always accept the certificate
++ * @param allow_skip If true, allow the user to skip the verification
++ * @retval 1 Reject certificate (or menu aborted)
++ * @retval 2 Accept certificate once
++ * @retval 3 Accept certificate always/skip (see notes)
++ * @retval 4 Accept certificate skip
++ *
++ * The possible retvals will depend on the parameters.
++ * The options are given in the order: Reject, Once, Always, Skip.
++ * The retval represents the chosen option.
++ */
++int dlg_verify_cert(const char *title, struct ListHead *list, bool allow_always, bool allow_skip)
++{
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "certificate";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
++ struct Menu *menu = mutt_menu_new(MENU_GENERIC);
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ mutt_menu_push_current(menu);
++
++ struct ListNode *np = NULL;
++ STAILQ_FOREACH(np, list, entries)
++ {
++ mutt_menu_add_dialog_row(menu, NONULL(np->data));
++ }
++
++ menu->title = title;
++
++ if (allow_always)
++ {
++ if (allow_skip)
++ {
++ menu->prompt = _("(r)eject, accept (o)nce, (a)ccept always, (s)kip");
++ /* L10N: The letters correspond to the choices in the string:
++ "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++ This is an interactive certificate confirmation prompt for an SSL connection. */
++ menu->keys = _("roas");
++ }
++ else
++ {
++ menu->prompt = _("(r)eject, accept (o)nce, (a)ccept always");
++ /* L10N: The letters correspond to the choices in the string:
++ "(r)eject, accept (o)nce, (a)ccept always"
++ This is an interactive certificate confirmation prompt for an SSL connection. */
++ menu->keys = _("roa");
++ }
++ }
++ else
++ {
++ if (allow_skip)
++ {
++ menu->prompt = _("(r)eject, accept (o)nce, (s)kip");
++ /* L10N: The letters correspond to the choices in the string:
++ "(r)eject, accept (o)nce, (s)kip"
++ This is an interactive certificate confirmation prompt for an SSL connection. */
++ menu->keys = _("ros");
++ }
++ else
++ {
++ menu->prompt = _("(r)eject, accept (o)nce");
++ /* L10N: The letters correspond to the choices in the string:
++ "(r)eject, accept (o)nce"
++ This is an interactive certificate confirmation prompt for an SSL connection. */
++ menu->keys = _("ro");
++ }
++ }
++
++ char buf[128] = { 0 };
++ char helpstr[1024] = { 0 };
++ mutt_make_help(buf, sizeof(buf), _("Exit "), MENU_GENERIC, OP_EXIT);
++ mutt_str_strcat(helpstr, sizeof(helpstr), buf);
++ mutt_make_help(buf, sizeof(buf), _("Help"), MENU_GENERIC, OP_HELP);
++ mutt_str_strcat(helpstr, sizeof(helpstr), buf);
++ menu->help = helpstr;
++
++ bool old_ime = OptIgnoreMacroEvents;
++ OptIgnoreMacroEvents = true;
++
++ int rc = 0;
++ while (rc == 0)
++ {
++ switch (mutt_menu_loop(menu))
++ {
++ case -1: // Abort: Ctrl-G
++ case OP_EXIT: // Q)uit
++ case OP_MAX + 1: // R)eject
++ rc = 1;
++ break;
++ case OP_MAX + 2: // O)nce
++ rc = 2;
++ break;
++ case OP_MAX + 3: // A)lways / S)kip
++ rc = 3;
++ break;
++ case OP_MAX + 4: // S)kip
++ rc = 4;
++ break;
++ }
++ }
++ OptIgnoreMacroEvents = old_ime;
++
++ mutt_menu_pop_current(menu);
++ mutt_menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
++
++ return rc;
++}
++#endif
+diff --git a/conn/conn.h b/conn/lib.h
+similarity index 79%
+rename from conn/conn.h
+rename to conn/lib.h
+index d6ca0722f..45157a298 100644
+--- a/conn/conn.h
++++ b/conn/lib.h
+@@ -27,19 +27,21 @@
+ *
+ * | File | Description |
+ * | :------------------ | :----------------------- |
++ * | conn/connaccount.c | @subpage conn_account |
+ * | conn/conn_globals.c | @subpage conn_globals |
+ * | conn/getdomain.c | @subpage conn_getdomain |
+- * | conn/conn_raw.c | @subpage conn_raw |
++ * | conn/gnutls.c | @subpage conn_gnutls |
++ * | conn/gui.c | @subpage conn_gui |
++ * | conn/openssl.c | @subpage conn_openssl |
++ * | conn/raw.c | @subpage conn_raw |
+ * | conn/sasl.c | @subpage conn_sasl |
+ * | conn/sasl_plain.c | @subpage conn_sasl_plain |
+ * | conn/socket.c | @subpage conn_socket |
+- * | conn/ssl.c | @subpage conn_ssl |
+- * | conn/ssl_gnutls.c | @subpage conn_ssl_gnutls |
+ * | conn/tunnel.c | @subpage conn_tunnel |
+ */
+
+-#ifndef MUTT_CONN_CONN_H
+-#define MUTT_CONN_CONN_H
++#ifndef MUTT_CONN_LIB_H
++#define MUTT_CONN_LIB_H
+
+ #include "config.h"
+ #include <stdio.h>
+@@ -49,13 +51,15 @@
+ #include "connection.h"
+ #include "sasl_plain.h"
+ #include "socket.h"
+-#include "ssl.h"
+-#include "tunnel.h"
+ #ifdef USE_SASL
+ #include "sasl.h"
+ #endif
+ // IWYU pragma: end_exports
+
++#ifdef USE_SSL
++int mutt_ssl_starttls(struct Connection *conn);
++#endif
++
+ int getdnsdomainname(char *buf, size_t buflen);
+
+-#endif /* MUTT_CONN_CONN_H */
++#endif /* MUTT_CONN_LIB_H */
+diff --git a/conn/ssl.c b/conn/openssl.c
+similarity index 83%
+rename from conn/ssl.c
+rename to conn/openssl.c
+index 140ab77ef..fd4b0801c 100644
+--- a/conn/ssl.c
++++ b/conn/openssl.c
+@@ -21,26 +21,25 @@
+ */
+
+ /**
+- * @page conn_ssl Handling of OpenSSL encryption
++ * @page conn_openssl Handling of OpenSSL encryption
+ *
+ * Handling of OpenSSL encryption
+ */
+
+ #include "config.h"
+ #include <errno.h>
+-#include <limits.h>
+ #include <openssl/asn1.h>
+ #include <openssl/bio.h>
+ #include <openssl/err.h>
+ #include <openssl/evp.h>
+ #include <openssl/obj_mac.h>
++#include <openssl/opensslv.h>
+ #include <openssl/ossl_typ.h>
+ #include <openssl/pem.h>
+ #include <openssl/rand.h>
++#include <openssl/safestack.h>
+ #include <openssl/ssl.h>
+-#include <openssl/ssl3.h>
+ #include <openssl/x509.h>
+-#include <openssl/x509_vfy.h>
+ #include <openssl/x509v3.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+@@ -49,32 +48,14 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "conn_private.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+-#include "email/lib.h"
+-#include "mutt.h"
+-#include "ssl.h"
+-#include "conn_globals.h"
+-#include "connaccount.h"
+-#include "connection.h"
++#include "lib.h"
+ #include "globals.h"
+-#include "keymap.h"
+-#include "mutt_account.h"
+ #include "mutt_logging.h"
+-#include "mutt_menu.h"
+-#include "muttlib.h"
+-#include "opcodes.h"
+-#include "options.h"
+-#include "protos.h"
+-#include "socket.h"
+-
+-const int dialog_row_len = 128;
+-
+-/* Just in case OpenSSL doesn't define DEV_RANDOM */
+-#ifndef DEV_RANDOM
+-#define DEV_RANDOM "/dev/urandom"
+-#endif
++#include "ssl.h"
+
+ /* LibreSSL defines OPENSSL_VERSION_NUMBER but sets it to 0x20000000L.
+ * So technically we don't need the defined(OPENSSL_VERSION_NUMBER) check. */
+@@ -93,17 +74,6 @@ const int dialog_row_len = 128;
+ #define SSL_has_pending SSL_pending
+ #endif
+
+-/* This is ugly, but as RAND_status came in on OpenSSL version 0.9.5
+- * and the code has to support older versions too, this is seemed to
+- * be cleaner way compared to having even uglier #ifdefs all around. */
+-#ifdef HAVE_RAND_STATUS
+-#define HAVE_ENTROPY() (RAND_status() == 1)
+-#else
+-static int entropy_byte_count = 0;
+-/* OpenSSL fills the entropy pool from /dev/urandom if it exists */
+-#define HAVE_ENTROPY() (!access(DEV_RANDOM, R_OK) || entropy_byte_count >= 16)
+-#endif
+-
+ /* index for storing hostname as application specific data in SSL structure */
+ static int HostExDataIndex = -1;
+
+@@ -152,7 +122,7 @@ static int ssl_load_certificates(SSL_CTX *ctx)
+ SSL_CTX_set_cert_store(ctx, store);
+ }
+
+- FILE *fp = fopen(C_CertificateFile, "rt");
++ FILE *fp = mutt_file_fopen(C_CertificateFile, "rt");
+ if (!fp)
+ return 0;
+
+@@ -250,10 +220,6 @@ static int add_entropy(const char *file)
+ if (n <= 0)
+ n = RAND_load_file(file, -1);
+
+-#ifndef HAVE_RAND_STATUS
+- if (n > 0)
+- entropy_byte_count += n;
+-#endif
+ return n;
+ }
+
+@@ -362,22 +328,21 @@ static void ssl_dprint_err_stack(void)
+ */
+ static int ssl_passwd_cb(char *buf, int buflen, int rwflag, void *userdata)
+ {
+- struct ConnAccount *account = userdata;
++ struct ConnAccount *cac = userdata;
+
+- if (mutt_account_getuser(account) < 0)
++ if (mutt_account_getuser(cac) < 0)
+ return 0;
+
+- mutt_debug(LL_DEBUG2, "getting password for %s@%s:%u\n", account->user,
+- account->host, account->port);
++ mutt_debug(LL_DEBUG2, "getting password for %s@%s:%u\n", cac->user, cac->host, cac->port);
+
+- if (mutt_account_getpass(account) < 0)
++ if (mutt_account_getpass(cac) < 0)
+ return 0;
+
+- return snprintf(buf, buflen, "%s", account->pass);
++ return snprintf(buf, buflen, "%s", cac->pass);
+ }
+
+ /**
+- * ssl_socket_open_err - Error callback for opening an SSL connection - Implements Connection::conn_open()
++ * ssl_socket_open_err - Error callback for opening an SSL connection - Implements Connection::open()
+ * @retval -1 Always
+ */
+ static int ssl_socket_open_err(struct Connection *conn)
+@@ -399,7 +364,7 @@ static char *x509_get_part(X509_NAME *name, int nid)
+ static char data[128];
+
+ if (!name || (X509_NAME_get_text_by_NID(name, nid, data, sizeof(data)) < 0))
+- mutt_str_strfcpy(data, _("Unknown"), sizeof(data));
++ return NULL;
+
+ return data;
+ }
+@@ -580,7 +545,7 @@ static int ssl_init(void)
+ if (init_complete)
+ return 0;
+
+- if (!HAVE_ENTROPY())
++ if (RAND_status() != 1)
+ {
+ /* load entropy from files */
+ struct Buffer *path = mutt_buffer_pool_get();
+@@ -600,7 +565,7 @@ static int ssl_init(void)
+ mutt_buffer_pool_release(&path);
+
+ mutt_clear_error();
+- if (!HAVE_ENTROPY())
++ if (RAND_status() != 1)
+ {
+ mutt_error(_("Failed to find enough entropy on your system"));
+ return -1;
+@@ -642,15 +607,15 @@ static void ssl_get_client_cert(struct SslSockData *ssldata, struct Connection *
+ }
+
+ /**
+- * ssl_socket_close_and_restore - Close an SSL Connection and restore Connection callbacks - Implements Connection::conn_close()
++ * ssl_socket_close_and_restore - Close an SSL Connection and restore Connection callbacks - Implements Connection::close()
+ */
+ static int ssl_socket_close_and_restore(struct Connection *conn)
+ {
+ int rc = ssl_socket_close(conn);
+- conn->conn_read = raw_socket_read;
+- conn->conn_write = raw_socket_write;
+- conn->conn_close = raw_socket_close;
+- conn->conn_poll = raw_socket_poll;
++ conn->read = raw_socket_read;
++ conn->write = raw_socket_write;
++ conn->close = raw_socket_close;
++ conn->poll = raw_socket_poll;
+
+ return rc;
+ }
+@@ -700,7 +665,7 @@ static bool check_certificate_file(X509 *peercert)
+ if (!C_CertificateFile)
+ return false;
+
+- fp = fopen(C_CertificateFile, "rt");
++ fp = mutt_file_fopen(C_CertificateFile, "rt");
+ if (!fp)
+ return false;
+
+@@ -865,6 +830,47 @@ static int ssl_cache_trusted_cert(X509 *c)
+ return sk_X509_push(SslSessionCerts, X509_dup(c));
+ }
+
++/**
++ * add_cert - Look up certificate info and save it to a list
++ * @param title Title for this block of certificate info
++ * @param cert Certificate
++ * @param issuer If true, look up the issuer rather than owner details
++ * @param list List to save info to
++ */
++static void add_cert(const char *title, X509 *cert, bool issuer, struct ListHead *list)
++{
++ static const int part[] = {
++ NID_commonName, // CN
++ NID_pkcs9_emailAddress, // Email
++ NID_organizationName, // O
++ NID_organizationalUnitName, // OU
++ NID_localityName, // L
++ NID_stateOrProvinceName, // ST
++ NID_countryName, // C
++ };
++
++ X509_NAME *x509 = NULL;
++ if (issuer)
++ x509 = X509_get_issuer_name(cert);
++ else
++ x509 = X509_get_subject_name(cert);
++
++ // Allocate formatted strings and let the ListHead take ownership
++ mutt_list_insert_tail(list, mutt_str_strdup(title));
++
++ char *line = NULL;
++ char *text = NULL;
++ for (size_t i = 0; i < mutt_array_size(part); i++)
++ {
++ text = x509_get_part(x509, part[i]);
++ if (text)
++ {
++ mutt_str_asprintf(&line, " %s", text);
++ mutt_list_insert_tail(list, line);
++ }
++ }
++}
++
+ /**
+ * interactive_check_cert - Ask the user if a certificate is valid
+ * @param cert Certificate
+@@ -877,79 +883,47 @@ static int ssl_cache_trusted_cert(X509 *c)
+ */
+ static bool interactive_check_cert(X509 *cert, int idx, size_t len, SSL *ssl, bool allow_always)
+ {
+- static const int part[] = {
+- NID_commonName, /* CN */
+- NID_pkcs9_emailAddress, /* Email */
+- NID_organizationName, /* O */
+- NID_organizationalUnitName, /* OU */
+- NID_localityName, /* L */
+- NID_stateOrProvinceName, /* ST */
+- NID_countryName, /* C */
+- };
+- X509_NAME *x509_subject = NULL;
+- X509_NAME *x509_issuer = NULL;
+- char helpstr[1024];
+ char buf[256];
+- char title[256];
+- struct Menu *menu = mutt_menu_new(MENU_GENERIC);
+- int done;
+- FILE *fp = NULL;
+- int ALLOW_SKIP = 0; /* All caps tells Coverity that this is effectively a preproc condition */
+- bool reset_ignoremacro = false;
++ struct ListHead list = STAILQ_HEAD_INITIALIZER(list);
+
+- mutt_menu_push_current(menu);
++ add_cert(_("This certificate belongs to:"), cert, false, &list);
++ mutt_list_insert_tail(&list, NULL);
++ add_cert(_("This certificate was issued by:"), cert, true, &list);
+
+- struct Buffer *drow = mutt_buffer_pool_get();
++ char *line = NULL;
++ mutt_list_insert_tail(&list, NULL);
++ mutt_list_insert_tail(&list, mutt_str_strdup(_("This certificate is valid")));
++ mutt_str_asprintf(&line, _(" from %s"), asn1time_to_string(X509_getm_notBefore(cert)));
++ mutt_list_insert_tail(&list, line);
++ mutt_str_asprintf(&line, _(" to %s"), asn1time_to_string(X509_getm_notAfter(cert)));
++ mutt_list_insert_tail(&list, line);
+
+- mutt_menu_add_dialog_row(menu, _("This certificate belongs to:"));
+- x509_subject = X509_get_subject_name(cert);
+- for (unsigned int u = 0; u < mutt_array_size(part); u++)
+- {
+- mutt_buffer_printf(drow, " %s", x509_get_part(x509_subject, part[u]));
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- }
+-
+- mutt_menu_add_dialog_row(menu, "");
+- mutt_menu_add_dialog_row(menu, _("This certificate was issued by:"));
+- x509_issuer = X509_get_issuer_name(cert);
+- for (unsigned int u = 0; u < mutt_array_size(part); u++)
+- {
+- mutt_buffer_printf(drow, " %s", x509_get_part(x509_issuer, part[u]));
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- }
+-
+- mutt_menu_add_dialog_row(menu, "");
+- mutt_menu_add_dialog_row(menu, _("This certificate is valid"));
+- mutt_buffer_printf(drow, _(" from %s"), asn1time_to_string(X509_getm_notBefore(cert)));
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, _(" to %s"), asn1time_to_string(X509_getm_notAfter(cert)));
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+-
+- mutt_menu_add_dialog_row(menu, "");
++ mutt_list_insert_tail(&list, NULL);
+ buf[0] = '\0';
+ x509_fingerprint(buf, sizeof(buf), cert, EVP_sha1);
+- mutt_buffer_printf(drow, _("SHA1 Fingerprint: %s"), buf);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
++ mutt_str_asprintf(&line, _("SHA1 Fingerprint: %s"), buf);
++ mutt_list_insert_tail(&list, line);
+ buf[0] = '\0';
+ buf[40] = '\0'; /* Ensure the second printed line is null terminated */
+ x509_fingerprint(buf, sizeof(buf), cert, EVP_sha256);
+ buf[39] = '\0'; /* Divide into two lines of output */
+- mutt_buffer_printf(drow, "%s%s", _("SHA256 Fingerprint: "), buf);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+- mutt_buffer_printf(drow, "%*s%s",
+- (int) mutt_str_strlen(_("SHA256 Fingerprint: ")), "", buf + 40);
+- mutt_menu_add_dialog_row(menu, mutt_b2s(drow));
+-
+- snprintf(title, sizeof(title),
+- _("SSL Certificate check (certificate %zu of %zu in chain)"), len - idx, len);
+- menu->title = title;
++ mutt_str_asprintf(&line, "%s%s", _("SHA256 Fingerprint: "), buf);
++ mutt_list_insert_tail(&list, line);
++ mutt_str_asprintf(&line, "%*s%s",
++ (int) mutt_str_strlen(_("SHA256 Fingerprint: ")), "", buf + 40);
++ mutt_list_insert_tail(&list, line);
+
++ bool allow_skip = false;
+ /* The leaf/host certificate can't be skipped. */
+ #ifdef HAVE_SSL_PARTIAL_CHAIN
+ if ((idx != 0) && C_SslVerifyPartialChains)
+- ALLOW_SKIP = 1;
++ allow_skip = true;
+ #endif
+
++ char title[256];
++ snprintf(title, sizeof(title),
++ _("SSL Certificate check (certificate %zu of %zu in chain)"), len - idx, len);
++
+ /* Inside ssl_verify_callback(), this function is guarded by a call to
+ * check_certificate_by_digest(). This means if check_certificate_expiration() is
+ * true, then check_certificate_file() must be false. Therefore we don't need
+@@ -957,91 +931,45 @@ static bool interactive_check_cert(X509 *cert, int idx, size_t len, SSL *ssl, bo
+ allow_always = allow_always && C_CertificateFile &&
+ check_certificate_expiration(cert, true);
+
+- /* L10N: These four letters correspond to the choices in the next four strings:
+- (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+- These prompts are the interactive certificate confirmation prompts for
+- an OpenSSL connection. */
+- menu->keys = _("roas");
+- if (allow_always)
+- {
+- if (ALLOW_SKIP)
+- menu->prompt = _("(r)eject, accept (o)nce, (a)ccept always, (s)kip");
+- else
+- menu->prompt = _("(r)eject, accept (o)nce, (a)ccept always");
+- }
+- else
+- {
+- if (ALLOW_SKIP)
+- menu->prompt = _("(r)eject, accept (o)nce, (s)kip");
+- else
+- menu->prompt = _("(r)eject, accept (o)nce");
+- }
++ int rc = dlg_verify_cert(title, &list, allow_always, allow_skip);
++ if ((rc == 3) && !allow_always)
++ rc = 4;
+
+- helpstr[0] = '\0';
+- mutt_make_help(buf, sizeof(buf), _("Exit "), MENU_GENERIC, OP_EXIT);
+- mutt_str_strcat(helpstr, sizeof(helpstr), buf);
+- mutt_make_help(buf, sizeof(buf), _("Help"), MENU_GENERIC, OP_HELP);
+- mutt_str_strcat(helpstr, sizeof(helpstr), buf);
+- menu->help = helpstr;
+-
+- if (!OptIgnoreMacroEvents)
++ switch (rc)
+ {
+- OptIgnoreMacroEvents = true;
+- reset_ignoremacro = true;
+- }
+-
+- done = 0;
+- while (done == 0)
+- {
+- switch (mutt_menu_loop(menu))
++ case 1: // Reject
++ break;
++ case 2: // Once
++ SSL_set_ex_data(ssl, SkipModeExDataIndex, NULL);
++ ssl_cache_trusted_cert(cert);
++ break;
++ case 3: // Always
+ {
+- case -1: /* abort */
+- case OP_MAX + 1: /* reject */
+- case OP_EXIT:
+- done = 1;
+- break;
+- case OP_MAX + 3: /* accept always */
+- if (!allow_always)
+- break;
+- done = 0;
+- fp = fopen(C_CertificateFile, "a");
+- if (fp)
+- {
+- if (PEM_write_X509(fp, cert))
+- done = 1;
+- mutt_file_fclose(&fp);
+- }
+- if (done == 0)
+- {
+- mutt_error(_("Warning: Couldn't save certificate"));
+- }
+- else
+- {
+- mutt_message(_("Certificate saved"));
+- mutt_sleep(0);
+- }
+- /* fallthrough */
+- case OP_MAX + 2: /* accept once */
+- done = 2;
+- SSL_set_ex_data(ssl, SkipModeExDataIndex, NULL);
+- ssl_cache_trusted_cert(cert);
+- break;
+- case OP_MAX + 4: /* skip */
+- if (!ALLOW_SKIP)
+- break;
+- done = 2;
+- SSL_set_ex_data(ssl, SkipModeExDataIndex, &SkipModeExDataIndex);
+- break;
++ bool saved = false;
++ FILE *fp = mutt_file_fopen(C_CertificateFile, "a");
++ if (fp)
++ {
++ if (PEM_write_X509(fp, cert))
++ saved = true;
++ mutt_file_fclose(&fp);
++ }
++
++ if (saved)
++ mutt_message(_("Certificate saved"));
++ else
++ mutt_error(_("Warning: Couldn't save certificate"));
++
++ SSL_set_ex_data(ssl, SkipModeExDataIndex, NULL);
++ ssl_cache_trusted_cert(cert);
++ break;
+ }
++ case 4: // Skip
++ SSL_set_ex_data(ssl, SkipModeExDataIndex, &SkipModeExDataIndex);
++ break;
+ }
+- if (reset_ignoremacro)
+- OptIgnoreMacroEvents = false;
+-
+- mutt_buffer_pool_release(&drow);
+- mutt_menu_pop_current(menu);
+- mutt_menu_free(&menu);
+- mutt_debug(LL_DEBUG2, "done=%d\n", done);
+- return done == 2;
++
++ mutt_list_free(&list);
++ return (rc > 1);
+ }
+
+ /**
+@@ -1346,10 +1274,13 @@ static int ssl_setup(struct Connection *conn)
+ }
+
+ /**
+- * ssl_socket_poll - Check whether a socket read would block - Implements Connection::conn_poll()
++ * ssl_socket_poll - Check whether a socket read would block - Implements Connection::poll()
+ */
+ static int ssl_socket_poll(struct Connection *conn, time_t wait_secs)
+ {
++ if (!conn)
++ return -1;
++
+ if (SSL_has_pending(sockdata(conn)->ssl))
+ return 1;
+
+@@ -1357,7 +1288,7 @@ static int ssl_socket_poll(struct Connection *conn, time_t wait_secs)
+ }
+
+ /**
+- * ssl_socket_open - Open an SSL socket - Implements Connection::conn_open()
++ * ssl_socket_open - Open an SSL socket - Implements Connection::open()
+ */
+ static int ssl_socket_open(struct Connection *conn)
+ {
+@@ -1372,7 +1303,7 @@ static int ssl_socket_open(struct Connection *conn)
+ }
+
+ /**
+- * ssl_socket_read - Read data from an SSL socket - Implements Connection::conn_read()
++ * ssl_socket_read - Read data from an SSL socket - Implements Connection::read()
+ */
+ static int ssl_socket_read(struct Connection *conn, char *buf, size_t count)
+ {
+@@ -1394,7 +1325,7 @@ static int ssl_socket_read(struct Connection *conn, char *buf, size_t count)
+ }
+
+ /**
+- * ssl_socket_write - Write data to an SSL socket - Implements Connection::conn_write()
++ * ssl_socket_write - Write data to an SSL socket - Implements Connection::write()
+ */
+ static int ssl_socket_write(struct Connection *conn, const char *buf, size_t count)
+ {
+@@ -1415,7 +1346,7 @@ static int ssl_socket_write(struct Connection *conn, const char *buf, size_t cou
+ }
+
+ /**
+- * ssl_socket_close - Close an SSL connection - Implements Connection::conn_close()
++ * ssl_socket_close - Close an SSL connection - Implements Connection::close()
+ */
+ static int ssl_socket_close(struct Connection *conn)
+ {
+@@ -1450,10 +1381,10 @@ int mutt_ssl_starttls(struct Connection *conn)
+ int rc = ssl_setup(conn);
+
+ /* hmm. watch out if we're starting TLS over any method other than raw. */
+- conn->conn_read = ssl_socket_read;
+- conn->conn_write = ssl_socket_write;
+- conn->conn_close = ssl_socket_close_and_restore;
+- conn->conn_poll = ssl_socket_poll;
++ conn->read = ssl_socket_read;
++ conn->write = ssl_socket_write;
++ conn->close = ssl_socket_close_and_restore;
++ conn->poll = ssl_socket_poll;
+
+ return rc;
+ }
+@@ -1468,15 +1399,15 @@ int mutt_ssl_socket_setup(struct Connection *conn)
+ {
+ if (ssl_init() < 0)
+ {
+- conn->conn_open = ssl_socket_open_err;
++ conn->open = ssl_socket_open_err;
+ return -1;
+ }
+
+- conn->conn_open = ssl_socket_open;
+- conn->conn_read = ssl_socket_read;
+- conn->conn_write = ssl_socket_write;
+- conn->conn_poll = ssl_socket_poll;
+- conn->conn_close = ssl_socket_close;
++ conn->open = ssl_socket_open;
++ conn->read = ssl_socket_read;
++ conn->write = ssl_socket_write;
++ conn->poll = ssl_socket_poll;
++ conn->close = ssl_socket_close;
+
+ return 0;
+ }
+diff --git a/conn/conn_raw.c b/conn/raw.c
+similarity index 93%
+rename from conn/conn_raw.c
+rename to conn/raw.c
+index e2d7aeab0..9189ca2a5 100644
+--- a/conn/conn_raw.c
++++ b/conn/raw.c
+@@ -42,11 +42,12 @@
+ #include <sys/time.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "conn_private.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #include "conn_globals.h"
+ #include "connaccount.h"
+ #include "connection.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "options.h"
+ #include "socket.h" // IWYU pragma: keep
+@@ -91,7 +92,7 @@ static int socket_connect(int fd, struct sockaddr *sa)
+ if (C_ConnectTimeout > 0)
+ alarm(C_ConnectTimeout);
+
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+
+ /* FreeBSD's connect() does not respect SA_RESTART, meaning
+ * a SIGWINCH will cause the connect to fail. */
+@@ -110,14 +111,14 @@ static int socket_connect(int fd, struct sockaddr *sa)
+
+ if (C_ConnectTimeout > 0)
+ alarm(0);
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+ sigprocmask(SIG_UNBLOCK, &set, NULL);
+
+ return save_errno;
+ }
+
+ /**
+- * raw_socket_open - Open a socket - Implements Connection::conn_open()
++ * raw_socket_open - Open a socket - Implements Connection::open()
+ */
+ int raw_socket_open(struct Connection *conn)
+ {
+@@ -265,13 +266,13 @@ int raw_socket_open(struct Connection *conn)
+ }
+
+ /**
+- * raw_socket_read - Read data from a socket - Implements Connection::conn_read()
++ * raw_socket_read - Read data from a socket - Implements Connection::read()
+ */
+ int raw_socket_read(struct Connection *conn, char *buf, size_t count)
+ {
+ int rc;
+
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+ do
+ {
+ rc = read(conn->fd, buf, count);
+@@ -282,7 +283,7 @@ int raw_socket_read(struct Connection *conn, char *buf, size_t count)
+ mutt_error(_("Error talking to %s (%s)"), conn->account.host, strerror(errno));
+ SigInt = 0;
+ }
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+
+ if (SigInt)
+ {
+@@ -295,14 +296,14 @@ int raw_socket_read(struct Connection *conn, char *buf, size_t count)
+ }
+
+ /**
+- * raw_socket_write - Write data to a socket - Implements Connection::conn_write()
++ * raw_socket_write - Write data to a socket - Implements Connection::write()
+ */
+ int raw_socket_write(struct Connection *conn, const char *buf, size_t count)
+ {
+ int rc;
+ size_t sent = 0;
+
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+ do
+ {
+ do
+@@ -313,19 +314,19 @@ int raw_socket_write(struct Connection *conn, const char *buf, size_t count)
+ if (rc < 0)
+ {
+ mutt_error(_("Error talking to %s (%s)"), conn->account.host, strerror(errno));
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+ return -1;
+ }
+
+ sent += rc;
+ } while ((sent < count) && (SigInt == 0));
+
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+ return sent;
+ }
+
+ /**
+- * raw_socket_poll - Checks whether reads would block - Implements Connection::conn_poll()
++ * raw_socket_poll - Checks whether reads would block - Implements Connection::poll()
+ */
+ int raw_socket_poll(struct Connection *conn, time_t wait_secs)
+ {
+@@ -364,7 +365,7 @@ int raw_socket_poll(struct Connection *conn, time_t wait_secs)
+ }
+
+ /**
+- * raw_socket_close - Close a socket - Implements Connection::conn_close()
++ * raw_socket_close - Close a socket - Implements Connection::close()
+ */
+ int raw_socket_close(struct Connection *conn)
+ {
+diff --git a/conn/sasl.c b/conn/sasl.c
+index 1f3606c72..b259830d4 100644
+--- a/conn/sasl.c
++++ b/conn/sasl.c
+@@ -46,14 +46,56 @@
+ #include <string.h>
+ #include <sys/socket.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
++#include "mutt.h"
+ #include "sasl.h"
+ #include "connaccount.h"
+ #include "connection.h"
+-#include "curs_lib.h"
+-#include "mutt_account.h"
+ #include "options.h"
+
++/**
++ * struct SaslSockData - SASL authentication API
++ */
++struct SaslSockData
++{
++ sasl_conn_t *saslconn;
++ const sasl_ssf_t *ssf;
++ const unsigned int *pbufsize;
++
++ /* read buffer */
++ const char *buf;
++ unsigned int blen;
++ unsigned int bpos;
++
++ void *sockdata; ///< Underlying socket data
++
++ /**
++ * open - Open a socket Connection - Implements Connection::open()
++ */
++ int (*open)(struct Connection *conn);
++
++ /**
++ * read - Read from a socket Connection - Implements Connection::read()
++ */
++ int (*read)(struct Connection *conn, char *buf, size_t count);
++
++ /**
++ * write - Write to a socket Connection - Implements Connection::write()
++ */
++ int (*write)(struct Connection *conn, const char *buf, size_t count);
++
++ /**
++ * poll - Check whether a socket read would block - Implements Connection::poll()
++ */
++ int (*poll)(struct Connection *conn, time_t wait_secs);
++
++ /**
++ * close - Close a socket Connection - Implements Connection::close()
++ */
++ int (*close)(struct Connection *conn);
++};
++
+ /* arbitrary. SASL will probably use a smaller buffer anyway. OTOH it's
+ * been a while since I've had access to an SASL server which negotiated
+ * a protection buffer. */
+@@ -247,30 +289,29 @@ static int mutt_sasl_cb_authname(void *context, int id, const char **result, uns
+ if (!result)
+ return SASL_FAIL;
+
+- struct ConnAccount *account = context;
++ struct ConnAccount *cac = context;
+
+ *result = NULL;
+ if (len)
+ *len = 0;
+
+- if (!account)
++ if (!cac)
+ return SASL_BADPARAM;
+
+ mutt_debug(LL_DEBUG2, "getting %s for %s:%u\n",
+- (id == SASL_CB_AUTHNAME) ? "authname" : "user", account->host,
+- account->port);
++ (id == SASL_CB_AUTHNAME) ? "authname" : "user", cac->host, cac->port);
+
+ if (id == SASL_CB_AUTHNAME)
+ {
+- if (mutt_account_getlogin(account) < 0)
++ if (mutt_account_getlogin(cac) < 0)
+ return SASL_FAIL;
+- *result = account->login;
++ *result = cac->login;
+ }
+ else
+ {
+- if (mutt_account_getuser(account) < 0)
++ if (mutt_account_getuser(cac) < 0)
+ return SASL_FAIL;
+- *result = account->user;
++ *result = cac->user;
+ }
+
+ if (len)
+@@ -289,22 +330,21 @@ static int mutt_sasl_cb_authname(void *context, int id, const char **result, uns
+ */
+ static int mutt_sasl_cb_pass(sasl_conn_t *conn, void *context, int id, sasl_secret_t **psecret)
+ {
+- struct ConnAccount *account = context;
++ struct ConnAccount *cac = context;
+ int len;
+
+- if (!account || !psecret)
++ if (!cac || !psecret)
+ return SASL_BADPARAM;
+
+- mutt_debug(LL_DEBUG2, "getting password for %s@%s:%u\n", account->login,
+- account->host, account->port);
++ mutt_debug(LL_DEBUG2, "getting password for %s@%s:%u\n", cac->login, cac->host, cac->port);
+
+- if (mutt_account_getpass(account) < 0)
++ if (mutt_account_getpass(cac) < 0)
+ return SASL_FAIL;
+
+- len = strlen(account->pass);
++ len = strlen(cac->pass);
+
+ mutt_mem_realloc(&secret_ptr, sizeof(sasl_secret_t) + len);
+- memcpy((char *) secret_ptr->data, account->pass, (size_t) len);
++ memcpy((char *) secret_ptr->data, cac->pass, (size_t) len);
+ secret_ptr->len = len;
+ *psecret = secret_ptr;
+
+@@ -313,26 +353,26 @@ static int mutt_sasl_cb_pass(sasl_conn_t *conn, void *context, int id, sasl_secr
+
+ /**
+ * mutt_sasl_get_callbacks - Get the SASL callback functions
+- * @param account ConnAccount to associate with callbacks
++ * @param cac ConnAccount to associate with callbacks
+ * @retval ptr Array of callback functions
+ */
+-static sasl_callback_t *mutt_sasl_get_callbacks(struct ConnAccount *account)
++static sasl_callback_t *mutt_sasl_get_callbacks(struct ConnAccount *cac)
+ {
+ sasl_callback_t *callback = MuttSaslCallbacks;
+
+ callback->id = SASL_CB_USER;
+ callback->proc = (int (*)(void)) mutt_sasl_cb_authname;
+- callback->context = account;
++ callback->context = cac;
+ callback++;
+
+ callback->id = SASL_CB_AUTHNAME;
+ callback->proc = (int (*)(void)) mutt_sasl_cb_authname;
+- callback->context = account;
++ callback->context = cac;
+ callback++;
+
+ callback->id = SASL_CB_PASS;
+ callback->proc = (int (*)(void)) mutt_sasl_cb_pass;
+- callback->context = account;
++ callback->context = cac;
+ callback++;
+
+ callback->id = SASL_CB_GETREALM;
+@@ -348,7 +388,7 @@ static sasl_callback_t *mutt_sasl_get_callbacks(struct ConnAccount *account)
+ }
+
+ /**
+- * mutt_sasl_conn_open - empty wrapper for underlying open function - Implements Connection::conn_open()
++ * mutt_sasl_conn_open - empty wrapper for underlying open function - Implements Connection::open()
+ *
+ * We don't know in advance that a connection will use SASL, so we replace
+ * conn's methods with sasl methods when authentication is successful, using
+@@ -358,14 +398,14 @@ static int mutt_sasl_conn_open(struct Connection *conn)
+ {
+ struct SaslSockData *sasldata = conn->sockdata;
+ conn->sockdata = sasldata->sockdata;
+- int rc = (sasldata->msasl_open)(conn);
++ int rc = sasldata->open(conn);
+ conn->sockdata = sasldata;
+
+ return rc;
+ }
+
+ /**
+- * mutt_sasl_conn_close - close SASL connection - Implements Connection::conn_close()
++ * mutt_sasl_conn_close - close SASL connection - Implements Connection::close()
+ *
+ * Calls underlying close function and disposes of the sasl_conn_t object, then
+ * restores connection to pre-sasl state
+@@ -376,24 +416,24 @@ static int mutt_sasl_conn_close(struct Connection *conn)
+
+ /* restore connection's underlying methods */
+ conn->sockdata = sasldata->sockdata;
+- conn->conn_open = sasldata->msasl_open;
+- conn->conn_read = sasldata->msasl_read;
+- conn->conn_write = sasldata->msasl_write;
+- conn->conn_poll = sasldata->msasl_poll;
+- conn->conn_close = sasldata->msasl_close;
++ conn->open = sasldata->open;
++ conn->read = sasldata->read;
++ conn->write = sasldata->write;
++ conn->poll = sasldata->poll;
++ conn->close = sasldata->close;
+
+ /* release sasl resources */
+ sasl_dispose(&sasldata->saslconn);
+ FREE(&sasldata);
+
+ /* call underlying close */
+- int rc = (conn->conn_close)(conn);
++ int rc = conn->close(conn);
+
+ return rc;
+ }
+
+ /**
+- * mutt_sasl_conn_read - Read data from an SASL connection - Implements Connection::conn_read()
++ * mutt_sasl_conn_read - Read data from an SASL connection - Implements Connection::read()
+ */
+ static int mutt_sasl_conn_read(struct Connection *conn, char *buf, size_t count)
+ {
+@@ -426,7 +466,7 @@ static int mutt_sasl_conn_read(struct Connection *conn, char *buf, size_t count)
+ do
+ {
+ /* call the underlying read function to fill the buffer */
+- rc = (sasldata->msasl_read)(conn, buf, count);
++ rc = sasldata->read(conn, buf, count);
+ if (rc <= 0)
+ goto out;
+
+@@ -448,7 +488,7 @@ static int mutt_sasl_conn_read(struct Connection *conn, char *buf, size_t count)
+ rc = olen;
+ }
+ else
+- rc = (sasldata->msasl_read)(conn, buf, count);
++ rc = sasldata->read(conn, buf, count);
+
+ out:
+ conn->sockdata = sasldata;
+@@ -457,7 +497,7 @@ static int mutt_sasl_conn_read(struct Connection *conn, char *buf, size_t count)
+ }
+
+ /**
+- * mutt_sasl_conn_write - Write to an SASL connection - Implements Connection::conn_write()
++ * mutt_sasl_conn_write - Write to an SASL connection - Implements Connection::write()
+ */
+ static int mutt_sasl_conn_write(struct Connection *conn, const char *buf, size_t count)
+ {
+@@ -483,7 +523,7 @@ static int mutt_sasl_conn_write(struct Connection *conn, const char *buf, size_t
+ goto fail;
+ }
+
+- rc = (sasldata->msasl_write)(conn, pbuf, plen);
++ rc = sasldata->write(conn, pbuf, plen);
+ if (rc != plen)
+ goto fail;
+
+@@ -494,7 +534,7 @@ static int mutt_sasl_conn_write(struct Connection *conn, const char *buf, size_t
+ else
+ {
+ /* just write using the underlying socket function */
+- rc = (sasldata->msasl_write)(conn, buf, count);
++ rc = sasldata->write(conn, buf, count);
+ }
+
+ conn->sockdata = sasldata;
+@@ -507,7 +547,7 @@ static int mutt_sasl_conn_write(struct Connection *conn, const char *buf, size_t
+ }
+
+ /**
+- * mutt_sasl_conn_poll - Check an SASL connection for data - Implements Connection::conn_poll()
++ * mutt_sasl_conn_poll - Check an SASL connection for data - Implements Connection::poll()
+ */
+ static int mutt_sasl_conn_poll(struct Connection *conn, time_t wait_secs)
+ {
+@@ -515,14 +555,14 @@ static int mutt_sasl_conn_poll(struct Connection *conn, time_t wait_secs)
+ int rc;
+
+ conn->sockdata = sasldata->sockdata;
+- rc = sasldata->msasl_poll(conn, wait_secs);
++ rc = sasldata->poll(conn, wait_secs);
+ conn->sockdata = sasldata;
+
+ return rc;
+ }
+
+ /**
+- * mutt_sasl_client_new - wrapper for sasl_client_new
++ * mutt_sasl_client_new - Wrapper for sasl_client_new()
+ * @param[in] conn Connection to a server
+ * @param[out] saslconn SASL connection
+ * @retval 0 Success
+@@ -539,31 +579,15 @@ int mutt_sasl_client_new(struct Connection *conn, sasl_conn_t **saslconn)
+ char iplocalport[IP_PORT_BUFLEN], ipremoteport[IP_PORT_BUFLEN];
+ char *plp = NULL;
+ char *prp = NULL;
+- const char *service = NULL;
+ int rc;
+
+ if (mutt_sasl_start() != SASL_OK)
+ return -1;
+
+- switch (conn->account.type)
++ if (!conn->account.service)
+ {
+- case MUTT_ACCT_TYPE_IMAP:
+- service = "imap";
+- break;
+- case MUTT_ACCT_TYPE_POP:
+- service = "pop";
+- break;
+- case MUTT_ACCT_TYPE_SMTP:
+- service = "smtp";
+- break;
+-#ifdef USE_NNTP
+- case MUTT_ACCT_TYPE_NNTP:
+- service = "nntp";
+- break;
+-#endif
+- default:
+- mutt_error(_("Unknown SASL profile"));
+- return -1;
++ mutt_error(_("Unknown SASL profile"));
++ return -1;
+ }
+
+ size = sizeof(local);
+@@ -590,7 +614,7 @@ int mutt_sasl_client_new(struct Connection *conn, sasl_conn_t **saslconn)
+
+ mutt_debug(LL_DEBUG2, "SASL local ip: %s, remote ip:%s\n", NONULL(plp), NONULL(prp));
+
+- rc = sasl_client_new(service, conn->account.host, plp, prp,
++ rc = sasl_client_new(conn->account.service, conn->account.host, plp, prp,
+ mutt_sasl_get_callbacks(&conn->account), 0, saslconn);
+
+ if (rc != SASL_OK)
+@@ -653,7 +677,7 @@ int mutt_sasl_interact(sasl_interact_t *interaction)
+
+ snprintf(prompt, sizeof(prompt), "%s: ", interaction->prompt);
+ resp[0] = '\0';
+- if (OptNoCurses || mutt_get_field(prompt, resp, sizeof(resp), 0))
++ if (OptNoCurses || mutt_get_field(prompt, resp, sizeof(resp), MUTT_COMP_NO_FLAGS))
+ return SASL_FAIL;
+
+ interaction->len = mutt_str_strlen(resp) + 1;
+@@ -699,19 +723,19 @@ void mutt_sasl_setup_conn(struct Connection *conn, sasl_conn_t *saslconn)
+
+ /* preserve old functions */
+ sasldata->sockdata = conn->sockdata;
+- sasldata->msasl_open = conn->conn_open;
+- sasldata->msasl_read = conn->conn_read;
+- sasldata->msasl_write = conn->conn_write;
+- sasldata->msasl_poll = conn->conn_poll;
+- sasldata->msasl_close = conn->conn_close;
++ sasldata->open = conn->open;
++ sasldata->read = conn->read;
++ sasldata->write = conn->write;
++ sasldata->poll = conn->poll;
++ sasldata->close = conn->close;
+
+ /* and set up new functions */
+ conn->sockdata = sasldata;
+- conn->conn_open = mutt_sasl_conn_open;
+- conn->conn_read = mutt_sasl_conn_read;
+- conn->conn_write = mutt_sasl_conn_write;
+- conn->conn_poll = mutt_sasl_conn_poll;
+- conn->conn_close = mutt_sasl_conn_close;
++ conn->open = mutt_sasl_conn_open;
++ conn->read = mutt_sasl_conn_read;
++ conn->write = mutt_sasl_conn_write;
++ conn->poll = mutt_sasl_conn_poll;
++ conn->close = mutt_sasl_conn_close;
+ }
+
+ /**
+diff --git a/conn/sasl.h b/conn/sasl.h
+index 3dd738857..f7de9bee3 100644
+--- a/conn/sasl.h
++++ b/conn/sasl.h
+@@ -27,36 +27,13 @@
+
+ #include <stddef.h>
+ #include <sasl/sasl.h>
+-#include <time.h>
++#include <sys/types.h>
+
+ struct Connection;
+
+-int mutt_sasl_client_new(struct Connection *conn, sasl_conn_t **saslconn);
+-int mutt_sasl_interact(sasl_interact_t *interaction);
++int mutt_sasl_client_new(struct Connection *conn, sasl_conn_t **saslconn);
++void mutt_sasl_done (void);
++int mutt_sasl_interact (sasl_interact_t *interaction);
+ void mutt_sasl_setup_conn(struct Connection *conn, sasl_conn_t *saslconn);
+-void mutt_sasl_done(void);
+-
+-/**
+- * struct SaslSockData - SASL authentication API
+- */
+-struct SaslSockData
+-{
+- sasl_conn_t *saslconn;
+- const sasl_ssf_t *ssf;
+- const unsigned int *pbufsize;
+-
+- /* read buffer */
+- const char *buf;
+- unsigned int blen;
+- unsigned int bpos;
+-
+- /* underlying socket data */
+- void *sockdata;
+- int (*msasl_open) (struct Connection *conn);
+- int (*msasl_close)(struct Connection *conn);
+- int (*msasl_read) (struct Connection *conn, char *buf, size_t len);
+- int (*msasl_write)(struct Connection *conn, const char *buf, size_t count);
+- int (*msasl_poll) (struct Connection *conn, time_t wait_secs);
+-};
+
+ #endif /* MUTT_CONN_SASL_H */
+diff --git a/conn/sasl_plain.c b/conn/sasl_plain.c
+index 06be8de70..9821b1f8d 100644
+--- a/conn/sasl_plain.c
++++ b/conn/sasl_plain.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "sasl_plain.h"
+
+ /**
+diff --git a/conn/socket.c b/conn/socket.c
+index 6520ebbc5..eca69c317 100644
+--- a/conn/socket.c
++++ b/conn/socket.c
+@@ -32,14 +32,14 @@
+ #include <errno.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "conn_private.h"
++#include "mutt/lib.h"
+ #include "socket.h"
+ #include "conn_globals.h"
+ #include "connaccount.h"
+ #include "connection.h"
+ #include "protos.h"
+ #include "ssl.h"
+-#include "tunnel.h"
+
+ /**
+ * socket_preconnect - Execute a command before opening a socket
+@@ -78,7 +78,7 @@ int mutt_socket_open(struct Connection *conn)
+ if (socket_preconnect())
+ return -1;
+
+- rc = conn->conn_open(conn);
++ rc = conn->open(conn);
+
+ mutt_debug(LL_DEBUG2, "Connected to %s:%d on fd=%d\n", conn->account.host,
+ conn->account.port, conn->fd);
+@@ -102,7 +102,7 @@ int mutt_socket_close(struct Connection *conn)
+ if (conn->fd < 0)
+ mutt_debug(LL_DEBUG1, "Attempt to close closed connection\n");
+ else
+- rc = conn->conn_close(conn);
++ rc = conn->close(conn);
+
+ conn->fd = -1;
+ conn->ssf = 0;
+@@ -122,7 +122,7 @@ int mutt_socket_close(struct Connection *conn)
+ */
+ int mutt_socket_read(struct Connection *conn, char *buf, size_t len)
+ {
+- return conn->conn_read(conn, buf, len);
++ return conn->read(conn, buf, len);
+ }
+
+ /**
+@@ -135,7 +135,7 @@ int mutt_socket_read(struct Connection *conn, char *buf, size_t len)
+ */
+ int mutt_socket_write(struct Connection *conn, const char *buf, size_t len)
+ {
+- return conn->conn_write(conn, buf, len);
++ return conn->write(conn, buf, len);
+ }
+
+ /**
+@@ -161,7 +161,7 @@ int mutt_socket_write_d(struct Connection *conn, const char *buf, int len, int d
+
+ while (sent < len)
+ {
+- const int rc = conn->conn_write(conn, buf + sent, len - sent);
++ const int rc = conn->write(conn, buf + sent, len - sent);
+ if (rc < 0)
+ {
+ mutt_debug(LL_DEBUG1, "error writing (%s), closing socket\n", strerror(errno));
+@@ -192,8 +192,8 @@ int mutt_socket_poll(struct Connection *conn, time_t wait_secs)
+ if (conn->bufpos < conn->available)
+ return conn->available - conn->bufpos;
+
+- if (conn->conn_poll)
+- return conn->conn_poll(conn, wait_secs);
++ if (conn->poll)
++ return conn->poll(conn, wait_secs);
+
+ return -1;
+ }
+@@ -210,7 +210,7 @@ int mutt_socket_readchar(struct Connection *conn, char *c)
+ if (conn->bufpos >= conn->available)
+ {
+ if (conn->fd >= 0)
+- conn->available = conn->conn_read(conn, conn->inbuf, sizeof(conn->inbuf));
++ conn->available = conn->read(conn, conn->inbuf, sizeof(conn->inbuf));
+ else
+ {
+ mutt_debug(LL_DEBUG1, "attempt to read from closed connection\n");
+@@ -286,18 +286,17 @@ struct Connection *mutt_socket_new(enum ConnectionType type)
+ }
+ else if (type == MUTT_CONNECTION_SSL)
+ {
+- int ret = mutt_ssl_socket_setup(conn);
+-
+- if (ret < 0)
++ int rc = mutt_ssl_socket_setup(conn);
++ if (rc < 0)
+ FREE(&conn);
+ }
+ else
+ {
+- conn->conn_read = raw_socket_read;
+- conn->conn_write = raw_socket_write;
+- conn->conn_open = raw_socket_open;
+- conn->conn_close = raw_socket_close;
+- conn->conn_poll = raw_socket_poll;
++ conn->read = raw_socket_read;
++ conn->write = raw_socket_write;
++ conn->open = raw_socket_open;
++ conn->close = raw_socket_close;
++ conn->poll = raw_socket_poll;
+ }
+
+ return conn;
+diff --git a/conn/socket.h b/conn/socket.h
+index cbaf96899..3357abbfc 100644
+--- a/conn/socket.h
++++ b/conn/socket.h
+@@ -27,6 +27,8 @@
+ #include <stddef.h>
+ #include <time.h>
+
++struct Connection;
++
+ /**
+ * enum ConnectionType - Type of connection
+ */
+@@ -37,23 +39,14 @@ enum ConnectionType
+ MUTT_CONNECTION_SSL, ///< SSL/TLS-encrypted connection
+ };
+
+-struct Connection;
+-
+-struct Connection *mutt_socket_new(enum ConnectionType type);
+-
+-int mutt_socket_open(struct Connection *conn);
+-int mutt_socket_close(struct Connection *conn);
+-int mutt_socket_read(struct Connection *conn, char *buf, size_t len);
+-int mutt_socket_write(struct Connection *conn, const char *buf, size_t len);
+-int mutt_socket_poll(struct Connection *conn, time_t wait_secs);
+-int mutt_socket_readchar(struct Connection *conn, char *c);
+-int mutt_socket_readln_d(char *buf, size_t buflen, struct Connection *conn, int dbg);
+-int mutt_socket_write_d(struct Connection *conn, const char *buf, int len, int dbg);
+-
+-int raw_socket_read(struct Connection *conn, char *buf, size_t len);
+-int raw_socket_write(struct Connection *conn, const char *buf, size_t count);
+-int raw_socket_open(struct Connection *conn);
+-int raw_socket_close(struct Connection *conn);
+-int raw_socket_poll(struct Connection *conn, time_t wait_secs);
++int mutt_socket_close (struct Connection *conn);
++struct Connection *mutt_socket_new (enum ConnectionType type);
++int mutt_socket_open (struct Connection *conn);
++int mutt_socket_poll (struct Connection *conn, time_t wait_secs);
++int mutt_socket_read (struct Connection *conn, char *buf, size_t len);
++int mutt_socket_readchar(struct Connection *conn, char *c);
++int mutt_socket_readln_d(char *buf, size_t buflen, struct Connection *conn, int dbg);
++int mutt_socket_write (struct Connection *conn, const char *buf, size_t len);
++int mutt_socket_write_d (struct Connection *conn, const char *buf, int len, int dbg);
+
+ #endif /* MUTT_CONN_SOCKET_H */
+diff --git a/conn/ssl.h b/conn/ssl.h
+index 4a43c5369..02ecf7000 100644
+--- a/conn/ssl.h
++++ b/conn/ssl.h
+@@ -1,6 +1,6 @@
+ /**
+ * @file
+- * Handling of OpenSSL encryption
++ * Handling of SSL encryption
+ *
+ * @authors
+ * Copyright (C) 1999-2000 Tommi Komulainen <Tommi.Komulainen@iki.fi>
+@@ -24,12 +24,14 @@
+ #define MUTT_CONN_SSL_H
+
+ #include "config.h"
++#include <stdbool.h>
+
+ struct Connection;
++struct ListHead;
+
+ #ifdef USE_SSL
+-int mutt_ssl_starttls(struct Connection *conn);
+ int mutt_ssl_socket_setup(struct Connection *conn);
++int dlg_verify_cert(const char *title, struct ListHead *list, bool allow_always, bool allow_skip);
+ #else
+ /**
+ * [Dummy] Set up the socket multiplexor
+diff --git a/conn/tunnel.c b/conn/tunnel.c
+index 0a10bc617..fc85980f5 100644
+--- a/conn/tunnel.c
++++ b/conn/tunnel.c
+@@ -35,9 +35,8 @@
+ #include <sys/wait.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
+-#include "mutt.h"
+-#include "tunnel.h"
++#include "conn_private.h"
++#include "mutt/lib.h"
+ #include "conn_globals.h"
+ #include "connaccount.h"
+ #include "connection.h"
+@@ -48,13 +47,13 @@
+ */
+ struct TunnelSockData
+ {
+- pid_t pid;
+- int fd_read;
+- int fd_write;
++ pid_t pid; ///< Process ID of tunnel program
++ int fd_read; ///< File descriptor to read from
++ int fd_write; ///< File descriptor to write to
+ };
+
+ /**
+- * tunnel_socket_open - Open a tunnel socket - Implements Connection::conn_open()
++ * tunnel_socket_open - Open a tunnel socket - Implements Connection::open()
+ */
+ static int tunnel_socket_open(struct Connection *conn)
+ {
+@@ -133,7 +132,7 @@ static int tunnel_socket_open(struct Connection *conn)
+ }
+
+ /**
+- * tunnel_socket_read - Read data from a tunnel socket - Implements Connection::conn_read()
++ * tunnel_socket_read - Read data from a tunnel socket - Implements Connection::read()
+ */
+ static int tunnel_socket_read(struct Connection *conn, char *buf, size_t count)
+ {
+@@ -155,7 +154,7 @@ static int tunnel_socket_read(struct Connection *conn, char *buf, size_t count)
+ }
+
+ /**
+- * tunnel_socket_write - Write data to a tunnel socket - Implements Connection::conn_write()
++ * tunnel_socket_write - Write data to a tunnel socket - Implements Connection::write()
+ */
+ static int tunnel_socket_write(struct Connection *conn, const char *buf, size_t count)
+ {
+@@ -183,7 +182,7 @@ static int tunnel_socket_write(struct Connection *conn, const char *buf, size_t
+ }
+
+ /**
+- * tunnel_socket_poll - Checks whether tunnel reads would block - Implements Connection::conn_poll()
++ * tunnel_socket_poll - Checks whether tunnel reads would block - Implements Connection::poll()
+ */
+ static int tunnel_socket_poll(struct Connection *conn, time_t wait_secs)
+ {
+@@ -200,7 +199,7 @@ static int tunnel_socket_poll(struct Connection *conn, time_t wait_secs)
+ }
+
+ /**
+- * tunnel_socket_close - Close a tunnel socket - Implements Connection::conn_close()
++ * tunnel_socket_close - Close a tunnel socket - Implements Connection::close()
+ */
+ static int tunnel_socket_close(struct Connection *conn)
+ {
+@@ -233,9 +232,9 @@ static int tunnel_socket_close(struct Connection *conn)
+ */
+ void mutt_tunnel_socket_setup(struct Connection *conn)
+ {
+- conn->conn_open = tunnel_socket_open;
+- conn->conn_close = tunnel_socket_close;
+- conn->conn_read = tunnel_socket_read;
+- conn->conn_write = tunnel_socket_write;
+- conn->conn_poll = tunnel_socket_poll;
++ conn->open = tunnel_socket_open;
++ conn->close = tunnel_socket_close;
++ conn->read = tunnel_socket_read;
++ conn->write = tunnel_socket_write;
++ conn->poll = tunnel_socket_poll;
+ }
+diff --git a/context.c b/context.c
+index 8dd6d46ca..3412b4ac8 100644
+--- a/context.c
++++ b/context.c
+@@ -28,8 +28,7 @@
+
+ #include "config.h"
+ #include <string.h>
+-#include "mutt/mutt.h"
+-#include "config/lib.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "context.h"
+@@ -37,10 +36,10 @@
+ #include "mutt_header.h"
+ #include "mutt_thread.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "pattern.h"
+ #include "score.h"
+ #include "sort.h"
++#include "ncrypt/lib.h"
+
+ /**
+ * ctx_free - Free a Context
+@@ -54,10 +53,10 @@ void ctx_free(struct Context **ptr)
+ struct Context *ctx = *ptr;
+
+ struct EventContext ev_ctx = { ctx };
+- notify_send(ctx->notify, NT_CONTEXT, NT_CONTEXT_CLOSE, IP & ev_ctx);
++ notify_send(ctx->notify, NT_CONTEXT, NT_CONTEXT_CLOSE, &ev_ctx);
+
+ if (ctx->mailbox)
+- notify_observer_remove(ctx->mailbox->notify, ctx_mailbox_observer, IP ctx);
++ notify_observer_remove(ctx->mailbox->notify, ctx_mailbox_observer, ctx);
+
+ mutt_hash_free(&ctx->thread_hash);
+ notify_free(&ctx->notify);
+@@ -73,7 +72,7 @@ struct Context *ctx_new(void)
+ {
+ struct Context *ctx = mutt_mem_calloc(1, sizeof(struct Context));
+
+- ctx->notify = notify_new(ctx, NT_CONTEXT);
++ ctx->notify = notify_new();
+ notify_set_parent(ctx->notify, NeoMutt->notify);
+
+ return ctx;
+@@ -88,7 +87,7 @@ static void ctx_cleanup(struct Context *ctx)
+ FREE(&ctx->pattern);
+ mutt_pattern_free(&ctx->limit_pattern);
+ if (ctx->mailbox)
+- notify_observer_remove(ctx->mailbox->notify, ctx_mailbox_observer, IP ctx);
++ notify_observer_remove(ctx->mailbox->notify, ctx_mailbox_observer, ctx);
+
+ struct Notify *notify = ctx->notify;
+ struct Mailbox *m = ctx->mailbox;
+@@ -294,30 +293,29 @@ void ctx_update_tables(struct Context *ctx, bool committing)
+ */
+ int ctx_mailbox_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->global_data)
+ return -1;
+- if ((nc->obj_type != NT_MAILBOX) || (nc->event_type != NT_MAILBOX))
++ if (nc->event_type != NT_MAILBOX)
+ return 0;
+- struct Context *ctx = (struct Context *) nc->data;
+- if (!ctx)
+- return -1;
++
++ struct Context *ctx = nc->global_data;
+
+ switch (nc->event_subtype)
+ {
+- case MBN_CLOSED:
++ case NT_MAILBOX_CLOSED:
+ mutt_clear_threads(ctx);
+ ctx_cleanup(ctx);
+ break;
+- case MBN_INVALID:
++ case NT_MAILBOX_INVALID:
+ ctx_update(ctx);
+ break;
+- case MBN_UPDATE:
++ case NT_MAILBOX_UPDATE:
+ ctx_update_tables(ctx, true);
+ break;
+- case MBN_RESORT:
++ case NT_MAILBOX_RESORT:
+ mutt_sort_headers(ctx, true);
+ break;
+- case MBN_UNTAG:
++ case NT_MAILBOX_UNTAG:
+ if (ctx->last_tag && ctx->last_tag->deleted)
+ ctx->last_tag = NULL;
+ break;
+diff --git a/context.h b/context.h
+index 22d1cd55f..cf1ba33b8 100644
+--- a/context.h
++++ b/context.h
+@@ -28,6 +28,7 @@
+
+ struct Email;
+ struct EmailList;
++struct Mailbox;
+ struct NotifyCallback;
+
+ /**
+diff --git a/copy.c b/copy.c
+index b1be10266..4e361dd47 100644
+--- a/copy.c
++++ b/copy.c
+@@ -32,24 +32,24 @@
+ #include <inttypes.h> // IWYU pragma: keep
+ #include <stdbool.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "copy.h"
+ #include "context.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hdrline.h"
+-#include "mutt_window.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_NOTMUCH
+ #include "muttlib.h"
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+@@ -608,8 +608,10 @@ int mutt_copy_message_fp(FILE *fp_out, FILE *fp_in, struct Email *e,
+ if (C_TextFlowed)
+ mutt_str_strfcpy(prefix, ">", sizeof(prefix));
+ else
++ {
+ mutt_make_string(prefix, sizeof(prefix), wraplen, NONULL(C_IndentString),
+ Context, Context->mailbox, e);
++ }
+ }
+
+ if ((cmflags & MUTT_CM_NOHEADER) == 0)
+diff --git a/core/account.c b/core/account.c
+index 59a4d2dbc..e26dfebea 100644
+--- a/core/account.c
++++ b/core/account.c
+@@ -28,8 +28,9 @@
+
+ #include "config.h"
+ #include <stddef.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/neomutt.h"
+ #include "account.h"
+ #include "mailbox.h"
+
+@@ -41,12 +42,18 @@
+ */
+ struct Account *account_new(const char *name, struct ConfigSubset *sub)
+ {
++ if (!sub)
++ return NULL;
++
+ struct Account *a = mutt_mem_calloc(1, sizeof(struct Account));
+
+ STAILQ_INIT(&a->mailboxes);
+- a->notify = notify_new(a, NT_ACCOUNT);
++ a->notify = notify_new();
++ notify_set_parent(a->notify, NeoMutt->notify);
+ a->name = mutt_str_strdup(name);
+- a->sub = cs_subset_new(name, sub);
++ a->sub = cs_subset_new(name, sub, a->notify);
++ a->sub->cs = sub->cs;
++ a->sub->scope = SET_SCOPE_ACCOUNT;
+
+ return a;
+ }
+@@ -62,14 +69,18 @@ bool account_mailbox_add(struct Account *a, struct Mailbox *m)
+ if (!a || !m)
+ return false;
+
++ if (a->magic == MUTT_UNKNOWN)
++ a->magic = m->magic;
++
+ m->account = a;
+ struct MailboxNode *np = mutt_mem_calloc(1, sizeof(*np));
+ np->mailbox = m;
+ STAILQ_INSERT_TAIL(&a->mailboxes, np, entries);
++ mailbox_set_subset(m, a->sub);
+ notify_set_parent(m->notify, a->notify);
+
+ struct EventMailbox ev_m = { m };
+- notify_send(a->notify, NT_MAILBOX, NT_MAILBOX_ADD, IP & ev_m);
++ notify_send(a->notify, NT_MAILBOX, NT_MAILBOX_ADD, &ev_m);
+ return true;
+ }
+
+@@ -94,7 +105,7 @@ bool account_mailbox_remove(struct Account *a, struct Mailbox *m)
+ if (!m || (np->mailbox == m))
+ {
+ struct EventMailbox ev_m = { m };
+- notify_send(a->notify, NT_MAILBOX, NT_MAILBOX_REMOVE, IP & ev_m);
++ notify_send(a->notify, NT_MAILBOX, NT_MAILBOX_REMOVE, &ev_m);
+ STAILQ_REMOVE(&a->mailboxes, np, MailboxNode, entries);
+ if (!m)
+ mailbox_free(&np->mailbox);
+diff --git a/core/account.h b/core/account.h
+index 2d711c562..a295bebe9 100644
+--- a/core/account.h
++++ b/core/account.h
+@@ -25,7 +25,7 @@
+ #define MUTT_CORE_ACCOUNT_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "mailbox.h"
+
+ struct ConfigSubset;
+@@ -35,14 +35,14 @@ struct ConfigSubset;
+ */
+ struct Account
+ {
+- enum MailboxType magic; ///< Type of Mailboxes this Account contains
+- char *name; ///< Name of Account
+- struct ConfigSubset *sub; ///< Inherited config items
+- struct MailboxList mailboxes; ///< List of Mailboxes
+- struct Notify *notify; ///< Notifications handler
+- void *adata; ///< Private data (for Mailbox backends)
+- void (*free_adata)(void **); ///< Callback function to free private data
+- TAILQ_ENTRY(Account) entries; ///< Linked list of Accounts
++ enum MailboxType magic; ///< Type of Mailboxes this Account contains
++ char *name; ///< Name of Account
++ struct ConfigSubset *sub; ///< Inherited config items
++ struct MailboxList mailboxes; ///< List of Mailboxes
++ struct Notify *notify; ///< Notifications handler
++ void *adata; ///< Private data (for Mailbox backends)
++ void (*free_adata)(void **ptr); ///< Callback function to free private data
++ TAILQ_ENTRY(Account) entries; ///< Linked list of Accounts
+ };
+ TAILQ_HEAD(AccountList, Account);
+
+diff --git a/core/mailbox.c b/core/mailbox.c
+index 2b61900ae..3a556314f 100644
+--- a/core/mailbox.c
++++ b/core/mailbox.c
+@@ -30,6 +30,7 @@
+
+ #include "config.h"
+ #include <sys/stat.h>
++#include "config/lib.h"
+ #include "email/lib.h"
+ #include "mailbox.h"
+ #include "neomutt.h"
+@@ -43,7 +44,7 @@ struct Mailbox *mailbox_new(void)
+ struct Mailbox *m = mutt_mem_calloc(1, sizeof(struct Mailbox));
+
+ mutt_buffer_init(&m->pathbuf);
+- m->notify = notify_new(m, NT_MAILBOX);
++ m->notify = notify_new();
+
+ m->email_max = 25;
+ m->emails = mutt_mem_calloc(m->email_max, sizeof(struct Email *));
+@@ -62,12 +63,16 @@ void mailbox_free(struct Mailbox **ptr)
+ return;
+
+ struct Mailbox *m = *ptr;
+- mailbox_changed(m, MBN_CLOSED);
++ if (m->mdata && m->free_mdata)
++ m->free_mdata(&m->mdata);
++
++ mailbox_changed(m, NT_MAILBOX_CLOSED);
+
+ if (m->mdata && m->free_mdata)
+ m->free_mdata(&m->mdata);
+
+ mutt_buffer_dealloc(&m->pathbuf);
++ cs_subset_free(&m->sub);
+ FREE(&m->name);
+ FREE(&m->realpath);
+ FREE(&m->emails);
+@@ -163,12 +168,13 @@ void mailbox_update(struct Mailbox *m)
+ * @param m Mailbox
+ * @param action Change to Mailbox
+ */
+-void mailbox_changed(struct Mailbox *m, enum MailboxNotification action)
++void mailbox_changed(struct Mailbox *m, enum NotifyMailbox action)
+ {
+ if (!m)
+ return;
+
+- notify_send(m->notify, NT_MAILBOX, action, 0);
++ struct EventMailbox ev_m = { m };
++ notify_send(m->notify, NT_MAILBOX, action, &ev_m);
+ }
+
+ /**
+@@ -190,3 +196,19 @@ void mailbox_size_sub(struct Mailbox *m, const struct Email *e)
+ {
+ m->size -= email_size(e);
+ }
++
++/**
++ * mailbox_set_subset - Set a Mailbox's Config Subset
++ * @param m Mailbox
++ * @param sub Parent Config Subset
++ * @retval true Success
++ */
++bool mailbox_set_subset(struct Mailbox *m, struct ConfigSubset *sub)
++{
++ if (!m || m->sub || !sub)
++ return false;
++
++ m->sub = cs_subset_new(m->name, sub, m->notify);
++ m->sub->scope = SET_SCOPE_MAILBOX;
++ return true;
++}
+diff --git a/core/mailbox.h b/core/mailbox.h
+index 2b11e6752..57287b9dd 100644
+--- a/core/mailbox.h
++++ b/core/mailbox.h
+@@ -29,8 +29,9 @@
+ #include <stdint.h>
+ #include <sys/types.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
++struct ConfigSubset;
+ struct Email;
+
+ #define MB_NORMAL 0
+@@ -55,18 +56,6 @@ enum MailboxType
+ MUTT_COMPRESSED, ///< Compressed file Mailbox type
+ };
+
+-/**
+- * enum MailboxNotification - Notifications about changes to a Mailbox
+- */
+-enum MailboxNotification
+-{
+- MBN_CLOSED = 1, ///< Mailbox was closed
+- MBN_INVALID, ///< Email list was changed
+- MBN_RESORT, ///< Email list needs resorting
+- MBN_UPDATE, ///< Update internal tables
+- MBN_UNTAG, ///< Clear the 'last-tagged' pointer
+-};
+-
+ /**
+ * ACL Rights - These show permission to...
+ */
+@@ -145,7 +134,7 @@ struct Mailbox
+ int flags; ///< e.g. #MB_NORMAL
+
+ void *mdata; ///< Driver specific data
+- void (*free_mdata)(void **); ///< Driver-specific data free function
++ void (*free_mdata)(void **ptr); ///< Driver-specific data free function
+
+ struct Notify *notify; ///< Notifications handler
+ };
+@@ -175,13 +164,22 @@ enum NotifyMailbox
+ {
+ NT_MAILBOX_ADD = 1, ///< A new Mailbox has been created
+ NT_MAILBOX_REMOVE, ///< A Mailbox is about to be destroyed
++
++ /* These don't really belong here as they are tied to GUI operations.
++ * Eventually, they'll be eliminated. */
++ NT_MAILBOX_CLOSED, ///< Mailbox was closed
++ NT_MAILBOX_INVALID, ///< Email list was changed
++ NT_MAILBOX_RESORT, ///< Email list needs resorting
++ NT_MAILBOX_UPDATE, ///< Update internal tables
++ NT_MAILBOX_UNTAG, ///< Clear the 'last-tagged' pointer
+ };
+
+-void mailbox_changed (struct Mailbox *m, enum MailboxNotification action);
++void mailbox_changed (struct Mailbox *m, enum NotifyMailbox action);
+ struct Mailbox *mailbox_find (const char *path);
+ struct Mailbox *mailbox_find_name (const char *name);
+ void mailbox_free (struct Mailbox **ptr);
+ struct Mailbox *mailbox_new (void);
++bool mailbox_set_subset(struct Mailbox *m, struct ConfigSubset *sub);
+ void mailbox_size_add (struct Mailbox *m, const struct Email *e);
+ void mailbox_size_sub (struct Mailbox *m, const struct Email *e);
+ void mailbox_update (struct Mailbox *m);
+diff --git a/core/neomutt.c b/core/neomutt.c
+index 0736b06de..aeb6fa17c 100644
+--- a/core/neomutt.c
++++ b/core/neomutt.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stddef.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "neomutt.h"
+ #include "account.h"
+@@ -49,9 +49,10 @@ struct NeoMutt *neomutt_new(struct ConfigSet *cs)
+ struct NeoMutt *n = mutt_mem_calloc(1, sizeof(*NeoMutt));
+
+ TAILQ_INIT(&n->accounts);
+- n->notify = notify_new(n, NT_NEOMUTT);
+- n->sub = cs_subset_new(NULL, NULL);
++ n->notify = notify_new();
++ n->sub = cs_subset_new(NULL, NULL, n->notify);
+ n->sub->cs = cs;
++ n->sub->scope = SET_SCOPE_NEOMUTT;
+
+ return n;
+ }
+@@ -89,7 +90,7 @@ bool neomutt_account_add(struct NeoMutt *n, struct Account *a)
+ notify_set_parent(a->notify, n->notify);
+
+ struct EventAccount ev_a = { a };
+- notify_send(n->notify, NT_ACCOUNT, NT_ACCOUNT_ADD, IP & ev_a);
++ notify_send(n->notify, NT_ACCOUNT, NT_ACCOUNT_ADD, &ev_a);
+ return true;
+ }
+
+@@ -114,7 +115,7 @@ bool neomutt_account_remove(struct NeoMutt *n, struct Account *a)
+ if (!a || (np == a))
+ {
+ struct EventAccount ev_a = { np };
+- notify_send(n->notify, NT_ACCOUNT, NT_ACCOUNT_REMOVE, IP & ev_a);
++ notify_send(n->notify, NT_ACCOUNT, NT_ACCOUNT_REMOVE, &ev_a);
+ TAILQ_REMOVE(&n->accounts, np, entries);
+ account_free(&np);
+ result = true;
+diff --git a/backtrace.c b/debug/backtrace.c
+similarity index 96%
+rename from backtrace.c
+rename to debug/backtrace.c
+index d1250cd99..ec6434d9e 100644
+--- a/backtrace.c
++++ b/debug/backtrace.c
+@@ -21,7 +21,7 @@
+ */
+
+ /**
+- * @page backtrace Code backtrace
++ * @page debug_backtrace Code backtrace
+ *
+ * Code backtrace
+ */
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <libunwind.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * show_backtrace - Log the program's call stack
+diff --git a/debug/graphviz.c b/debug/graphviz.c
+new file mode 100644
+index 000000000..87a599898
+--- /dev/null
++++ b/debug/graphviz.c
+@@ -0,0 +1,908 @@
++/**
++ * @file
++ * Create a GraphViz dot file from the NeoMutt objects
++ *
++ * @authors
++ * Copyright (C) 2018-2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page debug_graphviz Create a GraphViz dot file
++ *
++ * Create a GraphViz dot file from the NeoMutt objects
++ */
++
++#include "config.h"
++#include <stdio.h>
++#include <string.h>
++#include <sys/stat.h>
++#include <time.h>
++#include "imap/imap_private.h"
++#include "maildir/maildir_private.h"
++#include "notmuch/notmuch_private.h"
++#include "pop/pop_private.h"
++#include "email/lib.h"
++#include "core/lib.h"
++#include "conn/lib.h"
++#include "context.h"
++#include "globals.h"
++#include "compress/lib.h"
++#include "mbox/lib.h"
++#include "nntp/lib.h"
++#include "notmuch/lib.h"
++
++// #define GV_HIDE_CONTEXT
++#define GV_HIDE_CONTEXT_CONTENTS
++// #define GV_HIDE_MBOX
++// #define GV_HIDE_NEOMUTT
++// #define GV_HIDE_CONFIG
++// #define GV_HIDE_MDATA
++
++static void dot_type_bool(FILE *fp, const char *name, bool val)
++{
++ static const char *values[] = { "false", "true" };
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", values[val]);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_type_char(FILE *fp, const char *name, char ch)
++{
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%c</td>\n", ch);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_type_date(char *buf, size_t buflen, time_t timestamp)
++{
++ mutt_date_localtime_format(buf, buflen, "%Y-%m-%d %H:%M:%S", timestamp);
++}
++
++static void dot_type_file(FILE *fp, const char *name, FILE *struct_fp)
++{
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ if (struct_fp)
++ {
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%p (%d)</td>\n",
++ (void *) struct_fp, fileno(struct_fp));
++ }
++ else
++ {
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">NULL</td>\n");
++ }
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_type_number(FILE *fp, const char *name, int num)
++{
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%d</td>\n", num);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_type_string_escape(char *buf, size_t buflen)
++{
++ for (; buf[0]; buf++)
++ {
++ if (buf[0] == '<')
++ mutt_str_inline_replace(buf, buflen, 1, "<");
++ else if (buf[0] == '>')
++ mutt_str_inline_replace(buf, buflen, 1, ">");
++ else if (buf[0] == '&')
++ mutt_str_inline_replace(buf, buflen, 1, "&");
++ }
++}
++
++static void dot_type_string(FILE *fp, const char *name, const char *str)
++{
++ char buf[1024] = "[NULL]";
++
++ if (str)
++ {
++ mutt_str_strfcpy(buf, str, sizeof(buf));
++ dot_type_string_escape(buf, sizeof(buf));
++ }
++
++ bool quoted = ((buf[0] != '[') && (buf[0] != '*'));
++
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ if (quoted)
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">\"%s\"</td>\n", buf);
++ else
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", buf);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_type_umask(char *buf, size_t buflen, int umask)
++{
++ snprintf(buf, buflen, "0%03o", umask);
++}
++
++static void dot_ptr_name(char *buf, size_t buflen, void *ptr)
++{
++ snprintf(buf, buflen, "obj_%p", ptr);
++}
++
++static void dot_ptr(FILE *fp, const char *name, void *ptr, const char *colour)
++{
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ if (colour && ptr)
++ {
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\" bgcolor=\"%s\">%p</td>\n",
++ colour, ptr);
++ }
++ else
++ {
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%p</td>\n", ptr);
++ }
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_add_link(struct ListHead *links, void *src, void *dst,
++ const char *label, bool back)
++{
++ if (!src || !dst)
++ return;
++
++ char obj1[16] = { 0 };
++ char obj2[16] = { 0 };
++ char text[256] = { 0 };
++ char lstr[128] = { 0 };
++
++ dot_ptr_name(obj1, sizeof(obj1), src);
++ dot_ptr_name(obj2, sizeof(obj2), dst);
++
++ if (label)
++ snprintf(lstr, sizeof(lstr), "edgetooltip=\"%s\"", label);
++
++ snprintf(text, sizeof(text), "%s -> %s [ %s %s ]", obj1, obj2,
++ back ? "dir=back" : "", lstr);
++ mutt_list_insert_tail(links, mutt_str_strdup(text));
++}
++
++static void dot_graph_header(FILE *fp)
++{
++ fprintf(fp, "digraph neomutt\n");
++ fprintf(fp, "{\n\n");
++
++ fprintf(fp, "\tgraph [\n");
++ fprintf(fp, "\t\trankdir=\"TB\"\n");
++ fprintf(fp, "\t\tnodesep=\"0.5\"\n");
++ fprintf(fp, "\t\tranksep=\"0.5\"\n");
++ fprintf(fp, "\t];\n");
++ fprintf(fp, "\n");
++ fprintf(fp, "\tnode [\n");
++ fprintf(fp, "\t\tshape=\"plain\"\n");
++ fprintf(fp, "\t];\n");
++ fprintf(fp, "\n");
++ fprintf(fp, "\tedge [\n");
++ fprintf(fp, "\t\tpenwidth=\"4.5\"\n");
++ fprintf(fp, "\t\tarrowsize=\"1.0\"\n");
++ fprintf(fp, "\t\tcolor=\"#c0c0c0\"\n");
++ fprintf(fp, "\t];\n");
++ fprintf(fp, "\n");
++}
++
++static void dot_graph_footer(FILE *fp, struct ListHead *links)
++{
++ fprintf(fp, "\n");
++ struct ListNode *np = NULL;
++ STAILQ_FOREACH(np, links, entries)
++ {
++ fprintf(fp, "\t%s;\n", np->data);
++ }
++ fprintf(fp, "\n}\n");
++}
++
++static void dot_object_header(FILE *fp, void *ptr, const char *name, const char *colour)
++{
++ char obj[16] = { 0 };
++ dot_ptr_name(obj, sizeof(obj), ptr);
++
++ if (!colour)
++ colour = "#ffff80";
++
++ fprintf(fp, "\t%s [\n", obj);
++ fprintf(fp, "\t\tlabel=<<table cellspacing=\"0\" border=\"1\" rows=\"*\" "
++ "color=\"#d0d0d0\">\n");
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\" bgcolor=\"%s\" port=\"top\" colspan=\"3\"><font color=\"#000000\" point-size=\"20\"><b>%s</b></font> <font point-size=\"12\">(%p)</font></td>\n",
++ colour, name, ptr);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_object_footer(FILE *fp)
++{
++ fprintf(fp, "\t\t</table>>\n");
++ fprintf(fp, "\t];\n");
++ fprintf(fp, "\n");
++}
++
++static void dot_node(FILE *fp, void *ptr, const char *name, const char *colour)
++{
++ char obj[16] = { 0 };
++ dot_ptr_name(obj, sizeof(obj), ptr);
++
++ fprintf(fp, "\t%s [\n", obj);
++ fprintf(fp, "\t\tlabel=<<table cellspacing=\"0\" border=\"1\" rows=\"*\" "
++ "color=\"#d0d0d0\">\n");
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" bgcolor=\"%s\" port=\"top\"><font color=\"#000000\" point-size=\"20\"><b>%s</b></font></td>\n",
++ colour, name);
++ fprintf(fp, "\t\t</tr>\n");
++ dot_object_footer(fp);
++}
++
++static void dot_node_link(FILE *fp, void *ptr, const char *name, void *link, const char *colour)
++{
++ char obj[16] = { 0 };
++ dot_ptr_name(obj, sizeof(obj), ptr);
++
++ fprintf(fp, "\t%s [\n", obj);
++ fprintf(fp, "\t\tlabel=<<table cellspacing=\"0\" border=\"1\" rows=\"*\" "
++ "color=\"#d0d0d0\">\n");
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" bgcolor=\"%s\" port=\"top\"><font color=\"#000000\" point-size=\"20\"><b>%s</b></font></td>\n",
++ colour, name);
++ fprintf(fp, "\t\t</tr>\n");
++
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\" bgcolor=\"%s\">%p</td>\n", colour, link);
++ fprintf(fp, "\t\t</tr>\n");
++
++ dot_object_footer(fp);
++}
++
++static void dot_path_fs(char *buf, size_t buflen, const char *path)
++{
++ const char *slash = strrchr(path, '/');
++ if (slash)
++ slash++;
++ else
++ slash = path;
++
++ mutt_str_strfcpy(buf, slash, buflen);
++}
++
++static void dot_path_imap(char *buf, size_t buflen, const char *path)
++{
++ char tmp[1024] = { 0 };
++ mutt_str_strfcpy(tmp, path, sizeof(tmp));
++
++ struct Url *u = url_parse(tmp);
++
++ if (u->path && (u->path[0] != '\0'))
++ mutt_str_strfcpy(buf, u->path, buflen);
++ else
++ snprintf(buf, buflen, "%s:%s", u->host, u->user);
++
++ url_free(&u);
++}
++
++static void dot_config(FILE *fp, const char *name, int type,
++ struct ConfigSubset *sub, struct ListHead *links)
++{
++ if (!sub)
++ return;
++
++ struct Buffer value = mutt_buffer_make(256);
++ dot_object_header(fp, (void *) name, "Config", "#ffff80");
++ dot_type_string(fp, "scope", sub->name);
++
++ if (sub->name)
++ {
++ char scope[256];
++ snprintf(scope, sizeof(scope), "%s:", sub->name);
++
++ struct HashElem **list = get_elem_list(sub->cs);
++ for (size_t i = 0; list[i]; i++)
++ {
++ struct HashElem *item = list[i];
++ if ((item->type & type) == 0)
++ continue;
++
++ const char *iname = item->key.strkey;
++ size_t slen = strlen(scope);
++ if (mutt_str_startswith(iname, scope, CASE_MATCH) != 0)
++ {
++ if (strchr(iname + slen, ':'))
++ continue;
++ if ((DTYPE(item->type) == DT_STRING) && (item->type & DT_SENSITIVE))
++ {
++ dot_type_string(fp, iname + slen, "***");
++ }
++ else
++ {
++ mutt_buffer_reset(&value);
++ cs_subset_he_string_get(sub, item, &value);
++ dot_type_string(fp, iname + slen, value.data);
++ }
++ }
++ }
++ }
++ else
++ {
++ struct HashElem **list = get_elem_list(sub->cs);
++ int i = 0;
++ for (; list[i]; i++)
++ ;
++ dot_type_number(fp, "count", i);
++ }
++
++ dot_object_footer(fp);
++ mutt_buffer_dealloc(&value);
++}
++
++static void dot_comp(FILE *fp, struct CompressInfo *ci, struct ListHead *links)
++{
++ dot_object_header(fp, ci, "CompressInfo", "#c0c060");
++ dot_type_string(fp, "append", ci->cmd_append);
++ dot_type_string(fp, "close", ci->cmd_close);
++ dot_type_string(fp, "open", ci->cmd_open);
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_type(FILE *fp, const char *name, enum MailboxType type)
++{
++ const char *typestr = NULL;
++
++ switch (type)
++ {
++ case MUTT_MBOX:
++ typestr = "MBOX";
++ break;
++ case MUTT_MMDF:
++ typestr = "MMDF";
++ break;
++ case MUTT_MH:
++ typestr = "MH";
++ break;
++ case MUTT_MAILDIR:
++ typestr = "MAILDIR";
++ break;
++ case MUTT_NNTP:
++ typestr = "NNTP";
++ break;
++ case MUTT_IMAP:
++ typestr = "IMAP";
++ break;
++ case MUTT_NOTMUCH:
++ typestr = "NOTMUCH";
++ break;
++ case MUTT_POP:
++ typestr = "POP";
++ break;
++ case MUTT_COMPRESSED:
++ typestr = "COMPRESSED";
++ break;
++ default:
++ typestr = "UNKNOWN";
++ }
++
++ fprintf(fp, "\t\t<tr>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", name);
++ fprintf(fp, "\t\t\t<td border=\"0\">=</td>\n");
++ fprintf(fp, "\t\t\t<td border=\"0\" align=\"left\">%s</td>\n", typestr);
++ fprintf(fp, "\t\t</tr>\n");
++}
++
++static void dot_mailbox_imap(FILE *fp, struct ImapMboxData *mdata, struct ListHead *links)
++{
++ dot_object_header(fp, mdata, "ImapMboxData", "#60c060");
++ dot_type_string(fp, "name", mdata->name);
++ dot_type_string(fp, "munge_name", mdata->munge_name);
++ dot_type_string(fp, "real_name", mdata->real_name);
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_maildir(FILE *fp, struct MaildirMboxData *mdata, struct ListHead *links)
++{
++ char buf[64] = { 0 };
++
++ dot_object_header(fp, mdata, "MaildirMboxData", "#60c060");
++
++ dot_type_date(buf, sizeof(buf), mdata->mtime_cur.tv_sec);
++ dot_type_string(fp, "mtime_cur", buf);
++
++ dot_type_umask(buf, sizeof(buf), mdata->mh_umask);
++ dot_type_string(fp, "mh_umask", buf);
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_mbox(FILE *fp, struct MboxAccountData *mdata, struct ListHead *links)
++{
++ char buf[64] = { 0 };
++
++ dot_object_header(fp, mdata, "MboxAccountData", "#60c060");
++ dot_ptr(fp, "fp", mdata->fp, NULL);
++
++ dot_type_date(buf, sizeof(buf), mdata->atime.tv_sec);
++ dot_type_string(fp, "atime", buf);
++
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_nntp(FILE *fp, struct NntpMboxData *mdata, struct ListHead *links)
++{
++ dot_object_header(fp, mdata, "NntpMboxData", "#60c060");
++ dot_type_string(fp, "group", mdata->group);
++ dot_type_string(fp, "desc", mdata->desc);
++
++ dot_type_number(fp, "first_message", mdata->first_message);
++ dot_type_number(fp, "last_message", mdata->last_message);
++ dot_type_number(fp, "last_loaded", mdata->last_loaded);
++ dot_type_number(fp, "last_cached", mdata->last_cached);
++ dot_type_number(fp, "unread", mdata->unread);
++
++ dot_type_bool(fp, "subscribed", mdata->subscribed);
++ dot_type_bool(fp, "has_new_mail", mdata->has_new_mail);
++ dot_type_bool(fp, "allowed", mdata->allowed);
++ dot_type_bool(fp, "deleted", mdata->deleted);
++
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_notmuch(FILE *fp, struct NmMboxData *mdata, struct ListHead *links)
++{
++ dot_object_header(fp, mdata, "NmMboxData", "#60c060");
++ dot_type_number(fp, "db_limit", mdata->db_limit);
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox_pop(FILE *fp, struct PopAccountData *mdata, struct ListHead *links)
++{
++ dot_object_header(fp, mdata, "PopAccountData", "#60c060");
++ dot_ptr(fp, "conn", mdata->conn, "#ff8080");
++ dot_object_footer(fp);
++}
++
++static void dot_mailbox(FILE *fp, struct Mailbox *m, struct ListHead *links)
++{
++ char buf[64] = { 0 };
++
++ dot_object_header(fp, m, "Mailbox", "#80ff80");
++ dot_mailbox_type(fp, "type", m->magic);
++ if (m->name)
++ dot_type_string(fp, "name", m->name);
++
++ if ((m->magic == MUTT_IMAP) || (m->magic == MUTT_POP))
++ {
++ dot_path_imap(buf, sizeof(buf), mutt_b2s(&m->pathbuf));
++ dot_type_string(fp, "pathbuf", buf);
++ dot_path_imap(buf, sizeof(buf), m->realpath);
++ dot_type_string(fp, "realpath", buf);
++ }
++ else
++ {
++ dot_path_fs(buf, sizeof(buf), mutt_b2s(&m->pathbuf));
++ dot_type_string(fp, "pathbuf", buf);
++ dot_path_fs(buf, sizeof(buf), m->realpath);
++ dot_type_string(fp, "realpath", buf);
++ }
++
++#ifdef GV_HIDE_MDATA
++ dot_ptr(fp, "mdata", m->mdata, NULL);
++#endif
++ dot_ptr(fp, "account", m->account, "#80ffff");
++
++ dot_type_number(fp, "msg_count", m->msg_count);
++ // dot_type_number(fp, "msg_unread", m->msg_unread);
++ // dot_type_number(fp, "msg_flagged", m->msg_flagged);
++ // dot_type_number(fp, "msg_new", m->msg_new);
++ // dot_type_number(fp, "msg_deleted", m->msg_deleted);
++ // dot_type_number(fp, "msg_tagged", m->msg_tagged);
++
++ dot_ptr(fp, "emails", m->emails, NULL);
++ dot_type_number(fp, "email_max", m->email_max);
++ dot_ptr(fp, "v2r", m->v2r, NULL);
++ dot_type_number(fp, "vcount", m->vcount);
++
++ dot_object_footer(fp);
++
++ // dot_add_link(links, m, m->mdata, false);
++
++#ifndef GV_HIDE_MDATA
++ if (m->mdata)
++ {
++ if (m->magic == MUTT_MAILDIR)
++ dot_mailbox_maildir(fp, m->mdata, links);
++ else if (m->magic == MUTT_IMAP)
++ dot_mailbox_imap(fp, m->mdata, links);
++ else if (m->magic == MUTT_POP)
++ dot_mailbox_pop(fp, m->mdata, links);
++ else if (m->magic == MUTT_MBOX)
++ dot_mailbox_mbox(fp, m->mdata, links);
++ else if (m->magic == MUTT_NNTP)
++ dot_mailbox_nntp(fp, m->mdata, links);
++ else if (m->magic == MUTT_NOTMUCH)
++ dot_mailbox_notmuch(fp, m->mdata, links);
++
++ dot_add_link(links, m, m->mdata, "Mailbox->mdata", false);
++ }
++#endif
++
++ if (m->compress_info)
++ {
++ dot_comp(fp, m->compress_info, links);
++ dot_add_link(links, m, m->compress_info, "Mailbox->compress_info", false);
++ }
++
++#ifndef GV_HIDE_CONFIG
++ if (m->name)
++ {
++ dot_config(fp, m->name, DT_INHERIT_MBOX, m->sub, links);
++ dot_add_link(links, m, m->name, "Mailbox Config", false);
++ }
++#endif
++}
++
++static void dot_mailbox_node(FILE *fp, struct MailboxNode *mn, struct ListHead *links)
++{
++ dot_node(fp, mn, "MN", "#80ff80");
++
++ dot_mailbox(fp, mn->mailbox, links);
++
++ dot_add_link(links, mn, mn->mailbox, "MailboxNode->mailbox", false);
++
++ struct Buffer buf;
++ mutt_buffer_init(&buf);
++
++ char name[256] = { 0 };
++ mutt_buffer_addstr(&buf, "{ rank=same ");
++
++ dot_ptr_name(name, sizeof(name), mn);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++
++ dot_ptr_name(name, sizeof(name), mn->mailbox);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++
++#ifndef GV_HIDE_MDATA
++ if (mn->mailbox->mdata)
++ {
++ dot_ptr_name(name, sizeof(name), mn->mailbox->mdata);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++ }
++#endif
++
++#ifndef GV_HIDE_CONFIG
++ if (mn->mailbox->name)
++ {
++ dot_ptr_name(name, sizeof(name), mn->mailbox->name);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++ }
++#endif
++
++ mutt_buffer_addstr(&buf, "}");
++
++ mutt_list_insert_tail(links, buf.data);
++ buf.data = NULL;
++}
++
++static void dot_mailbox_list(FILE *fp, struct MailboxList *ml, struct ListHead *links, bool abbr)
++{
++ struct MailboxNode *prev = NULL;
++ struct MailboxNode *np = NULL;
++ STAILQ_FOREACH(np, ml, entries)
++ {
++ if (abbr)
++ dot_node_link(fp, np, "MN", np->mailbox, "#80ff80");
++ else
++ dot_mailbox_node(fp, np, links);
++ if (prev)
++ dot_add_link(links, prev, np, "MailboxNode->next", false);
++ prev = np;
++ }
++}
++
++static void dot_connection(FILE *fp, struct Connection *c, struct ListHead *links)
++{
++ dot_object_header(fp, c, "Connection", "#ff8080");
++ // dot_ptr(fp, "sockdata", c->sockdata, "#60c0c0");
++ dot_type_number(fp, "fd", c->fd);
++ dot_object_footer(fp);
++
++ dot_object_header(fp, c->inbuf, "ConnAccount", "#ff8080");
++ dot_type_string(fp, "user", c->account.user);
++ dot_type_string(fp, "host", c->account.host);
++ dot_type_number(fp, "port", c->account.port);
++ dot_object_footer(fp);
++
++ dot_add_link(links, c, c->inbuf, "Connection.ConnAccount", false);
++}
++
++static void dot_account_imap(FILE *fp, struct ImapAccountData *adata, struct ListHead *links)
++{
++ dot_object_header(fp, adata, "ImapAccountData", "#60c0c0");
++ // dot_type_string(fp, "mbox_name", adata->mbox_name);
++ // dot_type_string(fp, "login", adata->conn->account.login);
++ dot_type_string(fp, "user", adata->conn->account.user);
++ dot_type_string(fp, "pass", adata->conn->account.pass[0] ? "***" : "");
++ dot_type_number(fp, "port", adata->conn->account.port);
++ // dot_ptr(fp, "conn", adata->conn, "#ff8080");
++ dot_type_bool(fp, "unicode", adata->unicode);
++ dot_type_bool(fp, "qresync", adata->qresync);
++ dot_type_char(fp, "seqid", adata->seqid);
++ dot_ptr(fp, "mailbox", adata->mailbox, "#80ff80");
++ dot_object_footer(fp);
++
++ if (adata->conn)
++ {
++ dot_connection(fp, adata->conn, links);
++ dot_add_link(links, adata, adata->conn, "ImapAccountData->conn", false);
++ }
++}
++
++static void dot_account_mbox(FILE *fp, struct MboxAccountData *adata, struct ListHead *links)
++{
++ char buf[64] = { 0 };
++
++ dot_object_header(fp, adata, "MboxAccountData", "#60c0c0");
++ dot_ptr(fp, "fp", adata->fp, NULL);
++
++ dot_type_date(buf, sizeof(buf), adata->atime.tv_sec);
++ dot_type_string(fp, "atime", buf);
++ dot_type_bool(fp, "locked", adata->locked);
++ dot_type_bool(fp, "append", adata->append);
++
++ dot_object_footer(fp);
++}
++
++static void dot_account_nntp(FILE *fp, struct NntpAccountData *adata, struct ListHead *links)
++{
++ dot_object_header(fp, adata, "NntpAccountData", "#60c0c0");
++ dot_type_number(fp, "groups_num", adata->groups_num);
++
++ dot_type_bool(fp, "hasCAPABILITIES", adata->hasCAPABILITIES);
++ dot_type_bool(fp, "hasSTARTTLS", adata->hasSTARTTLS);
++ dot_type_bool(fp, "hasDATE", adata->hasDATE);
++ dot_type_bool(fp, "hasLIST_NEWSGROUPS", adata->hasLIST_NEWSGROUPS);
++ dot_type_bool(fp, "hasXGTITLE", adata->hasXGTITLE);
++ dot_type_bool(fp, "hasLISTGROUP", adata->hasLISTGROUP);
++ dot_type_bool(fp, "hasLISTGROUPrange", adata->hasLISTGROUPrange);
++ dot_type_bool(fp, "hasOVER", adata->hasOVER);
++ dot_type_bool(fp, "hasXOVER", adata->hasXOVER);
++ dot_type_bool(fp, "cacheable", adata->cacheable);
++ dot_type_bool(fp, "newsrc_modified", adata->newsrc_modified);
++
++ dot_type_string(fp, "authenticators", adata->authenticators);
++ dot_type_string(fp, "overview_fmt", adata->overview_fmt);
++ dot_type_string(fp, "newsrc_file", adata->newsrc_file);
++ dot_type_file(fp, "newsrc_fp", adata->fp_newsrc);
++
++ dot_type_number(fp, "groups_num", adata->groups_num);
++ dot_type_number(fp, "groups_max", adata->groups_max);
++
++ char buf[128];
++ dot_type_date(buf, sizeof(buf), adata->mtime);
++ dot_type_string(fp, "mtime", buf);
++ dot_type_date(buf, sizeof(buf), adata->newgroups_time);
++ dot_type_string(fp, "newgroups_time", buf);
++ dot_type_date(buf, sizeof(buf), adata->check_time);
++ dot_type_string(fp, "check_time", buf);
++
++ dot_object_footer(fp);
++
++ if (adata->conn)
++ {
++ dot_connection(fp, adata->conn, links);
++ dot_add_link(links, adata, adata->conn, "NntpAccountData->conn", false);
++ }
++}
++
++static void dot_account_notmuch(FILE *fp, struct NmAccountData *adata, struct ListHead *links)
++{
++ dot_object_header(fp, adata, "NmAccountData", "#60c0c0");
++ dot_ptr(fp, "db", adata->db, NULL);
++ dot_object_footer(fp);
++}
++
++static void dot_account_pop(FILE *fp, struct PopAccountData *adata, struct ListHead *links)
++{
++ char buf[64] = { 0 };
++
++ dot_object_header(fp, adata, "PopAccountData", "#60c0c0");
++
++ dot_type_date(buf, sizeof(buf), adata->check_time);
++ dot_type_string(fp, "check_time", buf);
++
++ dot_type_string(fp, "login", adata->conn->account.login);
++ dot_type_string(fp, "user", adata->conn->account.user);
++ dot_type_string(fp, "pass", adata->conn->account.pass[0] ? "***" : "");
++ dot_type_number(fp, "port", adata->conn->account.port);
++ // dot_ptr(fp, "conn", adata->conn, "#ff8080");
++ dot_object_footer(fp);
++
++ if (adata->conn)
++ {
++ dot_connection(fp, adata->conn, links);
++ dot_add_link(links, adata, adata->conn, "PopAccountData->conn", false);
++ }
++}
++
++static void dot_account(FILE *fp, struct Account *a, struct ListHead *links)
++{
++ dot_object_header(fp, a, "Account", "#80ffff");
++ dot_mailbox_type(fp, "magic", a->magic);
++ dot_type_string(fp, "name", a->name);
++ // dot_ptr(fp, "adata", a->adata, "#60c0c0");
++ dot_object_footer(fp);
++
++ if (a->adata)
++ {
++ if (a->magic == MUTT_IMAP)
++ dot_account_imap(fp, a->adata, links);
++ else if (a->magic == MUTT_POP)
++ dot_account_pop(fp, a->adata, links);
++ else if (a->magic == MUTT_MBOX)
++ dot_account_mbox(fp, a->adata, links);
++ else if (a->magic == MUTT_NNTP)
++ dot_account_nntp(fp, a->adata, links);
++ else if (a->magic == MUTT_NOTMUCH)
++ dot_account_notmuch(fp, a->adata, links);
++
++ dot_add_link(links, a, a->adata, "Account->adata", false);
++ }
++
++#ifndef GV_HIDE_CONFIG
++ if (a->name)
++ {
++ dot_config(fp, a->name, DT_INHERIT_ACC, a->sub, links);
++ dot_add_link(links, a, a->name, "Config", false);
++
++ char name[256] = { 0 };
++ struct Buffer buf;
++ mutt_buffer_init(&buf);
++
++ mutt_buffer_addstr(&buf, "{ rank=same ");
++
++ dot_ptr_name(name, sizeof(name), a);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++
++ dot_ptr_name(name, sizeof(name), a->name);
++ mutt_buffer_add_printf(&buf, "%s ", name);
++
++ mutt_buffer_addstr(&buf, "}");
++ mutt_list_insert_tail(links, buf.data);
++ buf.data = NULL;
++ }
++#endif
++
++ struct MailboxNode *first = STAILQ_FIRST(&a->mailboxes);
++ dot_add_link(links, a, first, "Account->mailboxes", false);
++ dot_mailbox_list(fp, &a->mailboxes, links, false);
++}
++
++static void dot_account_list(FILE *fp, struct AccountList *al, struct ListHead *links)
++{
++ struct Account *prev = NULL;
++ struct Account *np = NULL;
++ TAILQ_FOREACH(np, al, entries)
++ {
++#ifdef GV_HIDE_MBOX
++ if (np->magic == MUTT_MBOX)
++ continue;
++#endif
++ dot_account(fp, np, links);
++ if (prev)
++ dot_add_link(links, prev, np, "Account->next", false);
++
++ prev = np;
++ }
++}
++
++static void dot_context(FILE *fp, struct Context *ctx, struct ListHead *links)
++{
++ dot_object_header(fp, ctx, "Context", "#ff80ff");
++ dot_ptr(fp, "mailbox", ctx->mailbox, "#80ff80");
++#ifdef GV_HIDE_CONTEXT_CONTENTS
++ dot_type_number(fp, "vsize", ctx->vsize);
++ dot_type_string(fp, "pattern", ctx->pattern);
++ dot_type_bool(fp, "collapsed", ctx->collapsed);
++#endif
++ dot_object_footer(fp);
++}
++
++void dump_graphviz(const char *title)
++{
++ char name[256] = { 0 };
++ struct ListHead links = STAILQ_HEAD_INITIALIZER(links);
++
++ time_t now = time(NULL);
++ if (title)
++ {
++ char date[128];
++ mutt_date_localtime_format(date, sizeof(date), "%R", now);
++ snprintf(name, sizeof(name), "%s-%s.gv", date, title);
++ }
++ else
++ {
++ mutt_date_localtime_format(name, sizeof(name), "%R.gv", now);
++ }
++
++ umask(022);
++ FILE *fp = fopen(name, "w");
++ if (!fp)
++ return;
++
++ dot_graph_header(fp);
++
++#ifndef GV_HIDE_NEOMUTT
++ dot_node(fp, NeoMutt, "NeoMutt", "#ffa500");
++ dot_add_link(&links, NeoMutt, TAILQ_FIRST(&NeoMutt->accounts), "NeoMutt->accounts", false);
++#ifndef GV_HIDE_CONFIG
++ dot_config(fp, (const char *) NeoMutt->sub, 0, NeoMutt->sub, &links);
++ dot_add_link(&links, NeoMutt, NeoMutt->sub, "NeoMutt Config", false);
++ struct Buffer buf = mutt_buffer_make(256);
++ char obj1[16] = { 0 };
++ char obj2[16] = { 0 };
++ dot_ptr_name(obj1, sizeof(obj1), NeoMutt);
++ dot_ptr_name(obj2, sizeof(obj2), NeoMutt->sub);
++ mutt_buffer_printf(&buf, "{ rank=same %s %s }", obj1, obj2);
++ mutt_list_insert_tail(&links, mutt_str_strdup(mutt_b2s(&buf)));
++ mutt_buffer_dealloc(&buf);
++#endif
++#endif
++
++ dot_account_list(fp, &NeoMutt->accounts, &links);
++
++#ifndef GV_HIDE_CONTEXT
++ if (Context)
++ dot_context(fp, Context, &links);
++
++#ifndef GV_HIDE_NEOMUTT
++ /* Globals */
++ fprintf(fp, "\t{ rank=same ");
++ if (Context)
++ {
++ dot_ptr_name(name, sizeof(name), Context);
++ fprintf(fp, "%s ", name);
++ }
++ dot_ptr_name(name, sizeof(name), NeoMutt);
++ fprintf(fp, "%s ", name);
++ fprintf(fp, "}\n");
++#endif
++#endif
++
++ fprintf(fp, "\t{ rank=same ");
++ struct Account *np = NULL;
++ TAILQ_FOREACH(np, &NeoMutt->accounts, entries)
++ {
++#ifdef GV_HIDE_MBOX
++ if (np->magic == MUTT_MBOX)
++ continue;
++#endif
++ dot_ptr_name(name, sizeof(name), np);
++ fprintf(fp, "%s ", name);
++ }
++ fprintf(fp, "}\n");
++
++ dot_graph_footer(fp, &links);
++ fclose(fp);
++ mutt_list_free(&links);
++}
+diff --git a/debug/lib.h b/debug/lib.h
+new file mode 100644
+index 000000000..cd09c4c68
+--- /dev/null
++++ b/debug/lib.h
+@@ -0,0 +1,57 @@
++/**
++ * @file
++ * Convenience wrapper for the debug headers
++ *
++ * @authors
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page debug DEBUG: Debugging tools
++ *
++ * Debugging tools
++ *
++ * | File | Description |
++ * | :------------------ | :------------------------- |
++ * | debug/backtrace.c | @subpage debug_backtrace |
++ * | debug/graphviz.c | @subpage debug_graphviz |
++ * | debug/notify.c | @subpage debug_notify |
++ * | debug/parse_test.c | @subpage debug_parse |
++ * | debug/window.c | @subpage debug_window |
++ */
++
++#ifndef MUTT_DEBUG_LIB_H
++#define MUTT_DEBUG_LIB_H
++
++struct NotifyCallback;
++
++// Backtrace
++void show_backtrace(void);
++
++// Graphviz
++void dump_graphviz(const char *title);
++
++// Notify
++int debug_notify_observer(struct NotifyCallback *nc);
++
++// Parse Set
++void test_parse_set(void);
++
++// Window
++void debug_win_dump(void);
++
++#endif /* MUTT_DEBUG_LIB_H */
+diff --git a/debug/notify.c b/debug/notify.c
+new file mode 100644
+index 000000000..789f12473
+--- /dev/null
++++ b/debug/notify.c
+@@ -0,0 +1,291 @@
++/**
++ * @file
++ * Dump all notifications
++ *
++ * @authors
++ * Copyright (C) 2019-2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page debug_notify Dump all notifications
++ *
++ * Dump all notifications
++ */
++
++#include "config.h"
++#include "mutt/lib.h"
++#include "config/lib.h"
++#include "email/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
++#include "context.h"
++#include "globals.h"
++
++extern const struct Mapping Fields[];
++extern const struct Mapping ComposeFields[];
++
++static const char *get_event_type(enum NotifyType type)
++{
++ switch (type)
++ {
++ case NT_ACCOUNT:
++ return "account";
++ case NT_COLOR:
++ return "color";
++ case NT_COMMAND:
++ return "command";
++ case NT_CONFIG:
++ return "config";
++ case NT_CONTEXT:
++ return "context";
++ case NT_EMAIL:
++ return "email";
++ case NT_GLOBAL:
++ return "global";
++ case NT_MAILBOX:
++ return "mailbox";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static const char *get_mailbox_type(enum MailboxType type)
++{
++ switch (type)
++ {
++ case MUTT_COMPRESSED:
++ return "compressed";
++ case MUTT_IMAP:
++ return "imap";
++ case MUTT_MAILDIR:
++ return "maildir";
++ case MUTT_MBOX:
++ return "mbox";
++ case MUTT_MH:
++ return "mh";
++ case MUTT_MMDF:
++ return "mmdf";
++ case MUTT_NNTP:
++ return "nntp";
++ case MUTT_NOTMUCH:
++ return "notmuch";
++ case MUTT_POP:
++ return "pop";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static const char *get_global_event(int id)
++{
++ switch (id)
++ {
++ case NT_GLOBAL_SHUTDOWN:
++ return "shutdown";
++ case NT_GLOBAL_STARTUP:
++ return "startup";
++ case NT_GLOBAL_TIMEOUT:
++ return "timeout";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static const char *get_config_type(int id)
++{
++ switch (id)
++ {
++ case NT_CONFIG_SET:
++ return "set";
++ case NT_CONFIG_RESET:
++ return "reset";
++ case NT_CONFIG_INITIAL_SET:
++ return "initial_set";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static const char *get_mailbox_event(int id)
++{
++ switch (id)
++ {
++ case NT_MAILBOX_ADD:
++ return "add";
++ case NT_MAILBOX_REMOVE:
++ return "remove";
++ case NT_MAILBOX_CLOSED:
++ return "closed";
++ case NT_MAILBOX_INVALID:
++ return "invalid";
++ case NT_MAILBOX_RESORT:
++ return "resort";
++ case NT_MAILBOX_UPDATE:
++ return "update";
++ case NT_MAILBOX_UNTAG:
++ return "untag";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static const char *get_context(int id)
++{
++ switch (id)
++ {
++ case NT_CONTEXT_CLOSE:
++ return "close";
++ case NT_CONTEXT_OPEN:
++ return "open";
++ default:
++ return "UNKNOWN";
++ }
++}
++
++static void notify_dump_account(struct NotifyCallback *nc)
++{
++ struct EventAccount *ev_a = nc->event_data;
++ struct Account *a = ev_a->account;
++
++ mutt_debug(LL_DEBUG1, "\tAccount: %p (%s) %s\n", a,
++ get_mailbox_type(a->magic), NONULL(a->name));
++}
++
++static void notify_dump_color(struct NotifyCallback *nc)
++{
++ struct EventColor *ev_c = nc->event_data;
++
++ const char *color = NULL;
++ const char *scope = "";
++
++ if (nc->event_subtype == MT_COLOR_MAX)
++ color = "ALL";
++
++ if (!color)
++ color = mutt_map_get_name(nc->event_subtype, Fields);
++
++ if (!color)
++ {
++ color = mutt_map_get_name(nc->event_subtype, ComposeFields);
++ scope = "compose ";
++ }
++
++ if (!color)
++ color = "UNKNOWN";
++
++ mutt_debug(LL_DEBUG1, "\tColor: %s %s%s (%d)\n", ev_c->set ? "set" : "reset",
++ scope, color, nc->event_subtype);
++}
++
++static void notify_dump_command(struct NotifyCallback *nc)
++{
++ struct Command *cmd = nc->event_data;
++
++ if (cmd->data < 4096)
++ mutt_debug(LL_DEBUG1, "\tCommand: %s, data: %d\n", cmd->name, cmd->data);
++ else
++ mutt_debug(LL_DEBUG1, "\tCommand: %s, data: %p\n", cmd->name, (void *) cmd->data);
++}
++
++static void notify_dump_config(struct NotifyCallback *nc)
++{
++ struct EventConfig *ev_c = nc->event_data;
++
++ struct Buffer value = mutt_buffer_make(128);
++ cs_he_string_get(ev_c->sub->cs, ev_c->he, &value);
++ mutt_debug(LL_DEBUG1, "\tConfig: %s %s = %s\n",
++ get_config_type(nc->event_subtype), ev_c->name, mutt_b2s(&value));
++ mutt_buffer_dealloc(&value);
++}
++
++static void notify_dump_context(struct NotifyCallback *nc)
++{
++ struct EventContext *ev_c = nc->event_data;
++
++ const char *path = "NONE";
++ if (ev_c->context && ev_c->context->mailbox)
++ path = mailbox_path(ev_c->context->mailbox);
++
++ mutt_debug(LL_DEBUG1, "\tContext: %s %s\n", get_context(nc->event_subtype), path);
++}
++
++static void notify_dump_email(struct NotifyCallback *nc)
++{
++ struct EventEmail *ev_e = nc->event_data;
++
++ mutt_debug(LL_DEBUG1, "\tEmail: %d\n", ev_e->num_emails);
++ for (size_t i = 0; i < ev_e->num_emails; i++)
++ {
++ mutt_debug(LL_DEBUG1, "\t\t: %p\n", ev_e->emails[i]);
++ }
++}
++
++static void notify_dump_global(struct NotifyCallback *nc)
++{
++ mutt_debug(LL_DEBUG1, "\tGlobal: %s\n", get_global_event(nc->event_subtype));
++}
++
++static void notify_dump_mailbox(struct NotifyCallback *nc)
++{
++ struct EventMailbox *ev_m = nc->event_data;
++
++ struct Mailbox *m = ev_m->mailbox;
++ const char *path = m ? mailbox_path(m) : "";
++ mutt_debug(LL_DEBUG1, "\tMailbox: %s %s\n", get_mailbox_event(nc->event_subtype), path);
++}
++
++int debug_notify_observer(struct NotifyCallback *nc)
++{
++ mutt_debug(LL_DEBUG1, "\033[1;31mNotification:\033[0m %s\n", get_event_type(nc->event_type));
++
++ switch (nc->event_type)
++ {
++ case NT_ACCOUNT:
++ notify_dump_account(nc);
++ break;
++ case NT_COLOR:
++ notify_dump_color(nc);
++ break;
++ case NT_COMMAND:
++ notify_dump_command(nc);
++ break;
++ case NT_CONFIG:
++ notify_dump_config(nc);
++ break;
++ case NT_CONTEXT:
++ notify_dump_context(nc);
++ break;
++ case NT_EMAIL:
++ notify_dump_email(nc);
++ break;
++ case NT_GLOBAL:
++ notify_dump_global(nc);
++ break;
++ case NT_MAILBOX:
++ notify_dump_mailbox(nc);
++ break;
++ default:
++ mutt_debug(LL_DEBUG1, "\tEvent Type: %s\n", nc->event_type);
++ mutt_debug(LL_DEBUG1, "\tEvent Sub-type: %d\n", nc->event_subtype);
++ mutt_debug(LL_DEBUG1, "\tEvent Data: %p\n", nc->event_data);
++ break;
++ }
++
++ mutt_debug(LL_DEBUG1, "\tGlobal Data: %p\n", nc->global_data);
++
++ return 0;
++}
+diff --git a/debug/parse_test.c b/debug/parse_test.c
+new file mode 100644
+index 000000000..eb6692647
+--- /dev/null
++++ b/debug/parse_test.c
+@@ -0,0 +1,99 @@
++/**
++ * @file
++ * Test the config parsing code
++ *
++ * @authors
++ * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page debug_parse Test the config parsing code
++ *
++ * Test the config parsing code
++ */
++
++#include "config.h"
++#include <stdio.h>
++#include "mutt/lib.h"
++#include "lib.h"
++#include "init.h"
++#include "mutt_commands.h"
++
++/**
++ * test_parse_set - Test the config parsing
++ */
++void test_parse_set(void)
++{
++ const char *vars[] = {
++ "from", // ADDRESS
++ "beep", // BOOL
++ "ispell", // COMMAND
++ "mbox_type", // MAGIC
++ "to_chars", // MBTABLE
++ "net_inc", // NUMBER
++ "signature", // PATH
++ "print", // QUAD
++ "mask", // REGEX
++ "sort", // SORT
++ "attribution", // STRING
++ "zzz", // UNKNOWN
++ "my_var", // MY_VAR
++ };
++
++ const char *commands[] = {
++ "set",
++ "toggle",
++ "reset",
++ "unset",
++ };
++
++ const char *tests[] = {
++ "%s %s", "%s %s=42", "%s %s?", "%s ?%s", "%s ?%s=42",
++ "%s ?%s?", "%s no%s", "%s no%s=42", "%s no%s?", "%s inv%s",
++ "%s inv%s=42", "%s inv%s?", "%s &%s", "%s &%s=42", "%s &%s?",
++ };
++
++ struct Buffer tmp = mutt_buffer_make(256);
++ struct Buffer err = mutt_buffer_make(256);
++ char line[64];
++
++ for (size_t v = 0; v < mutt_array_size(vars); v++)
++ {
++ // printf("--------------------------------------------------------------------------------\n");
++ // printf("VARIABLE %s\n", vars[v]);
++ for (size_t c = 0; c < mutt_array_size(commands); c++)
++ {
++ // printf("----------------------------------------\n");
++ // printf("COMMAND %s\n", commands[c]);
++ for (size_t t = 0; t < mutt_array_size(tests); t++)
++ {
++ mutt_buffer_reset(&tmp);
++ mutt_buffer_reset(&err);
++
++ snprintf(line, sizeof(line), tests[t], commands[c], vars[v]);
++ printf("%-26s", line);
++ enum CommandResult rc = mutt_parse_rc_line(line, &tmp, &err);
++ printf("%2d %s\n", rc, err.data);
++ }
++ printf("\n");
++ }
++ // printf("\n");
++ }
++
++ mutt_buffer_dealloc(&tmp);
++ mutt_buffer_dealloc(&err);
++}
+diff --git a/debug/window.c b/debug/window.c
+new file mode 100644
+index 000000000..9a1bb9e0f
+--- /dev/null
++++ b/debug/window.c
+@@ -0,0 +1,128 @@
++/**
++ * @file
++ * Dump the details of the nested Windows
++ *
++ * @authors
++ * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page debug_window Dump the details of the nested Windows
++ *
++ * Dump the details of the nested Windows
++ */
++
++#include "config.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
++
++extern struct MuttWindow *RootWindow;
++
++static const char *win_size(struct MuttWindow *win)
++{
++ if (!win)
++ return "???";
++
++ switch (win->size)
++ {
++ case MUTT_WIN_SIZE_FIXED:
++ return "FIX";
++ case MUTT_WIN_SIZE_MAXIMISE:
++ return "MAX";
++ case MUTT_WIN_SIZE_MINIMISE:
++ return "MIN";
++ }
++
++ return "???";
++}
++
++static const char *win_type(struct MuttWindow *win)
++{
++ if (!win)
++ return "UNKNOWN";
++
++ switch (win->type)
++ {
++ case WT_ROOT:
++ return "root";
++ case WT_ALL_DIALOGS:
++ return "all-dialogs";
++ case WT_DIALOG:
++ return "dialog";
++ case WT_CONTAINER:
++ return "container";
++ case WT_HELP_BAR:
++ return "help-bar";
++ case WT_MESSAGE:
++ return "message";
++ case WT_INDEX:
++ return "index";
++ case WT_INDEX_BAR:
++ return "index-bar";
++ case WT_PAGER:
++ return "pager";
++ case WT_PAGER_BAR:
++ return "pager-bar";
++ case WT_SIDEBAR:
++ return "sidebar";
++ }
++
++ return "UNKNOWN";
++}
++
++static void win_dump(struct MuttWindow *win, int indent)
++{
++ bool visible = mutt_window_is_visible(win);
++
++ mutt_debug(LL_DEBUG1, "%*s%s[%d,%d] %s %s %s (%d,%d)%s\n", indent, "",
++ visible ? "" : "\033[1;30m", win->state.col_offset, win->state.row_offset,
++ win_size(win), win->name ? win->name : "", win_type(win),
++ win->state.cols, win->state.rows, visible ? "" : "\033[0m");
++
++ struct MuttWindow *np = NULL;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ win_dump(np, indent + 4);
++ }
++}
++
++static void win_serialise(struct MuttWindow *win, struct Buffer *buf)
++{
++ if (!mutt_window_is_visible(win))
++ return;
++
++ mutt_buffer_add_printf(buf, "<%s {%dx,%dy} [%dC,%dR]", win_size(win),
++ win->state.col_offset, win->state.row_offset,
++ win->state.cols, win->state.rows);
++ struct MuttWindow *np = NULL;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ win_serialise(np, buf);
++ }
++ mutt_buffer_addstr(buf, ">");
++}
++
++void debug_win_dump(void)
++{
++ mutt_debug(LL_DEBUG1, "\n");
++ win_dump(RootWindow, 0);
++ mutt_debug(LL_DEBUG1, "\n");
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(RootWindow, &buf);
++ mutt_debug(LL_DEBUG1, "%s\n", mutt_b2s(&buf));
++ mutt_buffer_dealloc(&buf);
++}
+diff --git a/doc/Makefile.autosetup b/doc/Makefile.autosetup
+index 79b50b66d..dfdb6e751 100644
+--- a/doc/Makefile.autosetup
++++ b/doc/Makefile.autosetup
+@@ -5,10 +5,10 @@ doc/makedoc$(EXEEXT): $(SRCDIR)/doc/makedoc.c
+ -o $@ $(SRCDIR)/doc/makedoc.c
+
+ doc/neomuttrc: doc/makedoc$(EXEEXT) $(SRCDIR)/doc/neomuttrc.head \
+- $(SRCDIR)/init.h
++ $(SRCDIR)/mutt_config.c
+ sed -e 's,@docdir@,$(docdir),' $(SRCDIR)/doc/neomuttrc.head \
+ > doc/neomuttrc
+- $(MAKEDOC_CPP) $(SRCDIR)/init.h | doc/makedoc$(EXEEXT) -c \
++ $(MAKEDOC_CPP) $(SRCDIR)/mutt_config.c | doc/makedoc$(EXEEXT) -c \
+ >> doc/neomuttrc
+
+ .PHONY: doc
+@@ -48,11 +48,11 @@ doc/index.html: $(SRCDIR)/doc/chunk.xsl $(SRCDIR)/doc/neomutt.xsl \
+ $(SRCDIR)/doc/neomutt.css doc/manual.xml
+ xsltproc --nonet -o doc/ $(SRCDIR)/doc/chunk.xsl doc/manual.xml > /dev/null 2>&1
+
+-doc/neomuttrc.5: doc/makedoc$(EXEEXT) $(SRCDIR)/init.h \
++doc/neomuttrc.5: doc/makedoc$(EXEEXT) $(SRCDIR)/mutt_config.c \
+ $(SRCDIR)/doc/neomuttrc.man.head $(SRCDIR)/doc/neomuttrc.man.tail
+ ( sed -e "/^\.TH/s|@MAN_DATE@|$(PACKAGE_DATE)|" \
+ $(SRCDIR)/doc/neomuttrc.man.head && \
+- $(MAKEDOC_CPP) $(SRCDIR)/init.h | doc/makedoc$(EXEEXT) -m && \
++ $(MAKEDOC_CPP) $(SRCDIR)/mutt_config.c | doc/makedoc$(EXEEXT) -m && \
+ sed -e "s|@MAN_DOCDIR@|$(docdir)|g" \
+ $(SRCDIR)/doc/neomuttrc.man.tail \
+ ) > $@
+@@ -68,11 +68,11 @@ doc/neomutt.1:
+
+ doc/manual.xml: doc/makedoc$(EXEEXT) $(SRCDIR)/doc/gen-map-doc \
+ $(SRCDIR)/doc/manual.xml.head $(SRCDIR)/doc/manual.xml.tail\
+- $(SRCDIR)/functions.h $(SRCDIR)/init.h $(SRCDIR)/opcodes.h
++ $(SRCDIR)/functions.c $(SRCDIR)/mutt_config.c $(SRCDIR)/opcodes.h
+ ( sed -e "s/@VERSION@/$(PACKAGE_DATE)/; s!/usr/libexec!$(libexecdir)!g" \
+ $(SRCDIR)/doc/manual.xml.head && \
+- $(MAKEDOC_CPP) $(SRCDIR)/init.h | doc/makedoc$(EXEEXT) -s && \
+- $(MAKEDOC_CPP) $(SRCDIR)/functions.h | \
++ $(MAKEDOC_CPP) $(SRCDIR)/mutt_config.c | doc/makedoc$(EXEEXT) -s && \
++ $(MAKEDOC_CPP) $(SRCDIR)/functions.c | \
+ perl $(SRCDIR)/doc/gen-map-doc $(SRCDIR)/doc/manual.xml.tail \
+ $(SRCDIR)/opcodes.h \
+ ) > $@
+@@ -129,7 +129,7 @@ spellcheck-doc:
+ -aspell -d american --mode=nroff --encoding=utf-8 -p \
+ doc/neomutt.pwl check doc/neomuttrc.man.head
+ -aspell -d american --mode=ccpp --encoding=utf-8 -p \
+- doc/neomutt.pwl check init.h
++ doc/neomutt.pwl check mutt_config.c
+
+ sortcheck-doc: doc/manual.xml
+ sed -n -e '1,/^<sect1 id="variables">/d' \
+diff --git a/doc/makedoc.c b/doc/makedoc.c
+index b7fd7a742..8d576e9a6 100644
+--- a/doc/makedoc.c
++++ b/doc/makedoc.c
+@@ -200,8 +200,7 @@ static char *get_token(char *d, size_t l, char *s)
+
+ if (Debug)
+ {
+- fprintf(stderr, "%s: Got %stoken: `%s'.\n", Progname,
+- is_quoted ? "quoted " : "", dd);
++ fprintf(stderr, "%s: Got %stoken: `%s'.\n", Progname, is_quoted ? "quoted " : "", dd);
+ fprintf(stderr, "%s: Remainder: `%s'.\n", Progname, t);
+ }
+
+@@ -1044,8 +1043,9 @@ static void pretty_default(char *t, size_t l, const char *s, int type)
+ {
+ /* heuristic! */
+ if (strncmp(s, "SORT_", 5) != 0)
+- fprintf(stderr, "WARNING: expected prefix of SORT_ for type DT_SORT "
+- "instead of %s\n",
++ fprintf(stderr,
++ "WARNING: expected prefix of SORT_ for type DT_SORT "
++ "instead of %s\n",
+ s);
+ strncpy(t, s + 5, l);
+ for (; *t; t++)
+@@ -1178,7 +1178,8 @@ static void print_confline(const char *varname, int type, const char *val, FILE
+ case F_CONF:
+ {
+ if ((type == DT_STRING) || (type == DT_REGEX) || (type == DT_ADDRESS) ||
+- (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) || (type == DT_COMMAND))
++ (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) ||
++ (type == DT_COMMAND))
+ {
+ fprintf(out, "\n# set %s=\"", varname);
+ conf_print_strval(val, out);
+@@ -1190,7 +1191,8 @@ static void print_confline(const char *varname, int type, const char *val, FILE
+ fprintf(out, "\n#\n# Name: %s", varname);
+ fprintf(out, "\n# Type: %s", type2human(type));
+ if ((type == DT_STRING) || (type == DT_REGEX) || (type == DT_ADDRESS) ||
+- (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) || (type == DT_COMMAND))
++ (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) ||
++ (type == DT_COMMAND))
+ {
+ fputs("\n# Default: \"", out);
+ conf_print_strval(val, out);
+@@ -1210,7 +1212,8 @@ static void print_confline(const char *varname, int type, const char *val, FILE
+ fputs(".nf\n", out);
+ fprintf(out, "Type: %s\n", type2human(type));
+ if ((type == DT_STRING) || (type == DT_REGEX) || (type == DT_ADDRESS) ||
+- (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) || (type == DT_COMMAND))
++ (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) ||
++ (type == DT_COMMAND))
+ {
+ fputs("Default: \"", out);
+ man_print_strval(val, out);
+@@ -1238,7 +1241,8 @@ static void print_confline(const char *varname, int type, const char *val, FILE
+ fprintf(out, "</title>\n<literallayout>Type: %s", type2human(type));
+
+ if ((type == DT_STRING) || (type == DT_REGEX) || (type == DT_ADDRESS) ||
+- (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) || (type == DT_COMMAND))
++ (type == DT_MBTABLE) || (type == DT_SLIST) || (type == DT_PATH) ||
++ (type == DT_COMMAND))
+ {
+ if (val && *val)
+ {
+@@ -1364,8 +1368,9 @@ static void makedoc(FILE *in, FILE *out)
+ p = strchr(buffer, '\n');
+ if (!p)
+ {
+- fprintf(stderr, "%s: Line %d too long. Ask a wizard to enlarge\n"
+- "%s: my buffer size.\n",
++ fprintf(stderr,
++ "%s: Line %d too long. Ask a wizard to enlarge\n"
++ "%s: my buffer size.\n",
+ Progname, line, Progname);
+ exit(1);
+ }
+diff --git a/doc/makedoc_defs.h b/doc/makedoc_defs.h
+index c78d9be5f..47a86ac4a 100644
+--- a/doc/makedoc_defs.h
++++ b/doc/makedoc_defs.h
+@@ -90,6 +90,18 @@
+ #ifndef USE_AUTOCRYPT
+ #define USE_AUTOCRYPT
+ #endif
++#ifndef USE_ZLIB
++#define USE_ZLIB
++#endif
++#ifndef HAVE_LZ4
++#define HAVE_LZ4
++#endif
++#ifndef HAVE_ZLIB
++#define HAVE_ZLIB
++#endif
++#ifndef HAVE_ZSTD
++#define HAVE_ZSTD
++#endif
+ #endif
+
+ #endif /* _MUTT_MAKEDOC_DEFS_H */
+diff --git a/doc/manual.xml.head b/doc/manual.xml.head
+index 12e4e375c..757a3af78 100644
+--- a/doc/manual.xml.head
++++ b/doc/manual.xml.head
+@@ -767,7 +767,7 @@ set sidebar_divider_char = '│' <emphasis role="comment"># Pretty line
+ <entry>%F</entry>
+ <entry>* †</entry>
+ <entry>
+- Number of Flagged messages in the mailbox
++ Number of flagged messages in the mailbox
+ </entry>
+ </row>
+ <row>
+@@ -782,14 +782,28 @@ set sidebar_divider_char = '│' <emphasis role="comment"># Pretty line
+ <entry>*</entry>
+ <entry>
+ If there's new mail, display <quote>N</quote>, otherwise
+- nothing
++ <quote> </quote> (space).
+ </entry>
+ </row>
+ <row>
+ <entry>%N</entry>
+ <entry>* †</entry>
+ <entry>
+- Number of New messages in the mailbox
++ Number of unread messages in the mailbox (seen or unseen)
++ </entry>
++ </row>
++ <row>
++ <entry>%o</entry>
++ <entry>* †</entry>
++ <entry>
++ Number of old messages in the mailbox (unread, but seen)
++ </entry>
++ </row>
++ <row>
++ <entry>%r</entry>
++ <entry>* †</entry>
++ <entry>
++ Number of read messages in the mailbox
+ </entry>
+ </row>
+ <row>
+@@ -803,7 +817,21 @@ set sidebar_divider_char = '│' <emphasis role="comment"># Pretty line
+ <entry>%t</entry>
+ <entry>* ‡</entry>
+ <entry>
+- Number of tagged messages
++ Number of tagged messages in the mailbox
++ </entry>
++ </row>
++ <row>
++ <entry>%Z</entry>
++ <entry>* †</entry>
++ <entry>
++ Number of new messages in the mailbox (unread, unseen)
++ </entry>
++ </row>
++ <row>
++ <entry>%Z</entry>
++ <entry>* †</entry>
++ <entry>
++ Number of new messages in the mailbox (unread, unseen)
+ </entry>
+ </row>
+ <row>
+@@ -1058,6 +1086,7 @@ sidebar_whitelist fruit fruit/apple <emphasis role="comment"># Always displa
+ color sidebar_indicator default color17 <emphasis role="comment"># Dark blue background</emphasis>
+ color sidebar_highlight white color238 <emphasis role="comment"># Grey background</emphasis>
+ color sidebar_spoolfile yellow default <emphasis role="comment"># Yellow</emphasis>
++color sidebar_unread cyan default <emphasis role="comment"># Light blue</emphasis>
+ color sidebar_new green default <emphasis role="comment"># Green</emphasis>
+ color sidebar_ordinary default default <emphasis role="comment"># Default colors</emphasis>
+ color sidebar_flagged red default <emphasis role="comment"># Red</emphasis>
+@@ -1092,11 +1121,6 @@ color sidebar_divider color8 default <emphasis role="comment"># Dark grey
+ <entry><literal>sidebar_highlight</literal></entry>
+ <entry>Mailbox is highlighted</entry>
+ </row>
+- <row>
+- <entry></entry>
+- <entry><literal>sidebar_spoolfile</literal></entry>
+- <entry>Mailbox is the spoolfile (receives incoming mail)</entry>
+- </row>
+ <row>
+ <entry></entry>
+ <entry><literal>sidebar_new</literal></entry>
+@@ -1112,6 +1136,11 @@ color sidebar_divider color8 default <emphasis role="comment"># Dark grey
+ <entry><literal>sidebar_flagged</literal></entry>
+ <entry>Mailbox contains flagged mail</entry>
+ </row>
++ <row>
++ <entry></entry>
++ <entry><literal>sidebar_spoolfile</literal></entry>
++ <entry>Mailbox is the spoolfile (receives incoming mail)</entry>
++ </row>
+ <row>
+ <entry>Lowest</entry>
+ <entry><literal>sidebar_ordinary</literal></entry>
+@@ -2849,9 +2878,9 @@ color sidebar_divider color8 default <emphasis role="comment"># Dark grey
+ <link linkend="sending-mixmaster">mixmaster</link> or
+ <link linkend="smtp">$smtp_url</link>. Otherwise
+ <link linkend="sendmail">$sendmail</link> will be invoked. Prior to
+- version 1.13, Mutt enabled <link linkend="write-bcc">$write_bcc</link> by
++ version 2019-11-29, NeoMutt enabled <link linkend="write-bcc">$write_bcc</link> by
+ default, assuming the MTA would automatically remove a
+- <literal>Bcc:</literal> header as part of delivery. Starting with 1.13, the
++ <literal>Bcc:</literal> header as part of delivery. Starting with 2019-11-29, the
+ option is unset by default, but no longer affects the fcc copy of the message.
+ </para>
+ </sect2>
+@@ -7279,7 +7308,7 @@ set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?)%* %s"
+
+ <para>
+ <link linkend="size-units-on-left">$size_units_on_left</link> will
+- display the unit (<quote>K</quote> or <quote>M</quote> to the left
++ display the unit (<quote>K</quote> or <quote>M</quote>) to the left
+ of the number, instead of the right if unset.
+ </para>
+
+@@ -8152,6 +8181,12 @@ set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?)%* %s"
+ keywords
+ </entry>
+ </row>
++ <row>
++ <entry>~Y <emphasis>EXPR</emphasis></entry>
++ <entry>
++ messages whose tags match <emphasis>EXPR</emphasis>
++ </entry>
++ </row>
+ <row>
+ <entry>~z [<emphasis>MIN</emphasis>]-[<emphasis>MAX</emphasis>]</entry>
+ <entry>
+@@ -8601,16 +8636,19 @@ set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?)%* %s"
+ <sect3 id="date-absolute">
+ <title>Absolute Dates</title>
+ <para>
+- Dates <emphasis>must</emphasis> be in DD/MM/YY format (month and
+- year are optional, defaulting to the current month and year). An
++ Dates <emphasis>must</emphasis> be in DD/MM/YY format (month and year
++ are optional, defaulting to the current month and year) or YYYYMMDD. An
+ example of a valid range of dates is:
+ </para>
+- <screen>Limit to messages matching: ~d 20/1/95-31/10</screen>
++<screen>
++Limit to messages matching: ~d 20/1/95-31/10
++Limit to messages matching: ~d 19950120-19951031
++</screen>
+ <para>
+ If you omit the minimum (first) date, and just specify
+- <quote>-DD/MM/YY</quote>, all messages <emphasis>before</emphasis>
+- the given date will be selected. If you omit the maximum (second)
+- date, and specify <quote>DD/MM/YY-</quote>, all messages
++ <quote>-DD/MM/YY</quote> or <quote>-YYYYMMDD</quote>, all messages
++ <emphasis>before</emphasis> the given date will be selected. If you omit the
++ maximum(second) date, and specify <quote>DD/MM/YY-</quote>, all messages
+ <emphasis>after</emphasis> the given date will be selected. If you
+ specify a single date with no dash (<quote>-</quote>), only
+ messages sent on the given date will be selected.
+@@ -10198,8 +10236,8 @@ audio/x-aiff aif aifc aiff
+ <sect1 id="mailcap">
+ <title>MIME Viewer Configuration with Mailcap</title>
+ <para>
+- NeoMutt supports RFC 1524 MIME Configuration, in particular the Unix
+- specific format specified in Appendix A of RFC 1524. This file format
++ NeoMutt supports RFC1524 MIME Configuration, in particular the Unix
++ specific format specified in Appendix A of RFC1524. This file format
+ is commonly referred to as the <quote>mailcap</quote> format. Many MIME
+ compliant programs utilize the mailcap format, allowing you to specify
+ handling for all MIME types in one place for all programs. Programs
+@@ -10700,7 +10738,7 @@ text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
+ </variablelist>
+ <para>
+ NeoMutt does not currently support the <literal>%F</literal> and
+- <literal>%n</literal> keywords specified in RFC 1524. The main
++ <literal>%n</literal> keywords specified in RFC1524. The main
+ purpose of these parameters is for multipart messages, which is
+ handled internally by NeoMutt.
+ </para>
+@@ -13397,6 +13435,159 @@ shutdown-hook 'exec sync-mailbox'
+ </sect2>
+ </sect1>
+
++ <sect1 id="hccompress">
++ <title>Header Cache Compression Feature</title>
++ <subtitle>Options for compressing the header cache files</subtitle>
++
++ <sect2 id="hccompress-support">
++ <title>Support</title>
++ <para>
++ <emphasis role="bold">Since:</emphasis> NeoMutt 2020-02-22
++ </para>
++ <para>
++ <emphasis role="bold">Dependencies:</emphasis>
++ <link linkend="caching">header cache</link>
++ </para>
++ </sect2>
++
++ <sect2 id="hccompress-intro">
++ <title>Introduction</title>
++ <para>
++ The Header Cache Compression Feature can be used for speeding up the
++ loading of large mailboxes. Also the space used on disk can be shrunk
++ by about 50% - depending on the compression method being used.
++ </para>
++ <para>
++ The implementation sits on top of the header caching functions. So the
++ header cache compression can be used together with all available
++ database backends.
++ </para>
++ </sect2>
++
++ <sect2 id="hccompress-variables">
++ <title>Variables</title>
++ <table id="table-hccompress-variables">
++ <title>Header Cache Compression Variables</title>
++ <tgroup cols="3">
++ <thead>
++ <row>
++ <entry>Name</entry>
++ <entry>Type</entry>
++ <entry>Default</entry>
++ </row>
++ </thead>
++ <tbody>
++ <row>
++ <entry><literal>header_cache_compress_method</literal></entry>
++ <entry>string</entry>
++ <entry>(empty)</entry>
++ </row>
++ <row>
++ <entry><literal>header_cache_compress_level</literal></entry>
++ <entry>number</entry>
++ <entry><literal>1</literal></entry>
++ </row>
++ <row>
++ <entry><literal>header_cache_compress_dictionary</literal></entry>
++ <entry>string</entry>
++ <entry><literal>~/.dictionary</literal></entry>
++ </row>
++ </tbody>
++ </tgroup>
++ </table>
++ <para>
++ The <literal>header_cache_compress_method</literal> can be
++ <emphasis>(empty)</emphasis> - which means, that no header cache
++ compression should be used. But when set to <emphasis>lz4</emphasis>,
++ <emphasis>zlib</emphasis> or <emphasis>zstd</emphasis> - then the
++ compression is turned on.
++ </para>
++ <para>
++ The <literal>header_cache_compress_level</literal> defines the
++ compression level, which should be used together with the selected
++ <literal>header_cache_compress_method</literal>. Here is an overview
++ of the possible settings:
++ <table id="table-hccompress-variables-leveldefines">
++ <title>Header Cache Compression Methods and it's Levels</title>
++ <tgroup cols="3">
++ <thead>
++ <row>
++ <entry>Method Name</entry>
++ <entry>Min</entry>
++ <entry>Max</entry>
++ </row>
++ </thead>
++ <tbody>
++ <row>
++ <entry><literal>lz4</literal></entry>
++ <entry>1</entry>
++ <entry>12</entry>
++ </row>
++ <row>
++ <entry><literal>zlib</literal></entry>
++ <entry>1</entry>
++ <entry>9</entry>
++ </row>
++ <row>
++ <entry><literal>zstd</literal></entry>
++ <entry>1</entry>
++ <entry>22</entry>
++ </row>
++ </tbody>
++ </tgroup>
++ </table>
++ </para>
++ <para>
++ The <literal>header_cache_compress_dictionary</literal> is a special
++ option for the <literal>zstd</literal> compression method. On a lot
++ small files, this compression method can be trained for some level by
++ using a command like this for e.g. level 3:
++ </para>
++<screen>
++zstd --train -3 -r cur new tmp -o dict-level-3
++</screen>
++ <para>
++ This command will create an file called <literal>dict-level-3</literal>,
++ which should be put to the path given in the
++ <literal>header_cache_compress_dictionary</literal> variable. The
++ speed and space gain can be huge, when using zstd dictionaries. See
++ <ulink url="https://github.com/facebook/zstd">https://github.com/facebook/zstd</ulink>
++ for more information about this.
++ </para>
++ </sect2>
++ <sect2 id="hccompress-neomuttrc">
++ <title>neomuttrc</title>
++
++<screen>
++<emphasis role="comment"># Example NeoMutt config file for the header cache compression feature.</emphasis>
++
++<emphasis role="comment"># --------------------------------------------------------------------------</emphasis>
++<emphasis role="comment"># VARIABLES – shown with their default values</emphasis>
++<emphasis role="comment"># --------------------------------------------------------------------------</emphasis>
++set header_cache_compress_dictionary = "~/.dictionary"
++set header_cache_compress_level = 1
++set header_cache_compress_method = ""
++
++<emphasis role="comment"># vim: syntax=neomuttrc</emphasis>
++</screen>
++
++ </sect2>
++
++ <sect2 id="hccompress-known-bugs">
++ <title>Known Bugs</title>
++ <para>
++ None
++ </para>
++ </sect2>
++
++ <sect2 id="hccompress-credits">
++ <title>Credits</title>
++ <para>
++ Tino Reichardt
++ </para>
++ </sect2>
++ </sect1>
++
+ <sect1 id="ifdef">
+ <title>Ifdef Feature</title>
+ <subtitle>Conditional config options</subtitle>
+@@ -15140,8 +15331,8 @@ color index_tags green default
+ <sect2 id="notmuch-using">
+ <title>Using Notmuch</title>
+
+- <sect3 id="notmuch-folder-uri">
+- <title>Folders URI</title>
++ <sect3 id="notmuch-folder-url">
++ <title>Folders URL</title>
+ <para>
+ <emphasis role="bold">notmuch://[<path>][?<item>=<name>[& ...]]</emphasis>
+ </para>
+@@ -15154,12 +15345,12 @@ color index_tags green default
+ </para>
+ <para>
+ If the "<path>" is not defined then
+- <literal>$nm_default_uri</literal> or <literal>$folder</literal> is
++ <literal>$nm_default_url</literal> or <literal>$folder</literal> is
+ used, for example:
+ </para>
+
+ <screen>
+-set nm_default_uri = "notmuch:///home/foo/maildir"
++set nm_default_url = "notmuch:///home/foo/maildir"
+ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ </screen>
+
+@@ -15175,7 +15366,7 @@ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ operators (<quote>and</quote>/<quote>or</quote>) in your queries.
+ </para>
+ <para>
+- Note that proper URI should not contain blank space and all
++ Note that proper URL should not contain blank space and all
+ <quote>bad</quote> chars should be encoded, for example
+ </para>
+ <para>
+@@ -15319,7 +15510,7 @@ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ <entry></entry>
+ </row>
+ <row>
+- <entry><literal>nm_default_uri</literal></entry>
++ <entry><literal>nm_default_url</literal></entry>
+ <entry>string</entry>
+ <entry>(empty)</entry>
+ <entry></entry>
+@@ -15408,7 +15599,7 @@ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ <entry>
+ switch to another virtual folder, a new folder maybe be
+ specified by vfolder description (see virtual-mailboxes) or
+- URI. the default is next vfolder with unread messages
++ URL. the default is next vfolder with unread messages
+ </entry>
+ </row>
+ <row>
+@@ -15473,14 +15664,14 @@ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ <arg choice="plain">
+ <replaceable class="parameter">description</replaceable>
+ <arg choice="plain">
+- <replaceable class="parameter">notmuch-URI</replaceable>
++ <replaceable class="parameter">notmuch-URL</replaceable>
+ </arg>
+ </arg>
+ <group choice="req" rep="repeat">
+ <arg choice="plain">
+ <replaceable class="parameter">description</replaceable>
+ <arg choice="plain">
+- <replaceable class="parameter">notmuch-URI</replaceable>
++ <replaceable class="parameter">notmuch-URL</replaceable>
+ </arg>
+ </arg>
+ </group>
+@@ -15531,7 +15722,7 @@ virtual-mailboxes "My INBOX" "notmuch://?query=tag:inbox"
+ set nm_db_limit = 0
+ <emphasis role="comment"># This variable specifies the default Notmuch database in format:</emphasis>
+ <emphasis role="comment"># notmuch://<absolute path></emphasis>
+-set nm_default_uri = ""
++set nm_default_url = ""
+ <emphasis role="comment"># The messages tagged with these tags are excluded and not loaded</emphasis>
+ <emphasis role="comment"># from notmuch DB to NeoMutt unless specified explicitly.</emphasis>
+ set nm_exclude_tags = ""
+@@ -15588,7 +15779,7 @@ bind index > vfolder-window-forward
+ <emphasis role="comment"># --------------------------------------------------------------------------</emphasis>
+ <emphasis role="comment"># COMMANDS – shown with an example</emphasis>
+ <emphasis role="comment"># --------------------------------------------------------------------------</emphasis>
+-<emphasis role="comment"># virtual-mailboxes description notmuch-URI { description notmuch-URI ...}</emphasis>
++<emphasis role="comment"># virtual-mailboxes description notmuch-URL { description notmuch-URL ...}</emphasis>
+ <emphasis role="comment"># virtual-mailboxes "Climbing" "notmuch://?query=climbing"</emphasis>
+ <emphasis role="comment"># unvirtual-mailboxes { * | mailbox ...}</emphasis>
+ <emphasis role="comment">#</emphasis>
+@@ -16043,6 +16234,11 @@ set sort_browser="reverse-size"
+ </row>
+ </thead>
+ <tbody>
++ <row>
++ <entry><literal>sidebar_component_depth</literal></entry>
++ <entry>number</entry>
++ <entry><literal>0</literal></entry>
++ </row>
+ <row>
+ <entry><literal>sidebar_delim_chars</literal></entry>
+ <entry>string</entry>
+@@ -16078,19 +16274,19 @@ set sort_browser="reverse-size"
+ <entry><literal>no</literal></entry>
+ </row>
+ <row>
+- <entry><literal>sidebar_on_right</literal></entry>
++ <entry><literal>sidebar_non_empty_mailbox_only</literal></entry>
+ <entry>boolean</entry>
+ <entry><literal>no</literal></entry>
+ </row>
+ <row>
+- <entry><literal>sidebar_short_path</literal></entry>
++ <entry><literal>sidebar_on_right</literal></entry>
+ <entry>boolean</entry>
+ <entry><literal>no</literal></entry>
+ </row>
+ <row>
+- <entry><literal>sidebar_component_depth</literal></entry>
+- <entry>number</entry>
+- <entry><literal>0</literal></entry>
++ <entry><literal>sidebar_short_path</literal></entry>
++ <entry>boolean</entry>
++ <entry><literal>no</literal></entry>
+ </row>
+ <row>
+ <entry><literal>sidebar_sort_method</literal></entry>
+@@ -16317,6 +16513,10 @@ set sort_browser="reverse-size"
+ <entry><literal>count</literal></entry>
+ <entry>Total number of messages</entry>
+ </row>
++ <row>
++ <entry><literal>desc</literal></entry>
++ <entry>Descriptive name of the mailbox</entry>
++ </row>
+ <row>
+ <entry><literal>flagged</literal></entry>
+ <entry>Number of flagged messages</entry>
+@@ -16378,6 +16578,8 @@ set sidebar_indent_string = ' '
+ set sidebar_new_mail_only = no
+ <emphasis role="comment"># Any mailboxes that are whitelisted will always be visible, even if the</emphasis>
+ <emphasis role="comment"># sidebar_new_mail_only option is enabled.</emphasis>
++set sidebar_non_empty_mailbox_only = no
++<emphasis role="comment"># Only show mailboxes that contain some mail</emphasis>
+ sidebar_whitelist '/home/user/mailbox1'
+ sidebar_whitelist '/home/user/mailbox2'
+ <emphasis role="comment"># When searching for mailboxes containing new mail, should the search wrap</emphasis>
+@@ -16430,6 +16632,8 @@ bind index,pager B sidebar-toggle-visible
+ <emphasis role="comment"># Color of the current, open, mailbox</emphasis>
+ <emphasis role="comment"># Note: This is a general NeoMutt option which colors all selected items.</emphasis>
+ color indicator cyan black
++<emphasis role="comment"># Sidebar-specific color of the selected item</emphasis>
++color sidebar_indicator cyan black
+ <emphasis role="comment"># Color of the highlighted, but not open, mailbox.</emphasis>
+ color sidebar_highlight black color8
+ <emphasis role="comment"># Color of the divider separating the Sidebar from NeoMutt panels</emphasis>
+@@ -16440,6 +16644,10 @@ color sidebar_flagged red black
+ color sidebar_new green black
+ <emphasis role="comment"># Color to give mailboxes containing no new/flagged mail, etc.</emphasis>
+ color sidebar_ordinary color245 default
++<emphasis role="comment"># Color to give the spoolfile mailbox</emphasis>
++color sidebar_spoolfile color207 default
++<emphasis role="comment"># Color to give mailboxes containing no unread mail</emphasis>
++color sidebar_unread color136 default
+ <emphasis role="comment"># --------------------------------------------------------------------------</emphasis>
+
+ <emphasis role="comment"># vim: syntax=neomuttrc</emphasis>
+@@ -17505,9 +17713,18 @@ folder-hook ^pop 'set read_inc=1'
+ will be gone for the next session.)
+ </para>
+ <para>
+- To improve performance and permanently cache whole messages, please
+- refer to NeoMutt's so-called
+- <link linkend="body-caching">body caching</link> for details.
++ To improve performance and permanently cache whole messages and
++ headers, please refer to <link linkend="body-caching">body caching</link>
++ and <link linkend="header-caching">header caching</link> for details.
++ </para>
++ <para>
++ Additionally, it may be worth trying some of NeoMutt's experimental
++ features. <link linkend="imap-qresync">$imap_qresync</link> (which
++ requires header caching) can provide a huge speed boost opening
++ mailboxes if your IMAP server supports it.
++ <link linkend="imap-deflate">$imap_deflate</link> enables compression,
++ which can also noticeably reduce download time for large mailboxes and
++ messages.
+ </para>
+ </sect1>
+
+diff --git a/doc/neomuttrc.man.head b/doc/neomuttrc.man.head
+index b8571181d..5700e632b 100644
+--- a/doc/neomuttrc.man.head
++++ b/doc/neomuttrc.man.head
+@@ -1065,6 +1065,10 @@ _
+ messages which contain \fIEXPR\fP in their keywords
+ T}
+ _
++\0~Y \fIEXPR\fP|T{
++messages whose tags match \fIEXPR\fP
++T}
++_
+ \0~z \fIMIN\fP-\fIMAX\fP|T{
+ messages with a size in the range \fIMIN\fP to \fIMAX\fP \fB**\fP) \fB***\fP)
+ T}
+@@ -1261,6 +1265,8 @@ Limit to messages matching:
+ .IR \fB~d\fP\~20 / 1 / 95 - 31 / 10
+ .
+ .PP
++Alternatively, you may use \fIYYYYMMDD\fP to specify a date.
++.PP
+ When given a two-digit year, NeoMutt will interpret values less than \(lq70\(rq
+ as lying in the 21st century (i.e., \(lq38\(rq means 2038 and not 1938, and
+ \(lq00\(rq is interpreted as 2000), and values greater than or equal to
+diff --git a/doxygen/doxygen.conf b/doxygen/doxygen.conf
+index 214915f03..ea3749561 100644
+--- a/doxygen/doxygen.conf
++++ b/doxygen/doxygen.conf
+@@ -1418,14 +1418,18 @@ PREDEFINED = \
+ HAVE_GDBM \
+ HAVE_KC \
+ HAVE_LMDB \
++ HAVE_LZ4 \
+ HAVE_QDBM \
+ HAVE_TC \
++ HAVE_ZLIB \
++ HAVE_ZSTD \
+ SUN_ATTACHMENT \
+ USE_AUTOCRYPT \
+ USE_COMPRESSED \
+ USE_FCNTL \
+ USE_GSS \
+ USE_HCACHE \
++ USE_HCACHE_COMPRESSION \
+ USE_IMAP \
+ USE_INOTIFY \
+ USE_LUA \
+diff --git a/edit.c b/edit.c
+index 5b1dcc7aa..b53285374 100644
+--- a/edit.c
++++ b/edit.c
+@@ -37,20 +37,18 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "edit.h"
+ #include "alias.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "hdrline.h"
+-#include "mutt_curses.h"
+ #include "mutt_header.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "protos.h"
+
+@@ -276,7 +274,7 @@ static void be_print_header(struct Envelope *env)
+ {
+ mutt_window_addstr("To: ");
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &env->to, true);
++ mutt_addrlist_write(&env->to, tmp, sizeof(tmp), true);
+ mutt_window_addstr(tmp);
+ mutt_window_addch('\n');
+ }
+@@ -284,7 +282,7 @@ static void be_print_header(struct Envelope *env)
+ {
+ mutt_window_addstr("Cc: ");
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &env->cc, true);
++ mutt_addrlist_write(&env->cc, tmp, sizeof(tmp), true);
+ mutt_window_addstr(tmp);
+ mutt_window_addch('\n');
+ }
+@@ -292,7 +290,7 @@ static void be_print_header(struct Envelope *env)
+ {
+ mutt_window_addstr("Bcc: ");
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &env->bcc, true);
++ mutt_addrlist_write(&env->bcc, tmp, sizeof(tmp), true);
+ mutt_window_addstr(tmp);
+ mutt_window_addch('\n');
+ }
+@@ -319,7 +317,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_window_addstr("To: ");
+ tmp[0] = '\0';
+ mutt_addrlist_to_local(&e->to);
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->to, false);
++ mutt_addrlist_write(&e->to, tmp, sizeof(tmp), false);
+ if (TAILQ_EMPTY(&e->to) || force)
+ {
+ if (mutt_enter_string(tmp, sizeof(tmp), 4, MUTT_COMP_NO_FLAGS) == 0)
+@@ -329,7 +327,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_expand_aliases(&e->to);
+ mutt_addrlist_to_intl(&e->to, NULL); /* XXX - IDNA error reporting? */
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->to, true);
++ mutt_addrlist_write(&e->to, tmp, sizeof(tmp), true);
+ mutt_window_mvaddstr(MuttMessageWindow, 0, 4, tmp);
+ }
+ }
+@@ -354,7 +352,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_window_addstr("Cc: ");
+ tmp[0] = '\0';
+ mutt_addrlist_to_local(&e->cc);
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->cc, false);
++ mutt_addrlist_write(&e->cc, tmp, sizeof(tmp), false);
+ if (mutt_enter_string(tmp, sizeof(tmp), 4, MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_addrlist_clear(&e->cc);
+@@ -362,7 +360,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_expand_aliases(&e->cc);
+ tmp[0] = '\0';
+ mutt_addrlist_to_intl(&e->cc, NULL);
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->cc, true);
++ mutt_addrlist_write(&e->cc, tmp, sizeof(tmp), true);
+ mutt_window_mvaddstr(MuttMessageWindow, 0, 4, tmp);
+ }
+ else
+@@ -375,7 +373,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_window_addstr("Bcc: ");
+ tmp[0] = '\0';
+ mutt_addrlist_to_local(&e->bcc);
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->bcc, false);
++ mutt_addrlist_write(&e->bcc, tmp, sizeof(tmp), false);
+ if (mutt_enter_string(tmp, sizeof(tmp), 5, MUTT_COMP_NO_FLAGS) == 0)
+ {
+ mutt_addrlist_clear(&e->bcc);
+@@ -383,7 +381,7 @@ static void be_edit_header(struct Envelope *e, bool force)
+ mutt_expand_aliases(&e->bcc);
+ mutt_addrlist_to_intl(&e->bcc, NULL);
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->bcc, true);
++ mutt_addrlist_write(&e->bcc, tmp, sizeof(tmp), true);
+ mutt_window_mvaddstr(MuttMessageWindow, 0, 5, tmp);
+ }
+ else
+diff --git a/editmsg.c b/editmsg.c
+index df517d0e7..a97efbf0b 100644
+--- a/editmsg.c
++++ b/editmsg.c
+@@ -34,13 +34,13 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "muttlib.h"
+ #include "mx.h"
+diff --git a/email/attach.c b/email/attach.c
+index b4cc1f053..152b7c4cf 100644
+--- a/email/attach.c
++++ b/email/attach.c
+@@ -28,7 +28,7 @@
+ */
+
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "attach.h"
+ #include "body.h"
+
+diff --git a/email/body.c b/email/body.c
+index de3d2d1aa..139496d4f 100644
+--- a/email/body.c
++++ b/email/body.c
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "body.h"
+ #include "email.h"
+ #include "envelope.h"
+diff --git a/email/email.c b/email/email.c
+index f8935c08c..afc255372 100644
+--- a/email/email.c
++++ b/email/email.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email.h"
+ #include "body.h"
+ #include "envelope.h"
+diff --git a/email/email.h b/email/email.h
+index dfe9b7269..548c69869 100644
+--- a/email/email.h
++++ b/email/email.h
+@@ -27,8 +27,8 @@
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
+-#include "ncrypt/ncrypt.h"
++#include "mutt/lib.h"
++#include "ncrypt/lib.h"
+ #include "tags.h"
+
+ /**
+@@ -37,7 +37,7 @@
+ struct Email
+ {
+ SecurityFlags security; ///< bit 0-10: flags, bit 11,12: application, bit 13: traditional pgp
+- ///< See: ncrypt/ncrypt.h pgplib.h, smime.h
++ ///< See: ncrypt/lib.h pgplib.h, smime.h
+
+ bool mime : 1; ///< Has a MIME-Version header?
+ bool flagged : 1; ///< Marked important?
+@@ -103,9 +103,9 @@ struct Email
+
+ char *maildir_flags; ///< Unknown maildir flags
+
+- void *edata; ///< Driver-specific data
+- void (*free_edata)(void **); ///< Driver-specific data free function
+- struct Notify *notify; ///< Notifications handler
++ void *edata; ///< Driver-specific data
++ void (*free_edata)(void **ptr); ///< Driver-specific data free function
++ struct Notify *notify; ///< Notifications handler
+ };
+
+ /**
+diff --git a/email/email_globals.c b/email/email_globals.c
+index 25857c32f..412759dfe 100644
+--- a/email/email_globals.c
++++ b/email/email_globals.c
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /* Config items */
+ bool C_AutoSubscribe; ///< Config: Automatically check if the user is subscribed to a mailing list
+diff --git a/email/email_globals.h b/email/email_globals.h
+index 31fe562f6..ced4e5cf4 100644
+--- a/email/email_globals.h
++++ b/email/email_globals.h
+@@ -24,7 +24,7 @@
+ #define MUTT_EMAIL_EMAIL_GLOBALS_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /* Config items */
+ extern bool C_AutoSubscribe;
+@@ -39,7 +39,7 @@ extern struct ListHead Ignore; ///< List of header patterns to igno
+ extern struct RegexList NoSpamList; ///< List of regexes to whitelist non-spam emails
+ extern struct ReplaceList SpamList; ///< List of regexes and patterns to match spam emails
+ extern struct ListHead UnIgnore; ///< List of header patterns to unignore (see)
+-extern struct ListHead MailToAllow; ///< List of permitted fields in a mailto: uri
++extern struct ListHead MailToAllow; ///< List of permitted fields in a mailto: url
+ extern struct Hash *AutoSubscribeCache; ///< Hash table of auto-subscribed mailing lists
+ extern struct RegexList UnSubscribedLists; ///< List of regexes to blacklist false matches in SubscribedLists
+ extern struct RegexList MailLists; ///< List of regexes to match mailing lists
+diff --git a/email/envelope.c b/email/envelope.c
+index ab3e8414a..a3e8c67d5 100644
+--- a/email/envelope.c
++++ b/email/envelope.c
+@@ -31,7 +31,7 @@
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "envelope.h"
+
+diff --git a/email/envelope.h b/email/envelope.h
+index 0d5b22d78..54ff270fa 100644
+--- a/email/envelope.h
++++ b/email/envelope.h
+@@ -26,7 +26,7 @@
+
+ #include "config.h"
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ #define MUTT_ENV_CHANGED_IRT (1 << 0) ///< In-Reply-To changed to link/break threads
+diff --git a/email/from.c b/email/from.c
+index 4266d652c..5637a8620 100644
+--- a/email/from.c
++++ b/email/from.c
+@@ -32,7 +32,7 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "from.h"
+
+ /**
+diff --git a/email/from.h b/email/from.h
+index 423c41b28..0f6dfde12 100644
+--- a/email/from.h
++++ b/email/from.h
+@@ -23,8 +23,8 @@
+ #ifndef MUTT_EMAIL_FROM_H
+ #define MUTT_EMAIL_FROM_H
+
+-#include <stdio.h>
+ #include <stdbool.h>
++#include <stdio.h>
+ #include <time.h>
+
+ bool is_from(const char *s, char *path, size_t pathlen, time_t *tp);
+diff --git a/email/parameter.c b/email/parameter.c
+index f7e967be7..c63ddffa3 100644
+--- a/email/parameter.c
++++ b/email/parameter.c
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "parameter.h"
+
+ /**
+diff --git a/email/parameter.h b/email/parameter.h
+index b609478b8..983a409f6 100644
+--- a/email/parameter.h
++++ b/email/parameter.h
+@@ -24,7 +24,7 @@
+ #define MUTT_EMAIL_PARAMETER_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * struct Parameter - Attribute associated with a MIME part
+diff --git a/email/parse.c b/email/parse.c
+index 50ee289a7..e5725f5d0 100644
+--- a/email/parse.c
++++ b/email/parse.c
+@@ -32,7 +32,7 @@
+ #include <regex.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "mutt.h"
+ #include "parse.h"
+@@ -50,7 +50,7 @@
+ #include "globals.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* If the 'Content-Length' is bigger than 1GiB, then it's clearly wrong.
+@@ -59,7 +59,7 @@
+
+ /**
+ * mutt_auto_subscribe - Check if user is subscribed to mailing list
+- * @param mailto URI of mailing list subscribe
++ * @param mailto URL of mailing list subscribe
+ */
+ void mutt_auto_subscribe(const char *mailto)
+ {
+diff --git a/email/rfc2047.c b/email/rfc2047.c
+index d1c94575d..bdf0d3ef0 100644
+--- a/email/rfc2047.c
++++ b/email/rfc2047.c
+@@ -35,7 +35,7 @@
+ #include <regex.h>
+ #include <stdbool.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "rfc2047.h"
+ #include "email_globals.h"
+diff --git a/email/rfc2231.c b/email/rfc2231.c
+index 58ef53b42..3978ce785 100644
+--- a/email/rfc2231.c
++++ b/email/rfc2231.c
+@@ -38,7 +38,7 @@
+ #include <stdbool.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "rfc2231.h"
+ #include "email_globals.h"
+ #include "mime.h"
+diff --git a/email/tags.c b/email/tags.c
+index 21ad0506f..20f85a927 100644
+--- a/email/tags.c
++++ b/email/tags.c
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "tags.h"
+
+ /* These Config Variables are only used in email/tags.c */
+diff --git a/email/tags.h b/email/tags.h
+index 6e3aa518c..71cd60ece 100644
+--- a/email/tags.h
++++ b/email/tags.h
+@@ -24,7 +24,7 @@
+ #define MUTT_EMAIL_TAGS_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /* These Config Variables are only used in email/tags.c */
+ extern struct Slist *C_HiddenTags;
+diff --git a/email/thread.c b/email/thread.c
+index bb089ba8b..62ac5a5d1 100644
+--- a/email/thread.c
++++ b/email/thread.c
+@@ -30,7 +30,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "thread.h"
+ #include "email.h"
+ #include "envelope.h"
+diff --git a/email/url.c b/email/url.c
+index 4abc4e1d6..2516bc1ac 100644
+--- a/email/url.c
++++ b/email/url.c
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <ctype.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "url.h"
+ #include "mime.h"
+
+@@ -150,6 +150,44 @@ enum UrlScheme url_check_scheme(const char *s)
+ return (enum UrlScheme) i;
+ }
+
++/**
++ * url_free - Free the contents of a URL
++ * @param ptr Url to free
++ */
++void url_free(struct Url **ptr)
++{
++ if (!ptr || !*ptr)
++ return;
++
++ struct Url *url = *ptr;
++
++ struct UrlQuery *np = NULL;
++ struct UrlQuery *tmp = NULL;
++ STAILQ_FOREACH_SAFE(np, &url->query_strings, entries, tmp)
++ {
++ STAILQ_REMOVE(&url->query_strings, np, UrlQuery, entries);
++ // Don't free 'name', 'value': they are pointers into the 'src' string
++ FREE(&np);
++ }
++
++ FREE(&url->src);
++ FREE(ptr);
++}
++
++/**
++ * url_new - Create a Url
++ * @retval ptr New Url
++ */
++struct Url *url_new(void)
++{
++ struct Url *url = mutt_mem_calloc(1, sizeof(struct Url));
++
++ url->scheme = U_UNKNOWN;
++ STAILQ_INIT(&url->query_strings);
++
++ return url;
++}
++
+ /**
+ * url_parse - Fill in Url
+ * @param src String to parse
+@@ -169,41 +207,34 @@ struct Url *url_parse(const char *src)
+
+ char *p = NULL;
+ size_t srcsize = strlen(src) + 1;
+- struct Url *u = mutt_mem_calloc(1, sizeof(struct Url) + srcsize);
++ struct Url *url = url_new();
+
+- u->scheme = scheme;
+- u->user = NULL;
+- u->pass = NULL;
+- u->host = NULL;
+- u->port = 0;
+- u->path = NULL;
+- STAILQ_INIT(&u->query_strings);
+- u->src = (char *) u + sizeof(struct Url);
+- mutt_str_strfcpy(u->src, src, srcsize);
++ url->scheme = scheme;
++ url->src = mutt_str_strdup(src);
+
+- char *it = u->src;
++ char *it = url->src;
+
+ it = strchr(it, ':') + 1;
+
+ if (strncmp(it, "//", 2) != 0)
+ {
+- u->path = it;
+- if (url_pct_decode(u->path) < 0)
++ url->path = it;
++ if (url_pct_decode(url->path) < 0)
+ {
+- url_free(&u);
++ url_free(&url);
+ }
+- return u;
++ return url;
+ }
+
+ it += 2;
+
+ /* We have the length of the string, so let's be fancier than strrchr */
+- for (char *q = u->src + srcsize - 1; q >= it; --q)
++ for (char *q = url->src + srcsize - 1; q >= it; --q)
+ {
+ if (*q == '?')
+ {
+ *q = '\0';
+- if (parse_query_string(&u->query_strings, q + 1) < 0)
++ if (parse_query_string(&url->query_strings, q + 1) < 0)
+ {
+ goto err;
+ }
+@@ -211,11 +242,11 @@ struct Url *url_parse(const char *src)
+ }
+ }
+
+- u->path = strchr(it, '/');
+- if (u->path)
++ url->path = strchr(it, '/');
++ if (url->path)
+ {
+- *u->path++ = '\0';
+- if (url_pct_decode(u->path) < 0)
++ *url->path++ = '\0';
++ if (url_pct_decode(url->path) < 0)
+ goto err;
+ }
+
+@@ -227,12 +258,12 @@ struct Url *url_parse(const char *src)
+ if (p)
+ {
+ *p = '\0';
+- u->pass = p + 1;
+- if (url_pct_decode(u->pass) < 0)
++ url->pass = p + 1;
++ if (url_pct_decode(url->pass) < 0)
+ goto err;
+ }
+- u->user = it;
+- if (url_pct_decode(u->user) < 0)
++ url->user = it;
++ if (url_pct_decode(url->user) < 0)
+ goto err;
+ it = at + 1;
+ }
+@@ -254,56 +285,31 @@ struct Url *url_parse(const char *src)
+ *p++ = '\0';
+ if ((mutt_str_atoi(p, &num) < 0) || (num < 0) || (num > 0xffff))
+ goto err;
+- u->port = (unsigned short) num;
++ url->port = (unsigned short) num;
+ }
+ else
+- u->port = 0;
++ url->port = 0;
+
+ if (mutt_str_strlen(it) != 0)
+ {
+- u->host = it;
+- if (url_pct_decode(u->host) < 0)
++ url->host = it;
++ if (url_pct_decode(url->host) < 0)
+ goto err;
+ }
+- else if (u->path)
++ else if (url->path)
+ {
+ /* No host are provided, we restore the / because this is absolute path */
+- u->path = it;
++ url->path = it;
+ *it++ = '/';
+ }
+
+- return u;
++ return url;
+
+ err:
+- url_free(&u);
++ url_free(&url);
+ return NULL;
+ }
+
+-/**
+- * url_free - Free the contents of a URL
+- * @param[out] u Url to empty
+- *
+- * @note The Url itself is not freed
+- */
+-void url_free(struct Url **u)
+-{
+- if (!u || !*u)
+- return;
+-
+- struct UrlQuery *np = STAILQ_FIRST(&(*u)->query_strings);
+- struct UrlQuery *next = NULL;
+- while (np)
+- {
+- next = STAILQ_NEXT(np, entries);
+- /* NOTE(sileht): We don't free members, they will be freed when
+- * the src char* passed to url_parse() is freed */
+- FREE(&np);
+- np = next;
+- }
+- STAILQ_INIT(&(*u)->query_strings);
+- FREE(u);
+-}
+-
+ /**
+ * url_pct_encode - Percent-encode a string
+ * @param buf Buffer for the result
+@@ -323,7 +329,7 @@ void url_pct_encode(char *buf, size_t buflen, const char *src)
+ buflen--;
+ while (src && *src && (buflen != 0))
+ {
+- if (strchr("/:&%", *src))
++ if (strchr("/:&%=", *src))
+ {
+ if (buflen < 3)
+ break;
+@@ -343,67 +349,85 @@ void url_pct_encode(char *buf, size_t buflen, const char *src)
+
+ /**
+ * url_tobuffer - Output the URL string for a given Url object
+- * @param u Url to turn into a string
++ * @param url Url to turn into a string
+ * @param buf Buffer for the result
+ * @param flags Flags, e.g. #U_PATH
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+-int url_tobuffer(struct Url *u, struct Buffer *buf, int flags)
++int url_tobuffer(struct Url *url, struct Buffer *buf, int flags)
+ {
+- if (!u || !buf)
++ if (!url || !buf)
+ return -1;
+- if (u->scheme == U_UNKNOWN)
++ if (url->scheme == U_UNKNOWN)
+ return -1;
+
+- mutt_buffer_printf(buf, "%s:", mutt_map_get_name(u->scheme, UrlMap));
++ mutt_buffer_printf(buf, "%s:", mutt_map_get_name(url->scheme, UrlMap));
+
+- if (u->host)
++ if (url->host)
+ {
+ if (!(flags & U_PATH))
+ mutt_buffer_addstr(buf, "//");
+
+- if (u->user && (u->user[0] || !(flags & U_PATH)))
++ if (url->user && (url->user[0] || !(flags & U_PATH)))
+ {
+ char str[256];
+- url_pct_encode(str, sizeof(str), u->user);
++ url_pct_encode(str, sizeof(str), url->user);
+ mutt_buffer_add_printf(buf, "%s@", str);
+ }
+
+- if (strchr(u->host, ':'))
+- mutt_buffer_add_printf(buf, "[%s]", u->host);
++ if (strchr(url->host, ':'))
++ mutt_buffer_add_printf(buf, "[%s]", url->host);
+ else
+- mutt_buffer_add_printf(buf, "%s", u->host);
++ mutt_buffer_add_printf(buf, "%s", url->host);
+
+- if (u->port)
+- mutt_buffer_add_printf(buf, ":%hu/", u->port);
++ if (url->port)
++ mutt_buffer_add_printf(buf, ":%hu/", url->port);
+ else
+ mutt_buffer_addstr(buf, "/");
+ }
+
+- if (u->path)
+- mutt_buffer_addstr(buf, u->path);
++ if (url->path)
++ mutt_buffer_addstr(buf, url->path);
++
++ if (STAILQ_FIRST(&url->query_strings))
++ {
++ mutt_buffer_addstr(buf, "?");
++
++ char str[256];
++ struct UrlQuery *np = NULL;
++ STAILQ_FOREACH(np, &url->query_strings, entries)
++ {
++ url_pct_encode(str, sizeof(str), np->name);
++ mutt_buffer_addstr(buf, str);
++ mutt_buffer_addstr(buf, "=");
++ url_pct_encode(str, sizeof(str), np->value);
++ mutt_buffer_addstr(buf, str);
++ if (STAILQ_NEXT(np, entries))
++ mutt_buffer_addstr(buf, "&");
++ }
++ }
+
+ return 0;
+ }
+
+ /**
+ * url_tostring - Output the URL string for a given Url object
+- * @param u Url to turn into a string
++ * @param url Url to turn into a string
+ * @param dest Buffer for the result
+ * @param len Length of buffer
+ * @param flags Flags, e.g. #U_PATH
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+-int url_tostring(struct Url *u, char *dest, size_t len, int flags)
++int url_tostring(struct Url *url, char *dest, size_t len, int flags)
+ {
+- if (!u || !dest)
++ if (!url || !dest)
+ return -1;
+
+ struct Buffer *dest_buf = mutt_buffer_pool_get();
+
+- int retval = url_tobuffer(u, dest_buf, flags);
++ int retval = url_tobuffer(url, dest_buf, flags);
+ if (retval == 0)
+ mutt_str_strfcpy(dest, mutt_b2s(dest_buf), len);
+
+diff --git a/email/url.h b/email/url.h
+index 9050402be..144e7d3fe 100644
+--- a/email/url.h
++++ b/email/url.h
+@@ -24,7 +24,7 @@
+ #define MUTT_EMAIL_URL_H
+
+ #include <stddef.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * enum UrlScheme - All recognised Url types
+@@ -76,11 +76,12 @@ struct Url
+ };
+
+ enum UrlScheme url_check_scheme(const char *s);
+-void url_free (struct Url **u);
++void url_free (struct Url **ptr);
++struct Url * url_new (void);
+ struct Url *url_parse (const char *src);
+ int url_pct_decode (char *s);
+ void url_pct_encode (char *buf, size_t buflen, const char *src);
+-int url_tobuffer (struct Url *u, struct Buffer *dest, int flags);
+-int url_tostring (struct Url *u, char *buf, size_t buflen, int flags);
++int url_tobuffer (struct Url *url, struct Buffer *dest, int flags);
++int url_tostring (struct Url *url, char *buf, size_t buflen, int flags);
+
+ #endif /* MUTT_EMAIL_URL_H */
+diff --git a/enriched.c b/enriched.c
+index e2b0488b8..b0ac6406f 100644
+--- a/enriched.c
++++ b/enriched.c
+@@ -36,7 +36,7 @@
+ #include <stdio.h>
+ #include <wchar.h>
+ #include <wctype.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "enriched.h"
+ #include "state.h"
+diff --git a/enter.c b/enter.c
+index 40c743fa4..1347f22ee 100644
+--- a/enter.c
++++ b/enter.c
+@@ -33,19 +33,18 @@
+ #include <string.h>
+ #include <wchar.h>
+ #include <wctype.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "alias.h"
+ #include "browser.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "enter_state.h"
+ #include "globals.h"
++#include "init.h"
+ #include "keymap.h"
+-#include "mutt_curses.h"
+ #include "mutt_history.h"
+ #include "mutt_mailbox.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+ #include "protos.h"
+@@ -179,7 +178,7 @@ int mutt_enter_string_full(char *buf, size_t buflen, int col,
+ CompletionFlags flags, bool multiple, char ***files,
+ int *numfiles, struct EnterState *state)
+ {
+- int width = MuttMessageWindow->cols - col - 1;
++ int width = MuttMessageWindow->state.cols - col - 1;
+ enum EnterRedrawFlags redraw = ENTER_REDRAW_NONE;
+ bool pass = (flags & MUTT_PASS);
+ bool first = true;
+@@ -305,7 +304,7 @@ int mutt_enter_string_full(char *buf, size_t buflen, int col,
+ if (state->curpos == 0)
+ {
+ // Pressing backspace when no text is in the command prompt should exit the prompt
+- if (state->lastchar == 0)
++ if (C_AbortBackspace && (state->lastchar == 0))
+ goto bye;
+ // Pressing backspace with text in the command prompt should just beep
+ mutt_beep(false);
+diff --git a/flags.c b/flags.c
+index 1d2e8505b..4872e6eb2 100644
+--- a/flags.c
++++ b/flags.c
+@@ -29,18 +29,17 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "index.h"
+ #include "keymap.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "protos.h"
+ #include "sort.h"
+
+diff --git a/format_flags.h b/format_flags.h
+index 170a97383..32392965e 100644
+--- a/format_flags.h
++++ b/format_flags.h
+@@ -58,9 +58,9 @@ typedef uint8_t MuttFormatFlags; ///< Flags for mutt_expando_format(), e
+ * |:--------|:-----------
+ * | \%t | Title
+ */
+-typedef const char *format_t(char *buf, size_t buflen, size_t col, int cols,
+- char op, const char *src, const char *prec,
+- const char *if_str, const char *else_str,
+- unsigned long data, MuttFormatFlags flags);
++typedef const char *(format_t)(char *buf, size_t buflen, size_t col, int cols,
++ char op, const char *src, const char *prec,
++ const char *if_str, const char *else_str,
++ unsigned long data, MuttFormatFlags flags);
+
+ #endif /* MUTT_FORMAT_FLAGS_H */
+diff --git a/functions.c b/functions.c
+new file mode 100644
+index 000000000..ff1646290
+--- /dev/null
++++ b/functions.c
+@@ -0,0 +1,682 @@
++/**
++ * @file
++ * Definitions of user functions
++ *
++ * @authors
++ * Copyright (C) 1996-2000,2002 Michael R. Elkins <me@mutt.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page functions Definitions of user functions
++ *
++ * Definitions of user functions
++ */
++
++#include "config.h"
++#ifdef _MAKEDOC
++#include "doc/makedoc_defs.h"
++#else
++#include <stddef.h>
++#include "keymap.h"
++#include "opcodes.h"
++#endif
++
++/*
++ * This file contains the structures needed to parse "bind" commands, as
++ * well as the default bindings for each menu.
++ *
++ * Notes:
++ *
++ * - If you need to bind a control char, use the octal value because the \cX
++ * construct does not work at this level.
++ *
++ * - The magic "map:" comments define how the map will be called in the
++ * manual. Lines starting with "**" will be included in the manual.
++ */
++
++// clang-format off
++/**
++ * OpGeneric - Key bindings for the generic menu
++ */
++const struct Binding OpGeneric[] = { /* map: generic */
++ /*
++ ** <para>
++ ** The <emphasis>generic</emphasis> menu is not a real menu, but specifies common functions
++ ** (such as movement) available in all menus except for <emphasis>pager</emphasis> and
++ ** <emphasis>editor</emphasis>. Changing settings for this menu will affect the default
++ ** bindings for all menus (except as noted).
++ ** </para>
++ */
++ { "bottom-page", OP_BOTTOM_PAGE, "L" },
++ { "check-stats", OP_CHECK_STATS, NULL },
++ { "current-bottom", OP_CURRENT_BOTTOM, NULL },
++ { "current-middle", OP_CURRENT_MIDDLE, NULL },
++ { "current-top", OP_CURRENT_TOP, NULL },
++ { "end-cond", OP_END_COND, NULL },
++ { "enter-command", OP_ENTER_COMMAND, ":" },
++ { "exit", OP_EXIT, "q" },
++ { "first-entry", OP_FIRST_ENTRY, "=" },
++ { "half-down", OP_HALF_DOWN, "]" },
++ { "half-up", OP_HALF_UP, "[" },
++ { "help", OP_HELP, "?" },
++ { "jump", OP_JUMP, NULL },
++ { "last-entry", OP_LAST_ENTRY, "*" },
++ { "middle-page", OP_MIDDLE_PAGE, "M" },
++ { "next-entry", OP_NEXT_ENTRY, "j" },
++ { "next-line", OP_NEXT_LINE, ">" },
++ { "next-page", OP_NEXT_PAGE, "z" },
++ { "previous-entry", OP_PREV_ENTRY, "k" },
++ { "previous-line", OP_PREV_LINE, "<" },
++ { "previous-page", OP_PREV_PAGE, "Z" },
++ { "refresh", OP_REDRAW, "\014" }, // <Ctrl-L>
++ { "search", OP_SEARCH, "/" },
++ { "search-next", OP_SEARCH_NEXT, "n" },
++ { "search-opposite", OP_SEARCH_OPPOSITE, NULL },
++ { "search-reverse", OP_SEARCH_REVERSE, "\033/" }, // <Alt-/>
++ { "select-entry", OP_GENERIC_SELECT_ENTRY, "\n" },
++ { "select-entry", OP_GENERIC_SELECT_ENTRY, "\r" },
++ { "shell-escape", OP_SHELL_ESCAPE, "!" },
++ { "tag-entry", OP_TAG, "t" },
++ { "tag-prefix", OP_TAG_PREFIX, ";" },
++ { "tag-prefix-cond", OP_TAG_PREFIX_COND, NULL },
++ { "top-page", OP_TOP_PAGE, "H" },
++ { "what-key", OP_WHAT_KEY, NULL },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpMain - Key bindings for the index menu
++ */
++const struct Binding OpMain[] = { /* map: index */
++#ifdef USE_AUTOCRYPT
++ { "autocrypt-acct-menu", OP_AUTOCRYPT_ACCT_MENU, "A" },
++#endif
++ { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
++ { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
++#ifdef USE_NNTP
++ { "catchup", OP_CATCHUP, NULL },
++#endif
++ { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
++ { "change-folder-readonly", OP_MAIN_CHANGE_FOLDER_READONLY, "\033c" }, // <Alt-c>
++#ifdef USE_NNTP
++ { "change-newsgroup", OP_MAIN_CHANGE_GROUP, "i" },
++ { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY, "\033i" }, // <Alt-i>
++#endif
++#ifdef USE_NOTMUCH
++ { "change-vfolder", OP_MAIN_CHANGE_VFOLDER, NULL },
++#endif
++ { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
++ { "clear-flag", OP_MAIN_CLEAR_FLAG, "W" },
++ { "collapse-all", OP_MAIN_COLLAPSE_ALL, "\033V" }, // <Alt-V>
++ { "collapse-thread", OP_MAIN_COLLAPSE_THREAD, "\033v" }, // <Alt-v>
++ { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
++ { "copy-message", OP_COPY_MESSAGE, "C" },
++ { "create-alias", OP_CREATE_ALIAS, "a" },
++ { "decode-copy", OP_DECODE_COPY, "\033C" }, // <Alt-C>
++ { "decode-save", OP_DECODE_SAVE, "\033s" }, // <Alt-s>
++ { "decrypt-copy", OP_DECRYPT_COPY, NULL },
++ { "decrypt-save", OP_DECRYPT_SAVE, NULL },
++ { "delete-message", OP_DELETE, "d" },
++ { "delete-pattern", OP_MAIN_DELETE_PATTERN, "D" },
++ { "delete-subthread", OP_DELETE_SUBTHREAD, "\033d" }, // <Alt-d>
++ { "delete-thread", OP_DELETE_THREAD, "\004" }, // <Ctrl-D>
++ { "display-address", OP_DISPLAY_ADDRESS, "@" },
++ { "display-message", OP_DISPLAY_MESSAGE, "\n" }, // <Enter>
++ { "display-message", OP_DISPLAY_MESSAGE, "\r" },
++ { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
++ { "edit", OP_EDIT_RAW_MESSAGE, NULL },
++ { "edit-label", OP_EDIT_LABEL, "Y" },
++ { "edit-or-view-raw-message", OP_EDIT_OR_VIEW_RAW_MESSAGE, "e" },
++ { "edit-raw-message", OP_EDIT_RAW_MESSAGE, NULL },
++ { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
++#ifdef USE_NOTMUCH
++ { "entire-thread", OP_MAIN_ENTIRE_THREAD, NULL },
++#endif
++ { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
++#ifdef USE_POP
++ { "fetch-mail", OP_MAIN_FETCH_MAIL, "G" },
++#endif
++ { "flag-message", OP_FLAG_MESSAGE, "F" },
++#ifdef USE_NNTP
++ { "followup-message", OP_FOLLOWUP, NULL },
++#endif
++ { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
++ { "forward-message", OP_FORWARD_MESSAGE, "f" },
++#ifdef USE_NNTP
++ { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
++ { "get-children", OP_GET_CHILDREN, NULL },
++ { "get-message", OP_GET_MESSAGE, NULL },
++ { "get-parent", OP_GET_PARENT, NULL },
++#endif
++ { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
++ { "group-reply", OP_GROUP_REPLY, "g" },
++#ifdef USE_IMAP
++ { "imap-fetch-mail", OP_MAIN_IMAP_FETCH, NULL },
++ { "imap-logout-all", OP_MAIN_IMAP_LOGOUT_ALL, NULL },
++#endif
++ { "limit", OP_MAIN_LIMIT, "l" },
++ { "limit-current-thread", OP_LIMIT_CURRENT_THREAD, NULL },
++ { "link-threads", OP_MAIN_LINK_THREADS, "&" },
++ { "list-reply", OP_LIST_REPLY, "L" },
++ { "mail", OP_MAIL, "m" },
++ { "mail-key", OP_MAIL_KEY, "\033k" }, // <Alt-k>
++ { "mailbox-list", OP_MAILBOX_LIST, "." },
++ { "mark-message", OP_MARK_MSG, "~" },
++ { "modify-labels", OP_MAIN_MODIFY_TAGS, NULL }, // NOTE(sileht): kept for backward compatibility
++ { "modify-labels-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL }, // NOTE(sileht): kept for backward compatibility
++ { "modify-tags", OP_MAIN_MODIFY_TAGS, NULL },
++ { "modify-tags-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL },
++ { "next-new", OP_MAIN_NEXT_NEW, NULL },
++ { "next-new-then-unread", OP_MAIN_NEXT_NEW_THEN_UNREAD, "\t" },
++ { "next-subthread", OP_MAIN_NEXT_SUBTHREAD, "\033n" }, // <Alt-n>
++ { "next-thread", OP_MAIN_NEXT_THREAD, "\016" }, // <Ctrl-N>
++ { "next-undeleted", OP_MAIN_NEXT_UNDELETED, "j" },
++ { "next-unread", OP_MAIN_NEXT_UNREAD, NULL },
++ { "next-unread-mailbox", OP_MAIN_NEXT_UNREAD_MAILBOX, NULL },
++ { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" },
++ { "pipe-message", OP_PIPE, "|" },
++#ifdef USE_NNTP
++ { "post-message", OP_POST, NULL },
++#endif
++ { "previous-new", OP_MAIN_PREV_NEW, NULL },
++ { "previous-new-then-unread", OP_MAIN_PREV_NEW_THEN_UNREAD, "\033\t" }, // <Alt-\>
++ { "previous-subthread", OP_MAIN_PREV_SUBTHREAD, "\033p" }, // <Alt-p>
++ { "previous-thread", OP_MAIN_PREV_THREAD, "\020" }, // <Ctrl-P>
++ { "previous-undeleted", OP_MAIN_PREV_UNDELETED, "k" },
++ { "previous-unread", OP_MAIN_PREV_UNREAD, NULL },
++ { "print-message", OP_PRINT, "p" },
++ { "purge-message", OP_PURGE_MESSAGE, NULL },
++ { "purge-thread", OP_PURGE_THREAD, NULL },
++ { "quasi-delete", OP_MAIN_QUASI_DELETE, NULL },
++ { "query", OP_QUERY, "Q" },
++ { "quit", OP_QUIT, "q" },
++ { "read-subthread", OP_MAIN_READ_SUBTHREAD, "\033r" }, // <Alt-r>
++ { "read-thread", OP_MAIN_READ_THREAD, "\022" }, // <Ctrl-R>
++ { "recall-message", OP_RECALL_MESSAGE, "R" },
++#ifdef USE_NNTP
++ { "reconstruct-thread", OP_RECONSTRUCT_THREAD, NULL },
++#endif
++ { "reply", OP_REPLY, "r" },
++ { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
++ { "root-message", OP_MAIN_ROOT_MESSAGE, NULL },
++ { "save-message", OP_SAVE, "s" },
++ { "set-flag", OP_MAIN_SET_FLAG, "w" },
++ { "show-limit", OP_MAIN_SHOW_LIMIT, "\033l" }, // <Alt-l>
++ { "show-log-messages", OP_SHOW_LOG_MESSAGES, "M" },
++ { "show-version", OP_VERSION, "V" },
++#ifdef USE_SIDEBAR
++ { "sidebar-next", OP_SIDEBAR_NEXT, NULL },
++ { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL },
++ { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
++ { "sidebar-page-down", OP_SIDEBAR_PAGE_DOWN, NULL },
++ { "sidebar-page-up", OP_SIDEBAR_PAGE_UP, NULL },
++ { "sidebar-prev", OP_SIDEBAR_PREV, NULL },
++ { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL },
++ { "sidebar-toggle-virtual", OP_SIDEBAR_TOGGLE_VIRTUAL, NULL },
++ { "sidebar-toggle-visible", OP_SIDEBAR_TOGGLE_VISIBLE, NULL },
++#endif
++ { "sort-mailbox", OP_SORT, "o" },
++ { "sort-reverse", OP_SORT_REVERSE, "O" },
++ { "sync-mailbox", OP_MAIN_SYNC_FOLDER, "$" },
++ { "tag-pattern", OP_MAIN_TAG_PATTERN, "T" },
++ { "tag-subthread", OP_TAG_SUBTHREAD, NULL },
++ { "tag-thread", OP_TAG_THREAD, "\033t" }, // <Alt-t>
++ { "toggle-new", OP_TOGGLE_NEW, "N" },
++ { "toggle-read", OP_TOGGLE_READ, NULL },
++ { "toggle-write", OP_TOGGLE_WRITE, "%" },
++ { "undelete-message", OP_UNDELETE, "u" },
++ { "undelete-pattern", OP_MAIN_UNDELETE_PATTERN, "U" },
++ { "undelete-subthread", OP_UNDELETE_SUBTHREAD, "\033u" }, // <Alt-u>
++ { "undelete-thread", OP_UNDELETE_THREAD, "\025" }, // <Ctrl-U>
++ { "untag-pattern", OP_MAIN_UNTAG_PATTERN, "\024" }, // <Ctrl-T>
++#ifdef USE_NOTMUCH
++ { "vfolder-from-query", OP_MAIN_VFOLDER_FROM_QUERY, NULL },
++ { "vfolder-from-query-readonly", OP_MAIN_VFOLDER_FROM_QUERY_READONLY, NULL },
++ { "vfolder-window-backward", OP_MAIN_WINDOWED_VFOLDER_BACKWARD, NULL },
++ { "vfolder-window-forward", OP_MAIN_WINDOWED_VFOLDER_FORWARD, NULL },
++#endif
++ { "view-attachments", OP_VIEW_ATTACHMENTS, "v" },
++ { "view-raw-message", OP_VIEW_RAW_MESSAGE, NULL },
++ /* This is deprecated. Leave it last so it doesn't show up in the help. */
++ { "buffy-list", OP_MAILBOX_LIST, NULL },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpPager - Key bindings for the pager menu
++ */
++const struct Binding OpPager[] = { /* map: pager */
++ { "bottom", OP_PAGER_BOTTOM, NULL },
++ { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
++ { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
++ { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
++ { "change-folder-readonly", OP_MAIN_CHANGE_FOLDER_READONLY, "\033c" }, // <Alt-c>
++#ifdef USE_NNTP
++ { "change-newsgroup", OP_MAIN_CHANGE_GROUP, "i" },
++ { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY, "\033i" }, // <Alt-i>
++#endif
++#ifdef USE_NOTMUCH
++ { "change-vfolder", OP_MAIN_CHANGE_VFOLDER, NULL },
++#endif
++ { "check-stats", OP_CHECK_STATS, NULL },
++ { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
++ { "clear-flag", OP_MAIN_CLEAR_FLAG, "W" },
++ { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
++ { "copy-message", OP_COPY_MESSAGE, "C" },
++ { "create-alias", OP_CREATE_ALIAS, "a" },
++ { "decode-copy", OP_DECODE_COPY, "\033C" }, // <Alt-C>
++ { "decode-save", OP_DECODE_SAVE, "\033s" }, // <Alt-s>
++ { "decrypt-copy", OP_DECRYPT_COPY, NULL },
++ { "decrypt-save", OP_DECRYPT_SAVE, NULL },
++ { "delete-message", OP_DELETE, "d" },
++ { "delete-subthread", OP_DELETE_SUBTHREAD, "\033d" }, // <Alt-d>
++ { "delete-thread", OP_DELETE_THREAD, "\004" }, // <Ctrl-D>
++ { "display-address", OP_DISPLAY_ADDRESS, "@" },
++ { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
++ { "edit", OP_EDIT_RAW_MESSAGE, NULL },
++ { "edit-label", OP_EDIT_LABEL, "Y" },
++ { "edit-or-view-raw-message", OP_EDIT_OR_VIEW_RAW_MESSAGE, "e" },
++ { "edit-raw-message", OP_EDIT_RAW_MESSAGE, NULL },
++ { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
++ { "enter-command", OP_ENTER_COMMAND, ":" },
++#ifdef USE_NOTMUCH
++ { "entire-thread", OP_MAIN_ENTIRE_THREAD, NULL },
++#endif
++ { "exit", OP_EXIT, "q" },
++ { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
++ { "flag-message", OP_FLAG_MESSAGE, "F" },
++#ifdef USE_NNTP
++ { "followup-message", OP_FOLLOWUP, NULL },
++#endif
++ { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
++ { "forward-message", OP_FORWARD_MESSAGE, "f" },
++#ifdef USE_NNTP
++ { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
++#endif
++ { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
++ { "group-reply", OP_GROUP_REPLY, "g" },
++ { "half-down", OP_HALF_DOWN, NULL },
++ { "half-up", OP_HALF_UP, NULL },
++ { "help", OP_HELP, "?" },
++#ifdef USE_IMAP
++ { "imap-fetch-mail", OP_MAIN_IMAP_FETCH, NULL },
++ { "imap-logout-all", OP_MAIN_IMAP_LOGOUT_ALL, NULL },
++#endif
++ { "jump", OP_JUMP, NULL },
++ { "link-threads", OP_MAIN_LINK_THREADS, "&" },
++ { "list-reply", OP_LIST_REPLY, "L" },
++ { "mail", OP_MAIL, "m" },
++ { "mail-key", OP_MAIL_KEY, "\033k" }, // <Alt-k>
++ { "mailbox-list", OP_MAILBOX_LIST, "." },
++ { "mark-as-new", OP_TOGGLE_NEW, "N" },
++ { "modify-labels", OP_MAIN_MODIFY_TAGS, NULL }, // NOTE(sileht): kept for backward compatibility
++ { "modify-labels-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL }, // NOTE(sileht): kept for backward compatibility
++ { "modify-tags", OP_MAIN_MODIFY_TAGS, NULL },
++ { "modify-tags-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL },
++ { "next-entry", OP_NEXT_ENTRY, "J" },
++ { "next-line", OP_NEXT_LINE, "\n" }, // <Enter>
++ { "next-line", OP_NEXT_LINE, "\r" },
++ { "next-new", OP_MAIN_NEXT_NEW, NULL },
++ { "next-new-then-unread", OP_MAIN_NEXT_NEW_THEN_UNREAD, "\t" },
++ { "next-page", OP_NEXT_PAGE, " " },
++ { "next-subthread", OP_MAIN_NEXT_SUBTHREAD, "\033n" }, // <Alt-n>
++ { "next-thread", OP_MAIN_NEXT_THREAD, "\016" }, // <Ctrl-N>
++ { "next-undeleted", OP_MAIN_NEXT_UNDELETED, "j" },
++ { "next-unread", OP_MAIN_NEXT_UNREAD, NULL },
++ { "next-unread-mailbox", OP_MAIN_NEXT_UNREAD_MAILBOX, NULL },
++ { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" },
++ { "pipe-message", OP_PIPE, "|" },
++#ifdef USE_NNTP
++ { "post-message", OP_POST, NULL },
++#endif
++ { "previous-entry", OP_PREV_ENTRY, "K" },
++ { "previous-line", OP_PREV_LINE, NULL },
++ { "previous-new", OP_MAIN_PREV_NEW, NULL },
++ { "previous-new-then-unread", OP_MAIN_PREV_NEW_THEN_UNREAD, NULL },
++ { "previous-page", OP_PREV_PAGE, "-" },
++ { "previous-subthread", OP_MAIN_PREV_SUBTHREAD, "\033p" }, // <Alt-p>
++ { "previous-thread", OP_MAIN_PREV_THREAD, "\020" }, // <Ctrl-P>
++ { "previous-undeleted", OP_MAIN_PREV_UNDELETED, "k" },
++ { "previous-unread", OP_MAIN_PREV_UNREAD, NULL },
++ { "print-message", OP_PRINT, "p" },
++ { "purge-message", OP_PURGE_MESSAGE, NULL },
++ { "purge-thread", OP_PURGE_THREAD, NULL },
++ { "quasi-delete", OP_MAIN_QUASI_DELETE, NULL },
++ { "quit", OP_QUIT, "Q" },
++ { "read-subthread", OP_MAIN_READ_SUBTHREAD, "\033r" }, // <Alt-r>
++ { "read-thread", OP_MAIN_READ_THREAD, "\022" }, // <Ctrl-R>
++ { "recall-message", OP_RECALL_MESSAGE, "R" },
++#ifdef USE_NNTP
++ { "reconstruct-thread", OP_RECONSTRUCT_THREAD, NULL },
++#endif
++ { "redraw-screen", OP_REDRAW, "\014" }, // <Ctrl-L>
++ { "reply", OP_REPLY, "r" },
++ { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
++ { "root-message", OP_MAIN_ROOT_MESSAGE, NULL },
++ { "save-message", OP_SAVE, "s" },
++ { "search", OP_SEARCH, "/" },
++ { "search-next", OP_SEARCH_NEXT, "n" },
++ { "search-opposite", OP_SEARCH_OPPOSITE, NULL },
++ { "search-reverse", OP_SEARCH_REVERSE, "\033/" }, // <Alt-/>
++ { "search-toggle", OP_SEARCH_TOGGLE, "\\" }, // <Backslash>
++ { "set-flag", OP_MAIN_SET_FLAG, "w" },
++ { "shell-escape", OP_SHELL_ESCAPE, "!" },
++ { "show-version", OP_VERSION, "V" },
++#ifdef USE_SIDEBAR
++ { "sidebar-next", OP_SIDEBAR_NEXT, NULL },
++ { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL },
++ { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
++ { "sidebar-page-down", OP_SIDEBAR_PAGE_DOWN, NULL },
++ { "sidebar-page-up", OP_SIDEBAR_PAGE_UP, NULL },
++ { "sidebar-prev", OP_SIDEBAR_PREV, NULL },
++ { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL },
++ { "sidebar-toggle-virtual", OP_SIDEBAR_TOGGLE_VIRTUAL, NULL },
++ { "sidebar-toggle-visible", OP_SIDEBAR_TOGGLE_VISIBLE, NULL },
++#endif
++ { "skip-quoted", OP_PAGER_SKIP_QUOTED, "S" },
++ { "sort-mailbox", OP_SORT, "o" },
++ { "sort-reverse", OP_SORT_REVERSE, "O" },
++ { "sync-mailbox", OP_MAIN_SYNC_FOLDER, "$" },
++ { "tag-message", OP_TAG, "t" },
++ { "toggle-quoted", OP_PAGER_HIDE_QUOTED, "T" },
++ { "toggle-write", OP_TOGGLE_WRITE, "%" },
++ { "top", OP_PAGER_TOP, "^" },
++ { "undelete-message", OP_UNDELETE, "u" },
++ { "undelete-subthread", OP_UNDELETE_SUBTHREAD, "\033u" }, // <Alt-u>
++ { "undelete-thread", OP_UNDELETE_THREAD, "\025" }, // <Ctrl-U>
++#ifdef USE_NOTMUCH
++ { "vfolder-from-query", OP_MAIN_VFOLDER_FROM_QUERY, NULL },
++ { "vfolder-from-query-readonly", OP_MAIN_VFOLDER_FROM_QUERY_READONLY, NULL },
++#endif
++ { "view-attachments", OP_VIEW_ATTACHMENTS, "v" },
++ { "view-raw-message", OP_VIEW_RAW_MESSAGE, NULL },
++ { "what-key", OP_WHAT_KEY, NULL },
++ /* This is deprecated. Leave it last so it doesn't show up in the help. */
++ { "buffy-list", OP_MAILBOX_LIST, NULL },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpAttach - Key bindings for the attachment menu
++ */
++const struct Binding OpAttach[] = { /* map: attachment */
++ { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
++ { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
++ { "collapse-parts", OP_ATTACH_COLLAPSE, "v" },
++ { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
++ { "delete-entry", OP_DELETE, "d" },
++ { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
++ { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
++ { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
++#ifdef USE_NNTP
++ { "followup-message", OP_FOLLOWUP, NULL },
++#endif
++ { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
++ { "forward-message", OP_FORWARD_MESSAGE, "f" },
++#ifdef USE_NNTP
++ { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
++#endif
++ { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
++ { "group-reply", OP_GROUP_REPLY, "g" },
++ { "list-reply", OP_LIST_REPLY, "L" },
++ { "pipe-entry", OP_PIPE, "|" },
++ { "print-entry", OP_PRINT, "p" },
++ { "reply", OP_REPLY, "r" },
++ { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
++ { "save-entry", OP_SAVE, "s" },
++ { "undelete-entry", OP_UNDELETE, "u" },
++ { "view-attach", OP_VIEW_ATTACH, "\n" }, // <Enter>
++ { "view-attach", OP_VIEW_ATTACH, "\r" },
++ { "view-mailcap", OP_ATTACH_VIEW_MAILCAP, "m" },
++ { "view-text", OP_ATTACH_VIEW_TEXT, "T" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpCompose - Key bindings for the compose menu
++ */
++const struct Binding OpCompose[] = { /* map: compose */
++ { "attach-file", OP_COMPOSE_ATTACH_FILE, "a" },
++ { "attach-key", OP_COMPOSE_ATTACH_KEY, "\033k" }, // <Alt-k>
++ { "attach-message", OP_COMPOSE_ATTACH_MESSAGE, "A" },
++#ifdef USE_NNTP
++ { "attach-news-message", OP_COMPOSE_ATTACH_NEWS_MESSAGE, NULL },
++#endif
++#ifdef USE_AUTOCRYPT
++ { "autocrypt-menu", OP_COMPOSE_AUTOCRYPT_MENU, "o" },
++#endif
++ { "copy-file", OP_SAVE, "C" },
++ { "detach-file", OP_DELETE, "D" },
++ { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
++ { "edit-bcc", OP_COMPOSE_EDIT_BCC, "b" },
++ { "edit-cc", OP_COMPOSE_EDIT_CC, "c" },
++ { "edit-description", OP_COMPOSE_EDIT_DESCRIPTION, "d" },
++ { "edit-encoding", OP_COMPOSE_EDIT_ENCODING, "\005" }, // <Ctrl-E>
++ { "edit-fcc", OP_COMPOSE_EDIT_FCC, "f" },
++ { "edit-file", OP_COMPOSE_EDIT_FILE, "\030e" }, // <Alt-e>
++#ifdef USE_NNTP
++ { "edit-followup-to", OP_COMPOSE_EDIT_FOLLOWUP_TO, NULL },
++#endif
++ { "edit-from", OP_COMPOSE_EDIT_FROM, "\033f" }, // <Alt-f>
++ { "edit-headers", OP_COMPOSE_EDIT_HEADERS, "E" },
++ { "edit-language", OP_COMPOSE_EDIT_LANGUAGE, "\014" }, // <Ctrl-L>
++ { "edit-message", OP_COMPOSE_EDIT_MESSAGE, "e" },
++ { "edit-mime", OP_COMPOSE_EDIT_MIME, "m" },
++#ifdef USE_NNTP
++ { "edit-newsgroups", OP_COMPOSE_EDIT_NEWSGROUPS, NULL },
++#endif
++ { "edit-reply-to", OP_COMPOSE_EDIT_REPLY_TO, "r" },
++ { "edit-subject", OP_COMPOSE_EDIT_SUBJECT, "s" },
++ { "edit-to", OP_COMPOSE_EDIT_TO, "t" },
++ { "edit-type", OP_EDIT_TYPE, "\024" }, // <Ctrl-T>
++#ifdef USE_NNTP
++ { "edit-x-comment-to", OP_COMPOSE_EDIT_X_COMMENT_TO, NULL },
++#endif
++ { "filter-entry", OP_FILTER, "F" },
++ { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
++ { "get-attachment", OP_COMPOSE_GET_ATTACHMENT, "G" },
++ { "group-alternatives", OP_COMPOSE_GROUP_ALTS, "&" },
++ { "group-multilingual", OP_COMPOSE_GROUP_LINGUAL, "^" },
++ { "ispell", OP_COMPOSE_ISPELL, "i" },
++#ifdef MIXMASTER
++ { "mix", OP_COMPOSE_MIX, "M" },
++#endif
++ { "move-down", OP_COMPOSE_MOVE_DOWN, "+" },
++ { "move-up", OP_COMPOSE_MOVE_UP, "-" },
++ { "new-mime", OP_COMPOSE_NEW_MIME, "n" },
++ { "pgp-menu", OP_COMPOSE_PGP_MENU, "p" },
++ { "pipe-entry", OP_PIPE, "|" },
++ { "postpone-message", OP_COMPOSE_POSTPONE_MESSAGE, "P" },
++ { "print-entry", OP_PRINT, "l" },
++ { "rename-attachment", OP_COMPOSE_RENAME_ATTACHMENT, "\017" }, // <Ctrl-O>
++ { "rename-file", OP_COMPOSE_RENAME_FILE, "R" },
++ { "send-message", OP_COMPOSE_SEND_MESSAGE, "y" },
++ { "smime-menu", OP_COMPOSE_SMIME_MENU, "S" },
++ { "toggle-disposition", OP_COMPOSE_TOGGLE_DISPOSITION, "\004" }, // <Ctrl-D>
++ { "toggle-recode", OP_COMPOSE_TOGGLE_RECODE, NULL },
++ { "toggle-unlink", OP_COMPOSE_TOGGLE_UNLINK, "u" },
++ { "update-encoding", OP_COMPOSE_UPDATE_ENCODING, "U" },
++ { "view-attach", OP_VIEW_ATTACH, "\n" }, // <Enter>
++ { "view-attach", OP_VIEW_ATTACH, "\r" },
++ { "write-fcc", OP_COMPOSE_WRITE_MESSAGE, "w" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpPost - Key bindings for the postpone menu
++ */
++const struct Binding OpPost[] = { /* map: postpone */
++ { "delete-entry", OP_DELETE, "d" },
++ { "undelete-entry", OP_UNDELETE, "u" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpAlias - Key bindings for the alias menu
++ */
++const struct Binding OpAlias[] = { /* map: alias */
++ { "delete-entry", OP_DELETE, "d" },
++ { "undelete-entry", OP_UNDELETE, "u" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpBrowser - Key bindings for the file browser menu
++ */
++const struct Binding OpBrowser[] = { /* map: browser */
++#ifdef USE_NNTP
++ { "catchup", OP_CATCHUP, NULL },
++#endif
++ { "change-dir", OP_CHANGE_DIRECTORY, "c" },
++ { "check-new", OP_CHECK_NEW, NULL },
++#ifdef USE_IMAP
++ { "create-mailbox", OP_CREATE_MAILBOX, "C" },
++ { "delete-mailbox", OP_DELETE_MAILBOX, "d" },
++#endif
++ { "descend-directory", OP_DESCEND_DIRECTORY, NULL },
++ { "display-filename", OP_BROWSER_TELL, "@" },
++ { "enter-mask", OP_ENTER_MASK, "m" },
++ { "goto-folder", OP_BROWSER_GOTO_FOLDER, "=" },
++ { "goto-parent", OP_GOTO_PARENT, "p" },
++ { "mailbox-list", OP_MAILBOX_LIST, "." },
++#ifdef USE_NNTP
++ { "reload-active", OP_LOAD_ACTIVE, NULL },
++#endif
++#ifdef USE_IMAP
++ { "rename-mailbox", OP_RENAME_MAILBOX, "r" },
++#endif
++ { "select-new", OP_BROWSER_NEW_FILE, "N" },
++ { "sort", OP_SORT, "o" },
++ { "sort-reverse", OP_SORT_REVERSE, "O" },
++#if defined(USE_IMAP) || defined(USE_NNTP)
++ { "subscribe", OP_BROWSER_SUBSCRIBE, "s" },
++#endif
++#ifdef USE_NNTP
++ { "subscribe-pattern", OP_SUBSCRIBE_PATTERN, NULL },
++#endif
++ { "toggle-mailboxes", OP_TOGGLE_MAILBOXES, "\t" },
++#ifdef USE_IMAP
++ { "toggle-subscribed", OP_BROWSER_TOGGLE_LSUB, "T" },
++#endif
++#ifdef USE_NNTP
++ { "uncatchup", OP_UNCATCHUP, NULL },
++#endif
++#if defined(USE_IMAP) || defined(USE_NNTP)
++ { "unsubscribe", OP_BROWSER_UNSUBSCRIBE, "u" },
++#endif
++#ifdef USE_NNTP
++ { "unsubscribe-pattern", OP_UNSUBSCRIBE_PATTERN, NULL },
++#endif
++ { "view-file", OP_BROWSER_VIEW_FILE, " " },
++ /* This is deprecated. Leave it last so it doesn't show up in the help. */
++ { "buffy-list", OP_MAILBOX_LIST, NULL },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpQuery - Key bindings for the external query menu
++ */
++const struct Binding OpQuery[] = { /* map: query */
++ { "create-alias", OP_CREATE_ALIAS, "a" },
++ { "mail", OP_MAIL, "m" },
++ { "query", OP_QUERY, "Q" },
++ { "query-append", OP_QUERY_APPEND, "A" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpEditor - Key bindings for the editor menu
++ */
++const struct Binding OpEditor[] = { /* map: editor */
++ { "backspace", OP_EDITOR_BACKSPACE, "\010" }, // <Ctrl-H>
++ { "backward-char", OP_EDITOR_BACKWARD_CHAR, "\002" }, // <Ctrl-B>
++ { "backward-word", OP_EDITOR_BACKWARD_WORD, "\033b" }, // <Alt-b>
++ { "bol", OP_EDITOR_BOL, "\001" }, // <Ctrl-A>
++ { "capitalize-word", OP_EDITOR_CAPITALIZE_WORD, "\033c" }, // <Alt-c>
++ { "complete", OP_EDITOR_COMPLETE, "\t" }, // <Tab>
++ { "complete-query", OP_EDITOR_COMPLETE_QUERY, "\024" }, // <Ctrl-T>
++ { "delete-char", OP_EDITOR_DELETE_CHAR, "\004" }, // <Ctrl-D>
++ { "downcase-word", OP_EDITOR_DOWNCASE_WORD, "\033l" }, // <Alt-l>
++ { "eol", OP_EDITOR_EOL, "\005" }, // <Ctrl-E>
++ { "forward-char", OP_EDITOR_FORWARD_CHAR, "\006" }, // <Ctrl-F>
++ { "forward-word", OP_EDITOR_FORWARD_WORD, "\033f" }, // <Alt-f>
++ { "history-down", OP_EDITOR_HISTORY_DOWN, NULL },
++ { "history-search", OP_EDITOR_HISTORY_SEARCH, "\022" }, // <Ctrl-R>
++ { "history-up", OP_EDITOR_HISTORY_UP, NULL },
++ { "kill-eol", OP_EDITOR_KILL_EOL, "\013" }, // <Ctrl-K>
++ { "kill-eow", OP_EDITOR_KILL_EOW, "\033d" }, // <Alt-d>
++ { "kill-line", OP_EDITOR_KILL_LINE, "\025" }, // <Ctrl-U>
++ { "kill-word", OP_EDITOR_KILL_WORD, "\027" }, // <Ctrl-W>
++ { "mailbox-cycle", OP_EDITOR_MAILBOX_CYCLE, " " },
++ { "quote-char", OP_EDITOR_QUOTE_CHAR, "\026" }, // <Ctrl-V>
++ { "transpose-chars", OP_EDITOR_TRANSPOSE_CHARS, NULL },
++ { "upcase-word", OP_EDITOR_UPCASE_WORD, "\033u" }, // <Alt-u>
++ /* This is deprecated. Leave it last so it doesn't show up in the help. */
++ { "buffy-cycle", OP_EDITOR_MAILBOX_CYCLE, NULL },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpPgp - Key bindings for the pgp menu
++ */
++const struct Binding OpPgp[] = { /* map: pgp */
++ { "verify-key", OP_VERIFY_KEY, "c" },
++ { "view-name", OP_VIEW_ID, "%" },
++ { NULL, 0, NULL },
++};
++
++/**
++ * OpSmime - Key bindings for the smime menu
++ */
++const struct Binding OpSmime[] = { /* map: smime */
++#ifdef CRYPT_BACKEND_GPGME
++ { "verify-key", OP_VERIFY_KEY, "c" },
++ { "view-name", OP_VIEW_ID, "%" },
++#endif
++ { NULL, 0, NULL },
++};
++
++#ifdef MIXMASTER
++/**
++ * OpMix - Key bindings for the mixmaster menu
++ */
++const struct Binding OpMix[] = { /* map: mixmaster */
++ { "accept", OP_MIX_USE, "\n" }, // <Enter>
++ { "accept", OP_MIX_USE, "\r" }, // <Return>
++ { "append", OP_MIX_APPEND, "a" },
++ { "chain-next", OP_MIX_CHAIN_NEXT, "<right>" },
++ { "chain-prev", OP_MIX_CHAIN_PREV, "<left>" },
++ { "delete", OP_MIX_DELETE, "d" },
++ { "insert", OP_MIX_INSERT, "i" },
++ { NULL, 0, NULL },
++};
++#endif /* MIXMASTER */
++
++#ifdef USE_AUTOCRYPT
++/**
++ * OpAutocryptAcct - Key bindings for the autocrypt account
++ */
++const struct Binding OpAutocryptAcct[] = { /* map: autocrypt account */
++ { "create-account", OP_AUTOCRYPT_CREATE_ACCT, "c" },
++ { "delete-account", OP_AUTOCRYPT_DELETE_ACCT, "D" },
++ { "toggle-active", OP_AUTOCRYPT_TOGGLE_ACTIVE, "a" },
++ { "toggle-prefer-encrypt", OP_AUTOCRYPT_TOGGLE_PREFER, "p" },
++ { NULL, 0, NULL }
++};
++#endif
++
++// clang-format on
+diff --git a/functions.h b/functions.h
+index 76a86a466..a3720f6f5 100644
+--- a/functions.h
++++ b/functions.h
+@@ -24,660 +24,25 @@
+ #define MUTT_FUNCTIONS_H
+
+ #include "config.h"
+-
+-/*
+- * This file contains the structures needed to parse "bind" commands, as
+- * well as the default bindings for each menu.
+- *
+- * Notes:
+- *
+- * - If you need to bind a control char, use the octal value because the \cX
+- * construct does not work at this level.
+- *
+- * - The magic "map:" comments define how the map will be called in the
+- * manual. Lines starting with "**" will be included in the manual.
+- */
+-
+-#ifdef _MAKEDOC
+-#include "config.h"
+-#include "doc/makedoc_defs.h"
+-#else
+-#include <stddef.h>
+ #include "keymap.h"
+-#include "opcodes.h"
+-#endif
+-
+-// clang-format off
+-/**
+- * OpGeneric - Key bindings for the generic menu
+- */
+-const struct Binding OpGeneric[] = { /* map: generic */
+- /*
+- ** <para>
+- ** The <emphasis>generic</emphasis> menu is not a real menu, but specifies common functions
+- ** (such as movement) available in all menus except for <emphasis>pager</emphasis> and
+- ** <emphasis>editor</emphasis>. Changing settings for this menu will affect the default
+- ** bindings for all menus (except as noted).
+- ** </para>
+- */
+- { "bottom-page", OP_BOTTOM_PAGE, "L" },
+- { "check-stats", OP_CHECK_STATS, NULL },
+- { "current-bottom", OP_CURRENT_BOTTOM, NULL },
+- { "current-middle", OP_CURRENT_MIDDLE, NULL },
+- { "current-top", OP_CURRENT_TOP, NULL },
+- { "end-cond", OP_END_COND, NULL },
+- { "enter-command", OP_ENTER_COMMAND, ":" },
+- { "exit", OP_EXIT, "q" },
+- { "first-entry", OP_FIRST_ENTRY, "=" },
+- { "half-down", OP_HALF_DOWN, "]" },
+- { "half-up", OP_HALF_UP, "[" },
+- { "help", OP_HELP, "?" },
+- { "jump", OP_JUMP, NULL },
+- { "last-entry", OP_LAST_ENTRY, "*" },
+- { "middle-page", OP_MIDDLE_PAGE, "M" },
+- { "next-entry", OP_NEXT_ENTRY, "j" },
+- { "next-line", OP_NEXT_LINE, ">" },
+- { "next-page", OP_NEXT_PAGE, "z" },
+- { "previous-entry", OP_PREV_ENTRY, "k" },
+- { "previous-line", OP_PREV_LINE, "<" },
+- { "previous-page", OP_PREV_PAGE, "Z" },
+- { "refresh", OP_REDRAW, "\014" }, // <Ctrl-L>
+- { "search", OP_SEARCH, "/" },
+- { "search-next", OP_SEARCH_NEXT, "n" },
+- { "search-opposite", OP_SEARCH_OPPOSITE, NULL },
+- { "search-reverse", OP_SEARCH_REVERSE, "\033/" }, // <Alt-/>
+- { "select-entry", OP_GENERIC_SELECT_ENTRY, "\n" },
+- { "select-entry", OP_GENERIC_SELECT_ENTRY, "\r" },
+- { "shell-escape", OP_SHELL_ESCAPE, "!" },
+- { "tag-entry", OP_TAG, "t" },
+- { "tag-prefix", OP_TAG_PREFIX, ";" },
+- { "tag-prefix-cond", OP_TAG_PREFIX_COND, NULL },
+- { "top-page", OP_TOP_PAGE, "H" },
+- { "what-key", OP_WHAT_KEY, NULL },
+- { NULL, 0, NULL },
+-};
+
+-/**
+- * OpMain - Key bindings for the index menu
+- */
+-const struct Binding OpMain[] = { /* map: index */
+-#ifdef USE_AUTOCRYPT
+- { "autocrypt-acct-menu", OP_AUTOCRYPT_ACCT_MENU, "A" },
+-#endif
+- { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
+- { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
+-#ifdef USE_NNTP
+- { "catchup", OP_CATCHUP, NULL },
+-#endif
+- { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
+- { "change-folder-readonly", OP_MAIN_CHANGE_FOLDER_READONLY, "\033c" }, // <Alt-c>
+-#ifdef USE_NNTP
+- { "change-newsgroup", OP_MAIN_CHANGE_GROUP, "i" },
+- { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY, "\033i" }, // <Alt-i>
+-#endif
+-#ifdef USE_NOTMUCH
+- { "change-vfolder", OP_MAIN_CHANGE_VFOLDER, NULL },
+-#endif
+- { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
+- { "clear-flag", OP_MAIN_CLEAR_FLAG, "W" },
+- { "collapse-all", OP_MAIN_COLLAPSE_ALL, "\033V" }, // <Alt-V>
+- { "collapse-thread", OP_MAIN_COLLAPSE_THREAD, "\033v" }, // <Alt-v>
+- { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
+- { "copy-message", OP_COPY_MESSAGE, "C" },
+- { "create-alias", OP_CREATE_ALIAS, "a" },
+- { "decode-copy", OP_DECODE_COPY, "\033C" }, // <Alt-C>
+- { "decode-save", OP_DECODE_SAVE, "\033s" }, // <Alt-s>
+- { "decrypt-copy", OP_DECRYPT_COPY, NULL },
+- { "decrypt-save", OP_DECRYPT_SAVE, NULL },
+- { "delete-message", OP_DELETE, "d" },
+- { "delete-pattern", OP_MAIN_DELETE_PATTERN, "D" },
+- { "delete-subthread", OP_DELETE_SUBTHREAD, "\033d" }, // <Alt-d>
+- { "delete-thread", OP_DELETE_THREAD, "\004" }, // <Ctrl-D>
+- { "display-address", OP_DISPLAY_ADDRESS, "@" },
+- { "display-message", OP_DISPLAY_MESSAGE, "\n" }, // <Enter>
+- { "display-message", OP_DISPLAY_MESSAGE, "\r" },
+- { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
+- { "edit", OP_EDIT_RAW_MESSAGE, NULL },
+- { "edit-label", OP_EDIT_LABEL, "Y" },
+- { "edit-or-view-raw-message", OP_EDIT_OR_VIEW_RAW_MESSAGE, "e" },
+- { "edit-raw-message", OP_EDIT_RAW_MESSAGE, NULL },
+- { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
+-#ifdef USE_NOTMUCH
+- { "entire-thread", OP_MAIN_ENTIRE_THREAD, NULL },
+-#endif
+- { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
+-#ifdef USE_POP
+- { "fetch-mail", OP_MAIN_FETCH_MAIL, "G" },
+-#endif
+- { "flag-message", OP_FLAG_MESSAGE, "F" },
+-#ifdef USE_NNTP
+- { "followup-message", OP_FOLLOWUP, NULL },
+-#endif
+- { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
+- { "forward-message", OP_FORWARD_MESSAGE, "f" },
+-#ifdef USE_NNTP
+- { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
+- { "get-children", OP_GET_CHILDREN, NULL },
+- { "get-message", OP_GET_MESSAGE, NULL },
+- { "get-parent", OP_GET_PARENT, NULL },
+-#endif
+- { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
+- { "group-reply", OP_GROUP_REPLY, "g" },
+-#ifdef USE_IMAP
+- { "imap-fetch-mail", OP_MAIN_IMAP_FETCH, NULL },
+- { "imap-logout-all", OP_MAIN_IMAP_LOGOUT_ALL, NULL },
+-#endif
+- { "limit", OP_MAIN_LIMIT, "l" },
+- { "limit-current-thread", OP_LIMIT_CURRENT_THREAD, NULL },
+- { "link-threads", OP_MAIN_LINK_THREADS, "&" },
+- { "list-reply", OP_LIST_REPLY, "L" },
+- { "mail", OP_MAIL, "m" },
+- { "mail-key", OP_MAIL_KEY, "\033k" }, // <Alt-k>
+- { "mailbox-list", OP_MAILBOX_LIST, "." },
+- { "mark-message", OP_MARK_MSG, "~" },
+- { "modify-labels", OP_MAIN_MODIFY_TAGS, NULL }, // NOTE(sileht): kept for backward compatibility
+- { "modify-labels-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL }, // NOTE(sileht): kept for backward compatibility
+- { "modify-tags", OP_MAIN_MODIFY_TAGS, NULL },
+- { "modify-tags-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL },
+- { "next-new", OP_MAIN_NEXT_NEW, NULL },
+- { "next-new-then-unread", OP_MAIN_NEXT_NEW_THEN_UNREAD, "\t" },
+- { "next-subthread", OP_MAIN_NEXT_SUBTHREAD, "\033n" }, // <Alt-n>
+- { "next-thread", OP_MAIN_NEXT_THREAD, "\016" }, // <Ctrl-N>
+- { "next-undeleted", OP_MAIN_NEXT_UNDELETED, "j" },
+- { "next-unread", OP_MAIN_NEXT_UNREAD, NULL },
+- { "next-unread-mailbox", OP_MAIN_NEXT_UNREAD_MAILBOX, NULL },
+- { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" },
+- { "pipe-message", OP_PIPE, "|" },
+-#ifdef USE_NNTP
+- { "post-message", OP_POST, NULL },
+-#endif
+- { "previous-new", OP_MAIN_PREV_NEW, NULL },
+- { "previous-new-then-unread", OP_MAIN_PREV_NEW_THEN_UNREAD, "\033\t" }, // <Alt-\>
+- { "previous-subthread", OP_MAIN_PREV_SUBTHREAD, "\033p" }, // <Alt-p>
+- { "previous-thread", OP_MAIN_PREV_THREAD, "\020" }, // <Ctrl-P>
+- { "previous-undeleted", OP_MAIN_PREV_UNDELETED, "k" },
+- { "previous-unread", OP_MAIN_PREV_UNREAD, NULL },
+- { "print-message", OP_PRINT, "p" },
+- { "purge-message", OP_PURGE_MESSAGE, NULL },
+- { "purge-thread", OP_PURGE_THREAD, NULL },
+- { "quasi-delete", OP_MAIN_QUASI_DELETE, NULL },
+- { "query", OP_QUERY, "Q" },
+- { "quit", OP_QUIT, "q" },
+- { "read-subthread", OP_MAIN_READ_SUBTHREAD, "\033r" }, // <Alt-r>
+- { "read-thread", OP_MAIN_READ_THREAD, "\022" }, // <Ctrl-R>
+- { "recall-message", OP_RECALL_MESSAGE, "R" },
+-#ifdef USE_NNTP
+- { "reconstruct-thread", OP_RECONSTRUCT_THREAD, NULL },
+-#endif
+- { "reply", OP_REPLY, "r" },
+- { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
+- { "root-message", OP_MAIN_ROOT_MESSAGE, NULL },
+- { "save-message", OP_SAVE, "s" },
+- { "set-flag", OP_MAIN_SET_FLAG, "w" },
+- { "show-limit", OP_MAIN_SHOW_LIMIT, "\033l" }, // <Alt-l>
+- { "show-log-messages", OP_SHOW_LOG_MESSAGES, "M" },
+- { "show-version", OP_VERSION, "V" },
+-#ifdef USE_SIDEBAR
+- { "sidebar-next", OP_SIDEBAR_NEXT, NULL },
+- { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL },
+- { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
+- { "sidebar-page-down", OP_SIDEBAR_PAGE_DOWN, NULL },
+- { "sidebar-page-up", OP_SIDEBAR_PAGE_UP, NULL },
+- { "sidebar-prev", OP_SIDEBAR_PREV, NULL },
+- { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL },
+- { "sidebar-toggle-virtual", OP_SIDEBAR_TOGGLE_VIRTUAL, NULL },
+- { "sidebar-toggle-visible", OP_SIDEBAR_TOGGLE_VISIBLE, NULL },
+-#endif
+- { "sort-mailbox", OP_SORT, "o" },
+- { "sort-reverse", OP_SORT_REVERSE, "O" },
+- { "sync-mailbox", OP_MAIN_SYNC_FOLDER, "$" },
+- { "tag-pattern", OP_MAIN_TAG_PATTERN, "T" },
+- { "tag-subthread", OP_TAG_SUBTHREAD, NULL },
+- { "tag-thread", OP_TAG_THREAD, "\033t" }, // <Alt-t>
+- { "toggle-new", OP_TOGGLE_NEW, "N" },
+- { "toggle-read", OP_TOGGLE_READ, NULL },
+- { "toggle-write", OP_TOGGLE_WRITE, "%" },
+- { "undelete-message", OP_UNDELETE, "u" },
+- { "undelete-pattern", OP_MAIN_UNDELETE_PATTERN, "U" },
+- { "undelete-subthread", OP_UNDELETE_SUBTHREAD, "\033u" }, // <Alt-u>
+- { "undelete-thread", OP_UNDELETE_THREAD, "\025" }, // <Ctrl-U>
+- { "untag-pattern", OP_MAIN_UNTAG_PATTERN, "\024" }, // <Ctrl-T>
+-#ifdef USE_NOTMUCH
+- { "vfolder-from-query", OP_MAIN_VFOLDER_FROM_QUERY, NULL },
+- { "vfolder-from-query-readonly", OP_MAIN_VFOLDER_FROM_QUERY_READONLY, NULL },
+- { "vfolder-window-backward", OP_MAIN_WINDOWED_VFOLDER_BACKWARD, NULL },
+- { "vfolder-window-forward", OP_MAIN_WINDOWED_VFOLDER_FORWARD, NULL },
+-#endif
+- { "view-attachments", OP_VIEW_ATTACHMENTS, "v" },
+- { "view-raw-message", OP_VIEW_RAW_MESSAGE, NULL },
+- /* This is deprecated. Leave it last so it doesn't show up in the help. */
+- { "buffy-list", OP_MAILBOX_LIST, NULL },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpPager - Key bindings for the pager menu
+- */
+-const struct Binding OpPager[] = { /* map: pager */
+- { "bottom", OP_PAGER_BOTTOM, NULL },
+- { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
+- { "break-thread", OP_MAIN_BREAK_THREAD, "#" },
+- { "change-folder", OP_MAIN_CHANGE_FOLDER, "c" },
+- { "change-folder-readonly", OP_MAIN_CHANGE_FOLDER_READONLY, "\033c" }, // <Alt-c>
+-#ifdef USE_NNTP
+- { "change-newsgroup", OP_MAIN_CHANGE_GROUP, "i" },
+- { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY, "\033i" }, // <Alt-i>
+-#endif
+-#ifdef USE_NOTMUCH
+- { "change-vfolder", OP_MAIN_CHANGE_VFOLDER, NULL },
+-#endif
+- { "check-stats", OP_CHECK_STATS, NULL },
+- { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
+- { "clear-flag", OP_MAIN_CLEAR_FLAG, "W" },
+- { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
+- { "copy-message", OP_COPY_MESSAGE, "C" },
+- { "create-alias", OP_CREATE_ALIAS, "a" },
+- { "decode-copy", OP_DECODE_COPY, "\033C" }, // <Alt-C>
+- { "decode-save", OP_DECODE_SAVE, "\033s" }, // <Alt-s>
+- { "decrypt-copy", OP_DECRYPT_COPY, NULL },
+- { "decrypt-save", OP_DECRYPT_SAVE, NULL },
+- { "delete-message", OP_DELETE, "d" },
+- { "delete-subthread", OP_DELETE_SUBTHREAD, "\033d" }, // <Alt-d>
+- { "delete-thread", OP_DELETE_THREAD, "\004" }, // <Ctrl-D>
+- { "display-address", OP_DISPLAY_ADDRESS, "@" },
+- { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
+- { "edit", OP_EDIT_RAW_MESSAGE, NULL },
+- { "edit-label", OP_EDIT_LABEL, "Y" },
+- { "edit-or-view-raw-message", OP_EDIT_OR_VIEW_RAW_MESSAGE, "e" },
+- { "edit-raw-message", OP_EDIT_RAW_MESSAGE, NULL },
+- { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
+- { "enter-command", OP_ENTER_COMMAND, ":" },
+-#ifdef USE_NOTMUCH
+- { "entire-thread", OP_MAIN_ENTIRE_THREAD, NULL },
+-#endif
+- { "exit", OP_EXIT, "q" },
+- { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
+- { "flag-message", OP_FLAG_MESSAGE, "F" },
+-#ifdef USE_NNTP
+- { "followup-message", OP_FOLLOWUP, NULL },
+-#endif
+- { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
+- { "forward-message", OP_FORWARD_MESSAGE, "f" },
+-#ifdef USE_NNTP
+- { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
+-#endif
+- { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
+- { "group-reply", OP_GROUP_REPLY, "g" },
+- { "half-down", OP_HALF_DOWN, NULL },
+- { "half-up", OP_HALF_UP, NULL },
+- { "help", OP_HELP, "?" },
+-#ifdef USE_IMAP
+- { "imap-fetch-mail", OP_MAIN_IMAP_FETCH, NULL },
+- { "imap-logout-all", OP_MAIN_IMAP_LOGOUT_ALL, NULL },
+-#endif
+- { "jump", OP_JUMP, NULL },
+- { "link-threads", OP_MAIN_LINK_THREADS, "&" },
+- { "list-reply", OP_LIST_REPLY, "L" },
+- { "mail", OP_MAIL, "m" },
+- { "mail-key", OP_MAIL_KEY, "\033k" }, // <Alt-k>
+- { "mailbox-list", OP_MAILBOX_LIST, "." },
+- { "mark-as-new", OP_TOGGLE_NEW, "N" },
+- { "modify-labels", OP_MAIN_MODIFY_TAGS, NULL }, // NOTE(sileht): kept for backward compatibility
+- { "modify-labels-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL }, // NOTE(sileht): kept for backward compatibility
+- { "modify-tags", OP_MAIN_MODIFY_TAGS, NULL },
+- { "modify-tags-then-hide", OP_MAIN_MODIFY_TAGS_THEN_HIDE, NULL },
+- { "next-entry", OP_NEXT_ENTRY, "J" },
+- { "next-line", OP_NEXT_LINE, "\n" }, // <Enter>
+- { "next-line", OP_NEXT_LINE, "\r" },
+- { "next-new", OP_MAIN_NEXT_NEW, NULL },
+- { "next-new-then-unread", OP_MAIN_NEXT_NEW_THEN_UNREAD, "\t" },
+- { "next-page", OP_NEXT_PAGE, " " },
+- { "next-subthread", OP_MAIN_NEXT_SUBTHREAD, "\033n" }, // <Alt-n>
+- { "next-thread", OP_MAIN_NEXT_THREAD, "\016" }, // <Ctrl-N>
+- { "next-undeleted", OP_MAIN_NEXT_UNDELETED, "j" },
+- { "next-unread", OP_MAIN_NEXT_UNREAD, NULL },
+- { "next-unread-mailbox", OP_MAIN_NEXT_UNREAD_MAILBOX, NULL },
+- { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" },
+- { "pipe-message", OP_PIPE, "|" },
+-#ifdef USE_NNTP
+- { "post-message", OP_POST, NULL },
+-#endif
+- { "previous-entry", OP_PREV_ENTRY, "K" },
+- { "previous-line", OP_PREV_LINE, NULL },
+- { "previous-new", OP_MAIN_PREV_NEW, NULL },
+- { "previous-new-then-unread", OP_MAIN_PREV_NEW_THEN_UNREAD, NULL },
+- { "previous-page", OP_PREV_PAGE, "-" },
+- { "previous-subthread", OP_MAIN_PREV_SUBTHREAD, "\033p" }, // <Alt-p>
+- { "previous-thread", OP_MAIN_PREV_THREAD, "\020" }, // <Ctrl-P>
+- { "previous-undeleted", OP_MAIN_PREV_UNDELETED, "k" },
+- { "previous-unread", OP_MAIN_PREV_UNREAD, NULL },
+- { "print-message", OP_PRINT, "p" },
+- { "purge-message", OP_PURGE_MESSAGE, NULL },
+- { "purge-thread", OP_PURGE_THREAD, NULL },
+- { "quasi-delete", OP_MAIN_QUASI_DELETE, NULL },
+- { "quit", OP_QUIT, "Q" },
+- { "read-subthread", OP_MAIN_READ_SUBTHREAD, "\033r" }, // <Alt-r>
+- { "read-thread", OP_MAIN_READ_THREAD, "\022" }, // <Ctrl-R>
+- { "recall-message", OP_RECALL_MESSAGE, "R" },
+-#ifdef USE_NNTP
+- { "reconstruct-thread", OP_RECONSTRUCT_THREAD, NULL },
+-#endif
+- { "redraw-screen", OP_REDRAW, "\014" }, // <Ctrl-L>
+- { "reply", OP_REPLY, "r" },
+- { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
+- { "root-message", OP_MAIN_ROOT_MESSAGE, NULL },
+- { "save-message", OP_SAVE, "s" },
+- { "search", OP_SEARCH, "/" },
+- { "search-next", OP_SEARCH_NEXT, "n" },
+- { "search-opposite", OP_SEARCH_OPPOSITE, NULL },
+- { "search-reverse", OP_SEARCH_REVERSE, "\033/" }, // <Alt-/>
+- { "search-toggle", OP_SEARCH_TOGGLE, "\\" }, // <Backslash>
+- { "set-flag", OP_MAIN_SET_FLAG, "w" },
+- { "shell-escape", OP_SHELL_ESCAPE, "!" },
+- { "show-version", OP_VERSION, "V" },
+-#ifdef USE_SIDEBAR
+- { "sidebar-next", OP_SIDEBAR_NEXT, NULL },
+- { "sidebar-next-new", OP_SIDEBAR_NEXT_NEW, NULL },
+- { "sidebar-open", OP_SIDEBAR_OPEN, NULL },
+- { "sidebar-page-down", OP_SIDEBAR_PAGE_DOWN, NULL },
+- { "sidebar-page-up", OP_SIDEBAR_PAGE_UP, NULL },
+- { "sidebar-prev", OP_SIDEBAR_PREV, NULL },
+- { "sidebar-prev-new", OP_SIDEBAR_PREV_NEW, NULL },
+- { "sidebar-toggle-virtual", OP_SIDEBAR_TOGGLE_VIRTUAL, NULL },
+- { "sidebar-toggle-visible", OP_SIDEBAR_TOGGLE_VISIBLE, NULL },
+-#endif
+- { "skip-quoted", OP_PAGER_SKIP_QUOTED, "S" },
+- { "sort-mailbox", OP_SORT, "o" },
+- { "sort-reverse", OP_SORT_REVERSE, "O" },
+- { "sync-mailbox", OP_MAIN_SYNC_FOLDER, "$" },
+- { "tag-message", OP_TAG, "t" },
+- { "toggle-quoted", OP_PAGER_HIDE_QUOTED, "T" },
+- { "toggle-write", OP_TOGGLE_WRITE, "%" },
+- { "top", OP_PAGER_TOP, "^" },
+- { "undelete-message", OP_UNDELETE, "u" },
+- { "undelete-subthread", OP_UNDELETE_SUBTHREAD, "\033u" }, // <Alt-u>
+- { "undelete-thread", OP_UNDELETE_THREAD, "\025" }, // <Ctrl-U>
+-#ifdef USE_NOTMUCH
+- { "vfolder-from-query", OP_MAIN_VFOLDER_FROM_QUERY, NULL },
+- { "vfolder-from-query-readonly", OP_MAIN_VFOLDER_FROM_QUERY_READONLY, NULL },
+-#endif
+- { "view-attachments", OP_VIEW_ATTACHMENTS, "v" },
+- { "view-raw-message", OP_VIEW_RAW_MESSAGE, NULL },
+- { "what-key", OP_WHAT_KEY, NULL },
+- /* This is deprecated. Leave it last so it doesn't show up in the help. */
+- { "buffy-list", OP_MAILBOX_LIST, NULL },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpAttach - Key bindings for the attachment menu
+- */
+-const struct Binding OpAttach[] = { /* map: attachment */
+- { "bounce-message", OP_BOUNCE_MESSAGE, "b" },
+- { "check-traditional-pgp", OP_CHECK_TRADITIONAL, "\033P" }, // <Alt-P>
+- { "collapse-parts", OP_ATTACH_COLLAPSE, "v" },
+- { "compose-to-sender", OP_COMPOSE_TO_SENDER, NULL },
+- { "delete-entry", OP_DELETE, "d" },
+- { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
+- { "edit-type", OP_EDIT_TYPE, "\005" }, // <Ctrl-E>
+- { "extract-keys", OP_EXTRACT_KEYS, "\013" }, // <Ctrl-K>
+-#ifdef USE_NNTP
+- { "followup-message", OP_FOLLOWUP, NULL },
+-#endif
+- { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
+- { "forward-message", OP_FORWARD_MESSAGE, "f" },
+-#ifdef USE_NNTP
+- { "forward-to-group", OP_FORWARD_TO_GROUP, NULL },
+-#endif
+- { "group-chat-reply", OP_GROUP_CHAT_REPLY, NULL },
+- { "group-reply", OP_GROUP_REPLY, "g" },
+- { "list-reply", OP_LIST_REPLY, "L" },
+- { "pipe-entry", OP_PIPE, "|" },
+- { "print-entry", OP_PRINT, "p" },
+- { "reply", OP_REPLY, "r" },
+- { "resend-message", OP_RESEND, "\033e" }, // <Alt-e>
+- { "save-entry", OP_SAVE, "s" },
+- { "undelete-entry", OP_UNDELETE, "u" },
+- { "view-attach", OP_VIEW_ATTACH, "\n" }, // <Enter>
+- { "view-attach", OP_VIEW_ATTACH, "\r" },
+- { "view-mailcap", OP_ATTACH_VIEW_MAILCAP, "m" },
+- { "view-text", OP_ATTACH_VIEW_TEXT, "T" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpCompose - Key bindings for the compose menu
+- */
+-const struct Binding OpCompose[] = { /* map: compose */
+- { "attach-file", OP_COMPOSE_ATTACH_FILE, "a" },
+- { "attach-key", OP_COMPOSE_ATTACH_KEY, "\033k" }, // <Alt-k>
+- { "attach-message", OP_COMPOSE_ATTACH_MESSAGE, "A" },
+-#ifdef USE_NNTP
+- { "attach-news-message", OP_COMPOSE_ATTACH_NEWS_MESSAGE, NULL },
+-#endif
++extern struct Binding OpAlias[];
++extern struct Binding OpAttach[];
+ #ifdef USE_AUTOCRYPT
+- { "autocrypt-menu", OP_COMPOSE_AUTOCRYPT_MENU, "o" },
+-#endif
+- { "copy-file", OP_SAVE, "C" },
+- { "detach-file", OP_DELETE, "D" },
+- { "display-toggle-weed", OP_DISPLAY_HEADERS, "h" },
+- { "edit-bcc", OP_COMPOSE_EDIT_BCC, "b" },
+- { "edit-cc", OP_COMPOSE_EDIT_CC, "c" },
+- { "edit-description", OP_COMPOSE_EDIT_DESCRIPTION, "d" },
+- { "edit-encoding", OP_COMPOSE_EDIT_ENCODING, "\005" }, // <Ctrl-E>
+- { "edit-fcc", OP_COMPOSE_EDIT_FCC, "f" },
+- { "edit-file", OP_COMPOSE_EDIT_FILE, "\030e" }, // <Alt-e>
+-#ifdef USE_NNTP
+- { "edit-followup-to", OP_COMPOSE_EDIT_FOLLOWUP_TO, NULL },
++extern struct Binding OpAutocryptAcct[];
+ #endif
+- { "edit-from", OP_COMPOSE_EDIT_FROM, "\033f" }, // <Alt-f>
+- { "edit-headers", OP_COMPOSE_EDIT_HEADERS, "E" },
+- { "edit-language", OP_COMPOSE_EDIT_LANGUAGE, "\014" }, // <Ctrl-L>
+- { "edit-message", OP_COMPOSE_EDIT_MESSAGE, "e" },
+- { "edit-mime", OP_COMPOSE_EDIT_MIME, "m" },
+-#ifdef USE_NNTP
+- { "edit-newsgroups", OP_COMPOSE_EDIT_NEWSGROUPS, NULL },
+-#endif
+- { "edit-reply-to", OP_COMPOSE_EDIT_REPLY_TO, "r" },
+- { "edit-subject", OP_COMPOSE_EDIT_SUBJECT, "s" },
+- { "edit-to", OP_COMPOSE_EDIT_TO, "t" },
+- { "edit-type", OP_EDIT_TYPE, "\024" }, // <Ctrl-T>
+-#ifdef USE_NNTP
+- { "edit-x-comment-to", OP_COMPOSE_EDIT_X_COMMENT_TO, NULL },
+-#endif
+- { "filter-entry", OP_FILTER, "F" },
+- { "forget-passphrase", OP_FORGET_PASSPHRASE, "\006" }, // <Ctrl-F>
+- { "get-attachment", OP_COMPOSE_GET_ATTACHMENT, "G" },
+- { "group-alternatives", OP_COMPOSE_GROUP_ALTS, "&" },
+- { "group-multilingual", OP_COMPOSE_GROUP_LINGUAL, "^" },
+- { "ispell", OP_COMPOSE_ISPELL, "i" },
++extern struct Binding OpBrowser[];
++extern struct Binding OpCompose[];
++extern struct Binding OpEditor[];
++extern struct Binding OpGeneric[];
++extern struct Binding OpMain[];
+ #ifdef MIXMASTER
+- { "mix", OP_COMPOSE_MIX, "M" },
+-#endif
+- { "move-down", OP_COMPOSE_MOVE_DOWN, "+" },
+- { "move-up", OP_COMPOSE_MOVE_UP, "-" },
+- { "new-mime", OP_COMPOSE_NEW_MIME, "n" },
+- { "pgp-menu", OP_COMPOSE_PGP_MENU, "p" },
+- { "pipe-entry", OP_PIPE, "|" },
+- { "postpone-message", OP_COMPOSE_POSTPONE_MESSAGE, "P" },
+- { "print-entry", OP_PRINT, "l" },
+- { "rename-attachment", OP_COMPOSE_RENAME_ATTACHMENT, "\017" }, // <Ctrl-O>
+- { "rename-file", OP_COMPOSE_RENAME_FILE, "R" },
+- { "send-message", OP_COMPOSE_SEND_MESSAGE, "y" },
+- { "smime-menu", OP_COMPOSE_SMIME_MENU, "S" },
+- { "toggle-disposition", OP_COMPOSE_TOGGLE_DISPOSITION, "\004" }, // <Ctrl-D>
+- { "toggle-recode", OP_COMPOSE_TOGGLE_RECODE, NULL },
+- { "toggle-unlink", OP_COMPOSE_TOGGLE_UNLINK, "u" },
+- { "update-encoding", OP_COMPOSE_UPDATE_ENCODING, "U" },
+- { "view-attach", OP_VIEW_ATTACH, "\n" }, // <Enter>
+- { "view-attach", OP_VIEW_ATTACH, "\r" },
+- { "write-fcc", OP_COMPOSE_WRITE_MESSAGE, "w" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpPost - Key bindings for the postpone menu
+- */
+-const struct Binding OpPost[] = { /* map: postpone */
+- { "delete-entry", OP_DELETE, "d" },
+- { "undelete-entry", OP_UNDELETE, "u" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpAlias - Key bindings for the alias menu
+- */
+-const struct Binding OpAlias[] = { /* map: alias */
+- { "delete-entry", OP_DELETE, "d" },
+- { "undelete-entry", OP_UNDELETE, "u" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpBrowser - Key bindings for the file browser menu
+- */
+-const struct Binding OpBrowser[] = { /* map: browser */
+-#ifdef USE_NNTP
+- { "catchup", OP_CATCHUP, NULL },
+-#endif
+- { "change-dir", OP_CHANGE_DIRECTORY, "c" },
+- { "check-new", OP_CHECK_NEW, NULL },
+-#ifdef USE_IMAP
+- { "create-mailbox", OP_CREATE_MAILBOX, "C" },
+- { "delete-mailbox", OP_DELETE_MAILBOX, "d" },
+-#endif
+- { "descend-directory", OP_DESCEND_DIRECTORY, NULL },
+- { "display-filename", OP_BROWSER_TELL, "@" },
+- { "enter-mask", OP_ENTER_MASK, "m" },
+- { "goto-folder", OP_BROWSER_GOTO_FOLDER, "=" },
+- { "goto-parent", OP_GOTO_PARENT, "p" },
+- { "mailbox-list", OP_MAILBOX_LIST, "." },
+-#ifdef USE_NNTP
+- { "reload-active", OP_LOAD_ACTIVE, NULL },
+-#endif
+-#ifdef USE_IMAP
+- { "rename-mailbox", OP_RENAME_MAILBOX, "r" },
+-#endif
+- { "select-new", OP_BROWSER_NEW_FILE, "N" },
+- { "sort", OP_SORT, "o" },
+- { "sort-reverse", OP_SORT_REVERSE, "O" },
+-#if defined(USE_IMAP) || defined(USE_NNTP)
+- { "subscribe", OP_BROWSER_SUBSCRIBE, "s" },
+-#endif
+-#ifdef USE_NNTP
+- { "subscribe-pattern", OP_SUBSCRIBE_PATTERN, NULL },
+-#endif
+- { "toggle-mailboxes", OP_TOGGLE_MAILBOXES, "\t" },
+-#ifdef USE_IMAP
+- { "toggle-subscribed", OP_BROWSER_TOGGLE_LSUB, "T" },
+-#endif
+-#ifdef USE_NNTP
+- { "uncatchup", OP_UNCATCHUP, NULL },
+-#endif
+-#if defined(USE_IMAP) || defined(USE_NNTP)
+- { "unsubscribe", OP_BROWSER_UNSUBSCRIBE, "u" },
+-#endif
+-#ifdef USE_NNTP
+- { "unsubscribe-pattern", OP_UNSUBSCRIBE_PATTERN, NULL },
++extern struct Binding OpMix[];
+ #endif
+- { "view-file", OP_BROWSER_VIEW_FILE, " " },
+- /* This is deprecated. Leave it last so it doesn't show up in the help. */
+- { "buffy-list", OP_MAILBOX_LIST, NULL },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpQuery - Key bindings for the external query menu
+- */
+-const struct Binding OpQuery[] = { /* map: query */
+- { "create-alias", OP_CREATE_ALIAS, "a" },
+- { "mail", OP_MAIL, "m" },
+- { "query", OP_QUERY, "Q" },
+- { "query-append", OP_QUERY_APPEND, "A" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpEditor - Key bindings for the editor menu
+- */
+-const struct Binding OpEditor[] = { /* map: editor */
+- { "backspace", OP_EDITOR_BACKSPACE, "\010" }, // <Ctrl-H>
+- { "backward-char", OP_EDITOR_BACKWARD_CHAR, "\002" }, // <Ctrl-B>
+- { "backward-word", OP_EDITOR_BACKWARD_WORD, "\033b" }, // <Alt-b>
+- { "bol", OP_EDITOR_BOL, "\001" }, // <Ctrl-A>
+- { "capitalize-word", OP_EDITOR_CAPITALIZE_WORD, "\033c" }, // <Alt-c>
+- { "complete", OP_EDITOR_COMPLETE, "\t" }, // <Tab>
+- { "complete-query", OP_EDITOR_COMPLETE_QUERY, "\024" }, // <Ctrl-T>
+- { "delete-char", OP_EDITOR_DELETE_CHAR, "\004" }, // <Ctrl-D>
+- { "downcase-word", OP_EDITOR_DOWNCASE_WORD, "\033l" }, // <Alt-l>
+- { "eol", OP_EDITOR_EOL, "\005" }, // <Ctrl-E>
+- { "forward-char", OP_EDITOR_FORWARD_CHAR, "\006" }, // <Ctrl-F>
+- { "forward-word", OP_EDITOR_FORWARD_WORD, "\033f" }, // <Alt-f>
+- { "history-down", OP_EDITOR_HISTORY_DOWN, NULL },
+- { "history-search", OP_EDITOR_HISTORY_SEARCH, "\022" }, // <Ctrl-R>
+- { "history-up", OP_EDITOR_HISTORY_UP, NULL },
+- { "kill-eol", OP_EDITOR_KILL_EOL, "\013" }, // <Ctrl-K>
+- { "kill-eow", OP_EDITOR_KILL_EOW, "\033d" }, // <Alt-d>
+- { "kill-line", OP_EDITOR_KILL_LINE, "\025" }, // <Ctrl-U>
+- { "kill-word", OP_EDITOR_KILL_WORD, "\027" }, // <Ctrl-W>
+- { "mailbox-cycle", OP_EDITOR_MAILBOX_CYCLE, " " },
+- { "quote-char", OP_EDITOR_QUOTE_CHAR, "\026" }, // <Ctrl-V>
+- { "transpose-chars", OP_EDITOR_TRANSPOSE_CHARS, NULL },
+- { "upcase-word", OP_EDITOR_UPCASE_WORD, "\033u" }, // <Alt-u>
+- /* This is deprecated. Leave it last so it doesn't show up in the help. */
+- { "buffy-cycle", OP_EDITOR_MAILBOX_CYCLE, NULL },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpPgp - Key bindings for the pgp menu
+- */
+-const struct Binding OpPgp[] = { /* map: pgp */
+- { "verify-key", OP_VERIFY_KEY, "c" },
+- { "view-name", OP_VIEW_ID, "%" },
+- { NULL, 0, NULL },
+-};
+-
+-/**
+- * OpSmime - Key bindings for the smime menu
+- */
+-const struct Binding OpSmime[] = { /* map: smime */
+-#ifdef CRYPT_BACKEND_GPGME
+- { "verify-key", OP_VERIFY_KEY, "c" },
+- { "view-name", OP_VIEW_ID, "%" },
+-#endif
+- { NULL, 0, NULL },
+-};
+-
+-#ifdef MIXMASTER
+-/**
+- * OpMix - Key bindings for the mixmaster menu
+- */
+-const struct Binding OpMix[] = { /* map: mixmaster */
+- { "accept", OP_MIX_USE, "\n" }, // <Enter>
+- { "accept", OP_MIX_USE, "\r" }, // <Return>
+- { "append", OP_MIX_APPEND, "a" },
+- { "chain-next", OP_MIX_CHAIN_NEXT, "<right>" },
+- { "chain-prev", OP_MIX_CHAIN_PREV, "<left>" },
+- { "delete", OP_MIX_DELETE, "d" },
+- { "insert", OP_MIX_INSERT, "i" },
+- { NULL, 0, NULL },
+-};
+-#endif /* MIXMASTER */
+-
+-#ifdef USE_AUTOCRYPT
+-/**
+- * OpAutocryptAcct - Key bindings for the autocrypt account
+- */
+-const struct Binding OpAutocryptAcct[] = { /* map: autocrypt account */
+- { "create-account", OP_AUTOCRYPT_CREATE_ACCT, "c" },
+- { "delete-account", OP_AUTOCRYPT_DELETE_ACCT, "D" },
+- { "toggle-active", OP_AUTOCRYPT_TOGGLE_ACTIVE, "a" },
+- { "toggle-prefer-encrypt", OP_AUTOCRYPT_TOGGLE_PREFER, "p" },
+- { NULL, 0, NULL }
+-};
+-#endif
+-
+-// clang-format on
++extern struct Binding OpPager[];
++extern struct Binding OpPgp[];
++extern struct Binding OpPost[];
++extern struct Binding OpQuery[];
++extern struct Binding OpSmime[];
+
+ #endif /* MUTT_FUNCTIONS_H */
+diff --git a/globals.h b/globals.h
+index 35b7903a6..b86af69ce 100644
+--- a/globals.h
++++ b/globals.h
+@@ -26,18 +26,17 @@
+ #include "config.h"
+ #include <signal.h> // IWYU pragma: keep
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "keymap.h"
+ #include "where.h"
+
+ #ifdef MAIN_C
+ /* so that global vars get included */
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
++#include "ncrypt/lib.h"
+ #include "sort.h"
+ #endif /* MAIN_C */
+
+-WHERE struct ConfigSet *Config; ///< Wrapper around the user's config settings
+ WHERE struct Colors *Colors; ///< Wrapper around the user's colour settings
+
+ WHERE struct Context *Context;
+@@ -94,6 +93,8 @@ WHERE char *AutocryptDefaultKey; ///< Autocrypt default key id (used for postpon
+ WHERE struct Address *C_EnvelopeFromAddress; ///< Config: Manually set the sender for outgoing messages
+ WHERE struct Address *C_From; ///< Config: Default 'From' address to use, if isn't otherwise set
+
++WHERE bool C_AbortBackspace; ///< Config: Hitting backspace against an empty prompt aborts the prompt
++WHERE char *C_AbortKeyStr; ///< Config: String representation of key to abort prompts
+ WHERE char *C_AliasFile; ///< Config: Save new aliases to this file
+ WHERE char *C_Attribution; ///< Config: Message to start a reply, "On DATE, PERSON wrote:"
+ WHERE char *C_AttributionLocale; ///< Config: Locale for dates in the attribution message
+@@ -141,7 +142,7 @@ WHERE char *C_Shell; ///< Config: External command to ru
+ WHERE char *C_SimpleSearch; ///< Config: Pattern to search for when search doesn't contain ~'s
+ #ifdef USE_SMTP
+ WHERE char *C_SmtpUrl; ///< Config: (smtp) Url of the SMTP server
+-#endif /* USE_SMTP */
++#endif
+ WHERE char *C_Spoolfile; ///< Config: Inbox
+ WHERE char *C_StatusFormat; ///< Config: printf-like format string for the index's status line
+ WHERE char *C_TsStatusFormat; ///< Config: printf-like format string for the terminal's status (window title)
+@@ -152,9 +153,6 @@ WHERE short C_SleepTime; ///< Config: Time to pause after ce
+ WHERE short C_Timeout; ///< Config: Time to wait for user input in menus
+ WHERE short C_Wrap; ///< Config: Width to wrap text in the pager
+
+-#ifdef USE_SIDEBAR
+-WHERE short C_SidebarWidth; ///< Config: (sidebar) Width of the sidebar
+-#endif
+ #ifdef USE_IMAP
+ WHERE short C_ImapKeepalive; ///< Config: (imap) Time to wait before polling an open IMAP connection
+ WHERE short C_ImapPollTimeout; ///< Config: (imap) Maximum time to wait for a server response
+@@ -195,6 +193,7 @@ WHERE unsigned char C_FollowupToPoster; ///< Config: (nntp) Reply to the po
+ #endif
+
+ WHERE bool C_ArrowCursor; ///< Config: Use an arrow '->' instead of highlighting in the index
++WHERE char *C_ArrowString; ///< Config: Use an custom string for arrow_cursor
+ WHERE bool C_AsciiChars; ///< Config: Use plain ASCII characters, when drawing email threads
+ WHERE bool C_Askbcc; ///< Config: Ask the user for the blind-carbon-copy recipients
+ WHERE bool C_Askcc; ///< Config: Ask the user for the carbon-copy recipients
+@@ -252,10 +251,6 @@ WHERE bool C_ResumeDraftFiles; ///< Config: Process draft files li
+ WHERE bool C_SaveAddress; ///< Config: Use sender's full address as a default save folder
+ WHERE bool C_SaveEmpty; ///< Config: (mbox,mmdf) Preserve empty mailboxes
+ WHERE bool C_Score; ///< Config: Use message scoring
+-#ifdef USE_SIDEBAR
+-WHERE bool C_SidebarVisible; ///< Config: (sidebar) Show the sidebar
+-WHERE bool C_SidebarOnRight; ///< Config: (sidebar) Display the sidebar on the right
+-#endif
+ WHERE bool C_SizeShowBytes; ///< Config: Show smaller sizes in bytes
+ WHERE bool C_SizeShowFractions; ///< Config: Show size fractions with a single decimal place
+ WHERE bool C_SizeShowMb; ///< Config: Show sizes in megabytes for sizes greater than 1 megabyte
+@@ -275,6 +270,7 @@ WHERE bool C_CryptUsePka; ///< Config: Use GPGME to use PKA (
+
+ WHERE bool C_CryptConfirmhook; ///< Config: Prompt the user to confirm keys before use
+ WHERE bool C_CryptOpportunisticEncrypt; ///< Config: Enable encryption when the recipient's key is available
++WHERE bool C_CryptOpportunisticEncryptStrongKeys; ///< Config: Enable encryption only when strong a key is available
+ WHERE bool C_CryptProtectedHeadersRead; ///< Config: Display protected headers (Memory Hole) in the pager
+ WHERE bool C_CryptProtectedHeadersSave; ///< Config: Save the cleartext Subject with the headers
+ WHERE bool C_CryptProtectedHeadersWrite; ///< Config: Generate protected header (Memory Hole) for signed and encrypted emails
+diff --git a/color.c b/gui/color.c
+similarity index 98%
+rename from color.c
+rename to gui/color.c
+index 204fcde7e..cab23a4c4 100644
+--- a/color.c
++++ b/gui/color.c
+@@ -21,7 +21,7 @@
+ */
+
+ /**
+- * @page color Color and attribute parsing
++ * @page gui_color Color and attribute parsing
+ *
+ * Color and attribute parsing
+ */
+@@ -32,13 +32,14 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "mutt.h"
+ #include "color.h"
+ #include "context.h"
+ #include "globals.h"
++#include "init.h"
+ #include "mutt_commands.h"
+ #include "mutt_curses.h"
+ #include "options.h"
+@@ -95,7 +96,7 @@ static const struct Mapping ColorNames[] = {
+ #endif /* HAVE_COLOR */
+
+ // clang-format off
+-static const struct Mapping Fields[] = {
++const struct Mapping Fields[] = {
+ { "attachment", MT_COLOR_ATTACHMENT },
+ { "attach_headers", MT_COLOR_ATTACH_HEADERS },
+ { "body", MT_COLOR_BODY },
+@@ -142,7 +143,7 @@ static const struct Mapping Fields[] = {
+ { NULL, 0 },
+ };
+
+-static const struct Mapping ComposeFields[] = {
++const struct Mapping ComposeFields[] = {
+ { "header", MT_COLOR_COMPOSE_HEADER },
+ { "security_encrypt", MT_COLOR_COMPOSE_SECURITY_ENCRYPT },
+ { "security_sign", MT_COLOR_COMPOSE_SECURITY_SIGN },
+@@ -373,7 +374,7 @@ void mutt_colors_free(struct Colors **ptr)
+ struct Colors *mutt_colors_new(void)
+ {
+ struct Colors *c = mutt_mem_calloc(1, sizeof(*c));
+- c->notify = notify_new(c, NT_COLOR);
++ c->notify = notify_new();
+
+ quotes_init(c);
+ defs_init(c);
+@@ -827,7 +828,7 @@ static enum CommandResult parse_uncolor(struct Buffer *buf, struct Buffer *s,
+ {
+ colors_clear(c);
+ struct EventColor ec = { false }; // Color reset/removed
+- notify_send(c->notify, NT_COLOR, MT_COLOR_MAX, (intptr_t) &ec);
++ notify_send(c->notify, NT_COLOR, MT_COLOR_MAX, &ec);
+ return MUTT_CMD_SUCCESS;
+ }
+
+@@ -859,7 +860,7 @@ static enum CommandResult parse_uncolor(struct Buffer *buf, struct Buffer *s,
+ c->defs[object] = A_NORMAL;
+
+ struct EventColor ec = { false }; // Color reset/removed
+- notify_send(c->notify, NT_COLOR, object, (intptr_t) &ec);
++ notify_send(c->notify, NT_COLOR, object, &ec);
+ return MUTT_CMD_SUCCESS;
+ }
+
+@@ -909,7 +910,7 @@ static enum CommandResult parse_uncolor(struct Buffer *buf, struct Buffer *s,
+ if (changed)
+ {
+ struct EventColor ec = { false }; // Color reset/removed
+- notify_send(c->notify, NT_COLOR, object, (intptr_t) &ec);
++ notify_send(c->notify, NT_COLOR, object, &ec);
+ }
+
+ return MUTT_CMD_SUCCESS;
+@@ -917,7 +918,7 @@ static enum CommandResult parse_uncolor(struct Buffer *buf, struct Buffer *s,
+
+ #ifdef HAVE_COLOR
+ /**
+- * mutt_parse_uncolor - Parse the 'uncolor' command - Implements ::command_t
++ * mutt_parse_uncolor - Parse the 'uncolor' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_uncolor(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -927,7 +928,7 @@ enum CommandResult mutt_parse_uncolor(struct Buffer *buf, struct Buffer *s,
+ #endif
+
+ /**
+- * mutt_parse_unmono - Parse the 'unmono' command - Implements ::command_t
++ * mutt_parse_unmono - Parse the 'unmono' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_unmono(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -1341,7 +1342,7 @@ static enum CommandResult parse_color(struct Colors *c, struct Buffer *buf, stru
+ if (rc == MUTT_CMD_SUCCESS)
+ {
+ struct EventColor ec = { true }; // Color set/added
+- notify_send(c->notify, NT_COLOR, object, (intptr_t) &ec);
++ notify_send(c->notify, NT_COLOR, object, &ec);
+ }
+
+ return rc;
+@@ -1349,7 +1350,7 @@ static enum CommandResult parse_color(struct Colors *c, struct Buffer *buf, stru
+
+ #ifdef HAVE_COLOR
+ /**
+- * mutt_parse_color - Parse the 'color' command - Implements ::command_t
++ * mutt_parse_color - Parse the 'color' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_color(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -1365,7 +1366,7 @@ enum CommandResult mutt_parse_color(struct Buffer *buf, struct Buffer *s,
+ #endif
+
+ /**
+- * mutt_parse_mono - Parse the 'mono' command - Implements ::command_t
++ * mutt_parse_mono - Parse the 'mono' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_mono(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+diff --git a/color.h b/gui/color.h
+similarity index 99%
+rename from color.h
+rename to gui/color.h
+index 3841afd48..0d9446985 100644
+--- a/color.h
++++ b/gui/color.h
+@@ -27,7 +27,7 @@
+ #include <regex.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "mutt_commands.h"
+
+ /**
+diff --git a/curs_lib.c b/gui/curs_lib.c
+similarity index 90%
+rename from curs_lib.c
+rename to gui/curs_lib.c
+index bfab03b45..356cbeb9f 100644
+--- a/curs_lib.c
++++ b/gui/curs_lib.c
+@@ -22,7 +22,7 @@
+ */
+
+ /**
+- * @page curs_lib GUI miscellaneous curses (window drawing) routines
++ * @page gui_curs_lib GUI miscellaneous curses (window drawing) routines
+ *
+ * GUI miscellaneous curses (window drawing) routines
+ */
+@@ -42,14 +42,16 @@
+ #include <termios.h>
+ #include <unistd.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
+ #include "mutt.h"
+ #include "curs_lib.h"
+ #include "browser.h"
+ #include "color.h"
+ #include "enter_state.h"
+ #include "globals.h"
++#include "keymap.h"
+ #include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+@@ -197,7 +199,7 @@ struct KeyEvent mutt_getch(void)
+
+ SigInt = 0;
+
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+ #ifdef KEY_RESIZE
+ /* ncurses 4.2 sends this when the screen is resized */
+ ch = KEY_RESIZE;
+@@ -208,7 +210,7 @@ struct KeyEvent mutt_getch(void)
+ #else
+ ch = getch();
+ #endif /* USE_INOTIFY */
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+
+ if (SigInt)
+ {
+@@ -238,7 +240,7 @@ struct KeyEvent mutt_getch(void)
+
+ ret.ch = ch;
+ ret.op = 0;
+- return (ch == ctrl('G')) ? err : ret;
++ return (ch == AbortKey) ? err : ret;
+ }
+
+ /**
+@@ -416,13 +418,13 @@ enum QuadOption mutt_yesorno(const char *msg, enum QuadOption def)
+ clearok(stdscr, true);
+ mutt_menu_current_redraw();
+ }
+- if (MuttMessageWindow->cols)
++ if (MuttMessageWindow->state.cols)
+ {
+- prompt_lines = (msg_wid + answer_string_wid + MuttMessageWindow->cols - 1) /
+- MuttMessageWindow->cols;
++ prompt_lines = (msg_wid + answer_string_wid + MuttMessageWindow->state.cols - 1) /
++ MuttMessageWindow->state.cols;
+ prompt_lines = MAX(1, MIN(3, prompt_lines));
+ }
+- if (prompt_lines != MuttMessageWindow->rows)
++ if (prompt_lines != MuttMessageWindow->state.rows)
+ {
+ mutt_window_reflow_message_rows(prompt_lines);
+ mutt_menu_current_redraw();
+@@ -430,8 +432,8 @@ enum QuadOption mutt_yesorno(const char *msg, enum QuadOption def)
+
+ /* maxlen here is sort of arbitrary, so pick a reasonable upper bound */
+ trunc_msg_len = mutt_wstr_trunc(
+- msg, (size_t) 4 * prompt_lines * MuttMessageWindow->cols,
+- ((size_t) prompt_lines * MuttMessageWindow->cols) - answer_string_wid, NULL);
++ msg, (size_t) 4 * prompt_lines * MuttMessageWindow->state.cols,
++ ((size_t) prompt_lines * MuttMessageWindow->state.cols) - answer_string_wid, NULL);
+
+ mutt_window_move(MuttMessageWindow, 0, 0);
+ mutt_curses_set_color(MT_COLOR_PROMPT);
+@@ -480,7 +482,7 @@ enum QuadOption mutt_yesorno(const char *msg, enum QuadOption def)
+ if (reno_ok)
+ regfree(&reno);
+
+- if (MuttMessageWindow->rows == 1)
++ if (MuttMessageWindow->state.rows == 1)
+ {
+ mutt_window_clearline(MuttMessageWindow, 0);
+ }
+@@ -619,6 +621,38 @@ int mutt_any_key_to_continue(const char *s)
+ return (ch >= 0) ? ch : EOF;
+ }
+
++/**
++ * mutt_dlg_dopager_observer - Listen for config changes affecting the dopager menus - Implements ::observer_t
++ */
++static int mutt_dlg_dopager_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") != 0)
++ return 0;
++
++ struct MuttWindow *win_first = TAILQ_FIRST(&dlg->children);
++ if (!win_first)
++ return -1;
++
++ if ((C_StatusOnTop && (win_first->type == WT_PAGER)) ||
++ (!C_StatusOnTop && (win_first->type != WT_PAGER)))
++ {
++ // Swap the Index and the IndexBar Windows
++ TAILQ_REMOVE(&dlg->children, win_first, entries);
++ TAILQ_INSERT_TAIL(&dlg->children, win_first, entries);
++ }
++
++ mutt_window_reflow(dlg);
++ return 0;
++}
++
+ /**
+ * mutt_do_pager - Display some page-able text to the user
+ * @param banner Message for status bar
+@@ -631,6 +665,44 @@ int mutt_any_key_to_continue(const char *s)
+ int mutt_do_pager(const char *banner, const char *tempfile, PagerFlags do_color,
+ struct Pager *info)
+ {
++ struct Pager info2 = { 0 };
++ if (!info)
++ info = &info2;
++
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "do-pager";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *pager =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ pager->type = WT_PAGER;
++ struct MuttWindow *pbar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ pbar->type = WT_PAGER_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, pbar);
++ mutt_window_add_child(dlg, pager);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, pager);
++ mutt_window_add_child(dlg, pbar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_dlg_dopager_observer, dlg);
++ dialog_push(dlg);
++
++ info->win_ibar = NULL;
++ info->win_index = NULL;
++ info->win_pbar = pbar;
++ info->win_pager = pager;
++
+ int rc;
+
+ if (!C_Pager || (mutt_str_strcmp(C_Pager, "builtin") == 0))
+@@ -652,33 +724,9 @@ int mutt_do_pager(const char *banner, const char *tempfile, PagerFlags do_color,
+ mutt_buffer_pool_release(&cmd);
+ }
+
+- return rc;
+-}
+-
+-/**
+- * mutt_enter_fname_full - Ask the user to select a file
+- * @param[in] prompt Prompt
+- * @param[in] buf Buffer for the result
+- * @param[in] buflen Length of the buffer
+- * @param[in] mailbox If true, select mailboxes
+- * @param[in] multiple Allow multiple selections
+- * @param[out] files List of files selected
+- * @param[out] numfiles Number of files selected
+- * @param[in] flags Flags, see #SelectFileFlags
+- * @retval 0 Success
+- * @retval -1 Error
+- */
+-int mutt_enter_fname_full(const char *prompt, char *buf, size_t buflen, bool mailbox,
+- bool multiple, char ***files, int *numfiles, SelectFileFlags flags)
+-{
+- struct Buffer *fname = mutt_buffer_pool_get();
+-
+- mutt_buffer_addstr(fname, NONULL(buf));
+- int rc = mutt_buffer_enter_fname_full(prompt, fname, mailbox, multiple, files,
+- numfiles, flags);
+- mutt_str_strfcpy(buf, mutt_b2s(fname), buflen);
+-
+- mutt_buffer_pool_release(&fname);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_dopager_observer, dlg);
++ mutt_window_free(&dlg);
+ return rc;
+ }
+
+@@ -881,7 +929,7 @@ int mutt_multi_choice(const char *prompt, const char *letters)
+ clearok(stdscr, true);
+ mutt_menu_current_redraw();
+ }
+- if (MuttMessageWindow->cols)
++ if (MuttMessageWindow->state.cols)
+ {
+ int width = mutt_strwidth(prompt) + 2; // + '?' + space
+ /* If we're going to colour the options,
+@@ -889,10 +937,11 @@ int mutt_multi_choice(const char *prompt, const char *letters)
+ if (opt_cols)
+ width -= 2 * mutt_str_strlen(letters);
+
+- prompt_lines = (width + MuttMessageWindow->cols - 1) / MuttMessageWindow->cols;
++ prompt_lines = (width + MuttMessageWindow->state.cols - 1) /
++ MuttMessageWindow->state.cols;
+ prompt_lines = MAX(1, MIN(3, prompt_lines));
+ }
+- if (prompt_lines != MuttMessageWindow->rows)
++ if (prompt_lines != MuttMessageWindow->state.rows)
+ {
+ mutt_window_reflow_message_rows(prompt_lines);
+ mutt_menu_current_redraw();
+@@ -965,7 +1014,7 @@ int mutt_multi_choice(const char *prompt, const char *letters)
+ }
+ mutt_beep(false);
+ }
+- if (MuttMessageWindow->rows == 1)
++ if (MuttMessageWindow->state.rows == 1)
+ {
+ mutt_window_clearline(MuttMessageWindow, 0);
+ }
+@@ -1285,6 +1334,19 @@ size_t mutt_wstr_trunc(const char *src, size_t maxlen, size_t maxwid, size_t *wi
+ * @retval num Screen cells string would use
+ */
+ int mutt_strwidth(const char *s)
++{
++ if (!s)
++ return 0;
++ return mutt_strnwidth(s, mutt_str_strlen(s));
++}
++
++/**
++ * mutt_strnwidth - Measure a string's width in screen cells
++ * @param s String to be measured
++ * @param n Length of string to be measured
++ * @retval num Screen cells string would use
++ */
++int mutt_strnwidth(const char *s, size_t n)
+ {
+ if (!s)
+ return 0;
+@@ -1294,8 +1356,6 @@ int mutt_strwidth(const char *s)
+ size_t k;
+ mbstate_t mbstate;
+
+- size_t n = mutt_str_strlen(s);
+-
+ memset(&mbstate, 0, sizeof(mbstate));
+ for (w = 0; n && (k = mbrtowc(&wc, s, n, &mbstate)); s += k, n -= k)
+ {
+diff --git a/curs_lib.h b/gui/curs_lib.h
+similarity index 92%
+rename from curs_lib.h
+rename to gui/curs_lib.h
+index ecd8bb93d..6be0734f2 100644
+--- a/curs_lib.h
++++ b/gui/curs_lib.h
+@@ -55,7 +55,6 @@ void mutt_beep(bool force);
+ int mutt_do_pager(const char *banner, const char *tempfile, PagerFlags do_color, struct Pager *info);
+ void mutt_edit_file(const char *editor, const char *file);
+ void mutt_endwin(void);
+-int mutt_enter_fname_full(const char *prompt, char *buf, size_t buflen, bool mailbox, bool multiple, char ***files, int *numfiles, SelectFileFlags flags);
+ void mutt_flushinp(void);
+ void mutt_flush_macro_to_endcond(void);
+ void mutt_flush_unget_to_endcond(void);
+@@ -76,18 +75,18 @@ void mutt_refresh(void);
+ void mutt_show_error(void);
+ void mutt_simple_format(char *buf, size_t buflen, int min_width, int max_width, enum FormatJustify justify, char pad_char, const char *s, size_t n, bool arboreal);
+ int mutt_strwidth(const char *s);
++int mutt_strnwidth(const char *s, size_t len);
+ void mutt_unget_event(int ch, int op);
+ void mutt_unget_string(const char *s);
+ size_t mutt_wstr_trunc(const char *src, size_t maxlen, size_t maxwid, size_t *width);
+ enum QuadOption mutt_yesorno(const char *msg, enum QuadOption def);
+
+-#define mutt_buffer_get_field(field, buf, complete) mutt_buffer_get_field_full(field, buf, complete, 0, NULL, NULL)
++#define mutt_buffer_get_field(field, buf, complete) mutt_buffer_get_field_full(field, buf, complete, false, NULL, NULL)
+ int mutt_buffer_get_field_full(const char *field, struct Buffer *buf, CompletionFlags complete, bool multiple, char ***files, int *numfiles);
+
+ #define mutt_buffer_enter_fname(prompt, fname, mailbox) mutt_buffer_enter_fname_full(prompt, fname, mailbox, false, NULL, NULL, MUTT_SEL_NO_FLAGS)
+ int mutt_buffer_enter_fname_full(const char *prompt, struct Buffer *fname, bool mailbox, bool multiple, char ***files, int *numfiles, SelectFileFlags flags);
+
+-#define mutt_enter_fname(prompt, buf, buflen, mailbox) mutt_enter_fname_full(prompt, buf, buflen, mailbox, false, NULL, NULL, 0)
+ #define mutt_get_field(field, buf, buflen, complete) mutt_get_field_full(field, buf, buflen, complete, false, NULL, NULL)
+ #define mutt_get_password(msg, buf, buflen) mutt_get_field_unbuffered(msg, buf, buflen, MUTT_PASS)
+
+diff --git a/gui/lib.h b/gui/lib.h
+new file mode 100644
+index 000000000..7606985d8
+--- /dev/null
++++ b/gui/lib.h
+@@ -0,0 +1,50 @@
++/**
++ * @file
++ * Convenience wrapper for the gui headers
++ *
++ * @authors
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page gui GUI: Graphical code
++ *
++ * Curses and Window code.
++ *
++ * | File | Description |
++ * | :------------------ | :------------------------- |
++ * | gui/color.c | @subpage gui_color |
++ * | gui/curs_lib.c | @subpage gui_curs_lib |
++ * | gui/mutt_curses.c | @subpage gui_curses |
++ * | gui/mutt_window.c | @subpage gui_window |
++ * | gui/reflow.c | @subpage gui_reflow |
++ * | gui/terminal.c | @subpage gui_terminal |
++ */
++
++#ifndef MUTT_GUI_LIB_H
++#define MUTT_GUI_LIB_H
++
++// IWYU pragma: begin_exports
++#include "color.h"
++#include "curs_lib.h"
++#include "mutt_curses.h"
++#include "mutt_window.h"
++#include "reflow.h"
++#include "terminal.h"
++// IWYU pragma: end_exports
++
++#endif /* MUTT_GUI_LIB_H */
+diff --git a/mutt_curses.c b/gui/mutt_curses.c
+similarity index 95%
+rename from mutt_curses.c
+rename to gui/mutt_curses.c
+index 8a721c30f..8fb23e8c7 100644
+--- a/mutt_curses.c
++++ b/gui/mutt_curses.c
+@@ -22,6 +22,12 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
++/**
++ * @page gui_curses Wrapper functions around Curses/Slang
++ *
++ * Wrapper functions around Curses/Slang
++ */
++
+ #include "config.h"
+ #include "mutt_curses.h"
+ #include "color.h"
+diff --git a/mutt_curses.h b/gui/mutt_curses.h
+similarity index 97%
+rename from mutt_curses.h
+rename to gui/mutt_curses.h
+index a0556703b..7c21b7eb9 100644
+--- a/mutt_curses.h
++++ b/gui/mutt_curses.h
+@@ -25,7 +25,6 @@
+ #define MUTT_MUTT_CURSES_H
+
+ #include "config.h"
+-#include <stdbool.h>
+ #include "color.h"
+
+ #ifdef USE_SLANG_CURSES
+@@ -53,7 +52,7 @@
+ #else /* USE_SLANG_CURSES */
+
+ #ifdef HAVE_NCURSESW_NCURSES_H
+-#include <ncursesw/ncurses.h>
++#include <ncursesw/ncurses.h> // IWYU pragma: keep
+ #elif defined(HAVE_NCURSES_NCURSES_H)
+ #include <ncurses/ncurses.h>
+ #elif defined(HAVE_NCURSES_H)
+diff --git a/gui/mutt_window.c b/gui/mutt_window.c
+new file mode 100644
+index 000000000..ad5e44b73
+--- /dev/null
++++ b/gui/mutt_window.c
+@@ -0,0 +1,649 @@
++/**
++ * @file
++ * Window management
++ *
++ * @authors
++ * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page gui_window Window management
++ *
++ * Window management
++ */
++
++#include "config.h"
++#include <stdarg.h>
++#include <string.h>
++#include "mutt/lib.h"
++#include "config/lib.h"
++#include "core/lib.h"
++#include "debug/lib.h"
++#include "mutt_window.h"
++#include "globals.h"
++#include "mutt_curses.h"
++#include "mutt_menu.h"
++#include "options.h"
++#include "reflow.h"
++
++struct MuttWindow *RootWindow = NULL; ///< Parent of all Windows
++struct MuttWindow *MuttDialogWindow = NULL; ///< Parent of all Dialogs
++struct MuttWindow *MuttHelpWindow = NULL; ///< Help Window
++struct MuttWindow *MuttMessageWindow = NULL; ///< Message Window
++
++/**
++ * mutt_window_new - Create a new Window
++ * @param orient Window orientation, e.g. #MUTT_WIN_ORIENT_VERTICAL
++ * @param size Window size, e.g. #MUTT_WIN_SIZE_MAXIMISE
++ * @param rows Initial number of rows to allocate, can be #MUTT_WIN_SIZE_UNLIMITED
++ * @param cols Initial number of columns to allocate, can be #MUTT_WIN_SIZE_UNLIMITED
++ * @retval ptr New Window
++ */
++struct MuttWindow *mutt_window_new(enum MuttWindowOrientation orient,
++ enum MuttWindowSize size, int rows, int cols)
++{
++ struct MuttWindow *win = mutt_mem_calloc(1, sizeof(struct MuttWindow));
++
++ win->orient = orient;
++ win->size = size;
++ win->req_rows = rows;
++ win->req_cols = cols;
++ win->state.visible = true;
++ TAILQ_INIT(&win->children);
++ return win;
++}
++
++/**
++ * mutt_window_free - Free a Window and its children
++ * @param ptr Window to free
++ */
++void mutt_window_free(struct MuttWindow **ptr)
++{
++ if (!ptr || !*ptr)
++ return;
++
++ struct MuttWindow *win = *ptr;
++
++ if (win->wdata && win->free_wdata)
++ win->free_wdata(win, &win->wdata); // Custom function to free private data
++
++ mutt_winlist_free(&win->children);
++
++ FREE(ptr);
++}
++
++#ifdef USE_SLANG_CURSES
++/**
++ * vw_printw - Write a formatted string to a Window (function missing from Slang)
++ * @param win Window
++ * @param fmt printf format string
++ * @param ap printf arguments
++ * @retval 0 Always
++ */
++static int vw_printw(SLcurses_Window_Type *win, const char *fmt, va_list ap)
++{
++ char buf[1024];
++
++ (void) SLvsnprintf(buf, sizeof(buf), (char *) fmt, ap);
++ SLcurses_waddnstr(win, buf, -1);
++ return 0;
++}
++#endif
++
++/**
++ * mutt_window_clearline - Clear a row of a Window
++ * @param win Window
++ * @param row Row to clear
++ */
++void mutt_window_clearline(struct MuttWindow *win, int row)
++{
++ mutt_window_move(win, row, 0);
++ mutt_window_clrtoeol(win);
++}
++
++/**
++ * mutt_window_clrtobot - Clear to the bottom of the Window
++ *
++ * @note Assumes the cursor has already been positioned within the Window.
++ */
++void mutt_window_clrtobot(void)
++{
++ clrtobot();
++}
++
++/**
++ * mutt_window_clrtoeol - Clear to the end of the line
++ * @param win Window
++ *
++ * @note Assumes the cursor has already been positioned within the window.
++ */
++void mutt_window_clrtoeol(struct MuttWindow *win)
++{
++ if (!win || !stdscr)
++ return;
++
++ if (win->state.col_offset + win->state.cols == COLS)
++ clrtoeol();
++ else
++ {
++ int row = 0;
++ int col = 0;
++ getyx(stdscr, row, col);
++ int curcol = col;
++ while (curcol < (win->state.col_offset + win->state.cols))
++ {
++ addch(' ');
++ curcol++;
++ }
++ move(row, col);
++ }
++}
++
++/**
++ * mutt_dlg_rootwin_observer - Listen for config changes affecting the Root Window - Implements ::observer_t
++ */
++static int mutt_dlg_rootwin_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *root_win = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "help") == 0)
++ {
++ MuttHelpWindow->state.visible = C_Help;
++ goto reflow;
++ }
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") == 0)
++ {
++ struct MuttWindow *first = TAILQ_FIRST(&root_win->children);
++ if (!first)
++ return -1;
++
++ if ((C_StatusOnTop && (first->type == WT_HELP_BAR)) ||
++ (!C_StatusOnTop && (first->type != WT_HELP_BAR)))
++ {
++ // Swap the HelpLine and the Dialogs Container
++ struct MuttWindow *next = TAILQ_NEXT(first, entries);
++ if (!next)
++ return -1;
++ TAILQ_REMOVE(&root_win->children, next, entries);
++ TAILQ_INSERT_HEAD(&root_win->children, next, entries);
++ }
++ }
++
++reflow:
++ mutt_window_reflow(root_win);
++ return 0;
++}
++
++/**
++ * mutt_window_free_all - Free all the default Windows
++ */
++void mutt_window_free_all(void)
++{
++ if (NeoMutt)
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_rootwin_observer, RootWindow);
++ MuttDialogWindow = NULL;
++ MuttHelpWindow = NULL;
++ MuttMessageWindow = NULL;
++ mutt_window_free(&RootWindow);
++}
++
++/**
++ * mutt_window_get_coords - Get the cursor position in the Window
++ * @param[in] win Window
++ * @param[out] row Row in Window
++ * @param[out] col Column in Window
++ *
++ * Assumes the current position is inside the window. Otherwise it will
++ * happily return negative or values outside the window boundaries
++ */
++void mutt_window_get_coords(struct MuttWindow *win, int *row, int *col)
++{
++ int x = 0;
++ int y = 0;
++
++ getyx(stdscr, y, x);
++ if (col)
++ *col = x - win->state.col_offset;
++ if (row)
++ *row = y - win->state.row_offset;
++}
++
++/**
++ * mutt_window_init - Create the default Windows
++ *
++ * Create the Help, Index, Status, Message and Sidebar Windows.
++ */
++void mutt_window_init(void)
++{
++ if (RootWindow)
++ return;
++
++ RootWindow = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 0, 0);
++ RootWindow->type = WT_ROOT;
++ MuttHelpWindow = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 1, MUTT_WIN_SIZE_UNLIMITED);
++ MuttHelpWindow->type = WT_HELP_BAR;
++ MuttHelpWindow->state.visible = C_Help;
++ MuttDialogWindow = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ MuttDialogWindow->type = WT_ALL_DIALOGS;
++ MuttMessageWindow = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 1, MUTT_WIN_SIZE_UNLIMITED);
++ MuttMessageWindow->type = WT_MESSAGE;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(RootWindow, MuttDialogWindow);
++ mutt_window_add_child(RootWindow, MuttHelpWindow);
++ }
++ else
++ {
++ mutt_window_add_child(RootWindow, MuttHelpWindow);
++ mutt_window_add_child(RootWindow, MuttDialogWindow);
++ }
++
++ mutt_window_add_child(RootWindow, MuttMessageWindow);
++ notify_observer_add(NeoMutt->notify, mutt_dlg_rootwin_observer, RootWindow);
++}
++
++/**
++ * mutt_window_move - Move the cursor in a Window
++ * @param win Window
++ * @param row Row to move to
++ * @param col Column to move to
++ * @retval OK Success
++ * @retval ERR Error
++ */
++int mutt_window_move(struct MuttWindow *win, int row, int col)
++{
++ return move(win->state.row_offset + row, win->state.col_offset + col);
++}
++
++/**
++ * mutt_window_mvaddstr - Move the cursor and write a fixed string to a Window
++ * @param win Window to write to
++ * @param row Row to move to
++ * @param col Column to move to
++ * @param str String to write
++ * @retval OK Success
++ * @retval ERR Error
++ */
++int mutt_window_mvaddstr(struct MuttWindow *win, int row, int col, const char *str)
++{
++#ifdef USE_SLANG_CURSES
++ return mvaddstr(win->state.row_offset + row, win->state.col_offset + col, (char *) str);
++#else
++ return mvaddstr(win->state.row_offset + row, win->state.col_offset + col, str);
++#endif
++}
++
++/**
++ * mutt_window_mvprintw - Move the cursor and write a formatted string to a Window
++ * @param win Window to write to
++ * @param row Row to move to
++ * @param col Column to move to
++ * @param fmt printf format string
++ * @param ... printf arguments
++ * @retval num Success, characters written
++ * @retval ERR Error, move failed
++ */
++int mutt_window_mvprintw(struct MuttWindow *win, int row, int col, const char *fmt, ...)
++{
++ int rc = mutt_window_move(win, row, col);
++ if (rc == ERR)
++ return rc;
++
++ va_list ap;
++ va_start(ap, fmt);
++ rc = vw_printw(stdscr, fmt, ap);
++ va_end(ap);
++
++ return rc;
++}
++
++/**
++ * mutt_window_copy_size - Copy the size of one Window to another
++ * @param win_src Window to copy
++ * @param win_dst Window to resize
++ */
++void mutt_window_copy_size(const struct MuttWindow *win_src, struct MuttWindow *win_dst)
++{
++ if (!win_src || !win_dst)
++ return;
++
++ win_dst->state.rows = win_src->state.rows;
++ win_dst->state.cols = win_src->state.cols;
++ win_dst->state.row_offset = win_src->state.row_offset;
++ win_dst->state.col_offset = win_src->state.col_offset;
++}
++
++/**
++ * mutt_window_reflow - Resize a Window and its children
++ * @param win Window to resize
++ */
++void mutt_window_reflow(struct MuttWindow *win)
++{
++ if (OptNoCurses)
++ return;
++
++ mutt_debug(LL_DEBUG2, "entering\n");
++ window_reflow(win ? win : RootWindow);
++
++ mutt_menu_set_current_redraw_full();
++ /* the pager menu needs this flag set to recalc line_info */
++ mutt_menu_set_current_redraw(REDRAW_FLOW);
++#ifdef USE_DEBUG_WINDOW
++ debug_win_dump();
++#endif
++}
++
++/**
++ * mutt_window_reflow_message_rows - Resize the Message Window
++ * @param mw_rows Number of rows required
++ *
++ * Resize the other Windows to allow a multi-line message to be displayed.
++ */
++void mutt_window_reflow_message_rows(int mw_rows)
++{
++ MuttMessageWindow->req_rows = mw_rows;
++ mutt_window_reflow(MuttMessageWindow->parent);
++
++ /* We don't also set REDRAW_FLOW because this function only
++ * changes rows and is a temporary adjustment. */
++ mutt_menu_set_current_redraw_full();
++}
++
++/**
++ * mutt_window_wrap_cols - Calculate the wrap column for a given screen width
++ * @param width Screen width
++ * @param wrap Wrap config
++ * @retval num Column that text should be wrapped at
++ *
++ * The wrap variable can be negative, meaning there should be a right margin.
++ */
++int mutt_window_wrap_cols(int width, short wrap)
++{
++ if (wrap < 0)
++ return (width > -wrap) ? (width + wrap) : width;
++ if (wrap)
++ return (wrap < width) ? wrap : width;
++ return width;
++}
++
++/**
++ * mutt_window_addch - Write one character to a Window
++ * @param ch Character to write
++ * @retval 0 Success
++ * @retval -1 Error
++ */
++int mutt_window_addch(int ch)
++{
++ return addch(ch);
++}
++
++/**
++ * mutt_window_addnstr - Write a partial string to a Window
++ * @param str String
++ * @param num Maximum number of characters to write
++ * @retval 0 Success
++ * @retval -1 Error
++ */
++int mutt_window_addnstr(const char *str, int num)
++{
++ if (!str)
++ return -1;
++
++#ifdef USE_SLANG_CURSES
++ return addnstr((char *) str, num);
++#else
++ return addnstr(str, num);
++#endif
++}
++
++/**
++ * mutt_window_addstr - Write a string to a Window
++ * @param str String
++ * @retval 0 Success
++ * @retval -1 Error
++ */
++int mutt_window_addstr(const char *str)
++{
++ if (!str)
++ return -1;
++
++#ifdef USE_SLANG_CURSES
++ return addstr((char *) str);
++#else
++ return addstr(str);
++#endif
++}
++
++/**
++ * mutt_window_move_abs - Move the cursor to an absolute screen position
++ * @param row Screen row (0-based)
++ * @param col Screen column (0-based)
++ */
++void mutt_window_move_abs(int row, int col)
++{
++ move(row, col);
++}
++
++/**
++ * mutt_window_printf - Write a formatted string to a Window
++ * @param fmt Format string
++ * @param ... Arguments
++ * @retval num Number of characters written
++ */
++int mutt_window_printf(const char *fmt, ...)
++{
++ va_list ap;
++ va_start(ap, fmt);
++ int rc = vw_printw(stdscr, fmt, ap);
++ va_end(ap);
++
++ return rc;
++}
++
++/**
++ * mutt_window_add_child - Add a child to Window
++ * @param parent Window to add to
++ * @param child Window to add
++ */
++void mutt_window_add_child(struct MuttWindow *parent, struct MuttWindow *child)
++{
++ if (!parent || !child)
++ return;
++
++ TAILQ_INSERT_TAIL(&parent->children, child, entries);
++ child->parent = parent;
++}
++
++/**
++ * mutt_winlist_free - Free a tree of Windows
++ * @param head WindowList to free
++ */
++void mutt_winlist_free(struct MuttWindowList *head)
++{
++ if (!head)
++ return;
++
++ struct MuttWindow *np = NULL;
++ struct MuttWindow *tmp = NULL;
++ TAILQ_FOREACH_SAFE(np, head, entries, tmp)
++ {
++ TAILQ_REMOVE(head, np, entries);
++ mutt_winlist_free(&np->children);
++ FREE(&np);
++ }
++}
++
++/**
++ * mutt_window_set_root - Set the dimensions of the Root Window
++ * @param rows
++ * @param cols
++ */
++void mutt_window_set_root(int rows, int cols)
++{
++ if (!RootWindow)
++ return;
++
++ bool changed = false;
++
++ if (RootWindow->state.rows != rows)
++ {
++ RootWindow->state.rows = rows;
++ changed = true;
++ }
++
++ if (RootWindow->state.cols != cols)
++ {
++ RootWindow->state.cols = cols;
++ changed = true;
++ }
++
++ if (changed)
++ {
++ mutt_window_reflow(RootWindow);
++ }
++}
++
++/**
++ * mutt_window_is_visible - Is the Window visible?
++ * @param win Window
++ * @retval true If the Window is visible
++ *
++ * For a Window to be visible, *it* must be visible and it's parent and
++ * grandparent, etc.
++ */
++bool mutt_window_is_visible(struct MuttWindow *win)
++{
++ if (!win)
++ return false;
++
++ for (; win; win = win->parent)
++ {
++ if (!win->state.visible)
++ return false;
++ }
++
++ return true;
++}
++
++/**
++ * mutt_window_dialog - Find the parent Dialog of a Window
++ * @param win Window
++ * @retval ptr Dialog
++ *
++ * Windows may be nested under a MuttWindow of type #WT_DIALOG.
++ */
++struct MuttWindow *mutt_window_dialog(struct MuttWindow *win)
++{
++ if (!win)
++ return NULL;
++ if (win->type == WT_DIALOG)
++ return win;
++
++ return mutt_window_dialog(win->parent);
++}
++
++/**
++ * mutt_window_find - Find a Window of a given type
++ * @param root Window to start searching
++ * @param type Window type to find, e.g. #WT_INDEX_BAR
++ * @retval ptr Matching Window
++ * @retval NULL No match
++ */
++struct MuttWindow *mutt_window_find(struct MuttWindow *root, enum WindowType type)
++{
++ if (!root)
++ return NULL;
++ if (root->type == type)
++ return root;
++
++ struct MuttWindow *np = NULL;
++ struct MuttWindow *match = NULL;
++ TAILQ_FOREACH(np, &root->children, entries)
++ {
++ match = mutt_window_find(np, type);
++ if (match)
++ return match;
++ }
++
++ return NULL;
++}
++
++/**
++ * dialog_push - Display a Window to the user
++ * @param dlg Window to display
++ *
++ * The Dialog Windows are kept in a stack.
++ * The topmost is visible to the user, whilst the others are hidden.
++ *
++ * When a Window is pushed, the old Window is marked as not visible.
++ */
++void dialog_push(struct MuttWindow *dlg)
++{
++ if (!dlg || !MuttDialogWindow)
++ return;
++
++ struct MuttWindow *last = TAILQ_LAST(&MuttDialogWindow->children, MuttWindowList);
++ if (last)
++ last->state.visible = false;
++
++ TAILQ_INSERT_TAIL(&MuttDialogWindow->children, dlg, entries);
++ dlg->state.visible = true;
++ mutt_window_reflow(MuttDialogWindow);
++#ifdef USE_DEBUG_WINDOW
++ debug_win_dump();
++#endif
++}
++
++/**
++ * dialog_pop - Hide a Window from the user
++ *
++ * The topmost (visible) Window is removed from the stack and the next Window
++ * is marked as visible.
++ */
++void dialog_pop(void)
++{
++ if (!MuttDialogWindow)
++ return;
++
++ struct MuttWindow *last = TAILQ_LAST(&MuttDialogWindow->children, MuttWindowList);
++ if (!last)
++ return;
++
++ last->state.visible = false;
++ TAILQ_REMOVE(&MuttDialogWindow->children, last, entries);
++
++ last = TAILQ_LAST(&MuttDialogWindow->children, MuttWindowList);
++ if (last)
++ {
++ last->state.visible = true;
++ mutt_window_reflow(MuttDialogWindow);
++ }
++#ifdef USE_DEBUG_WINDOW
++ debug_win_dump();
++#endif
++}
+diff --git a/gui/mutt_window.h b/gui/mutt_window.h
+new file mode 100644
+index 000000000..6e06a42d4
+--- /dev/null
++++ b/gui/mutt_window.h
+@@ -0,0 +1,149 @@
++/**
++ * @file
++ * Window management
++ *
++ * @authors
++ * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_MUTT_WINDOW_H
++#define MUTT_MUTT_WINDOW_H
++
++#include "config.h"
++#include <stdbool.h>
++#include "mutt/lib.h"
++
++/**
++ * enum MuttWindowOrientation - Which way does the Window expand?
++ */
++enum MuttWindowOrientation
++{
++ MUTT_WIN_ORIENT_VERTICAL = 1, ///< Window uses all available vertical space
++ MUTT_WIN_ORIENT_HORIZONTAL, ///< Window uses all available horizontal space
++};
++
++/**
++ * enum MuttWindowSize - Control the allocation of Window space
++ */
++enum MuttWindowSize
++{
++ MUTT_WIN_SIZE_FIXED = 1, ///< Window has a fixed size
++ MUTT_WIN_SIZE_MAXIMISE, ///< Window wants as much space as possible
++ MUTT_WIN_SIZE_MINIMISE, ///< Window size depends on its children
++};
++
++#define MUTT_WIN_SIZE_UNLIMITED -1 ///< Use as much space as possible
++
++/**
++ * struct WindowState - The current, or old, state of a Window
++ */
++struct WindowState
++{
++ bool visible; ///< Window is visible
++ short rows; ///< Number of rows, can be #MUTT_WIN_SIZE_UNLIMITED
++ short cols; ///< Number of columns, can be #MUTT_WIN_SIZE_UNLIMITED
++ short row_offset; ///< Absolute on-screen row
++ short col_offset; ///< Absolute on-screen column
++};
++
++/**
++ * enum WindowType - Type of Window
++ */
++enum WindowType
++{
++ WT_ROOT, ///< Parent of All Windows
++ WT_ALL_DIALOGS, ///< Container for All Dialogs (nested Windows)
++ WT_DIALOG, ///< Dialog (nested Windows) displayed to the user
++ WT_CONTAINER, ///< Invisible shaping container Window
++ WT_HELP_BAR, ///< Help Bar containing list of useful key bindings
++ WT_MESSAGE, ///< Window for messages/errors and command entry
++ WT_INDEX, ///< An Index Window containing a selection list
++ WT_INDEX_BAR, ///< Index Bar containing status info about the Index
++ WT_PAGER, ///< Window containing paged free-form text
++ WT_PAGER_BAR, ///< Pager Bar containing status info about the Pager
++ WT_SIDEBAR, ///< Side panel containing Accounts or groups of data
++};
++
++TAILQ_HEAD(MuttWindowList, MuttWindow);
++
++/**
++ * struct MuttWindow - A division of the screen
++ *
++ * Windows for different parts of the screen
++ */
++struct MuttWindow
++{
++ short req_rows; ///< Number of rows required
++ short req_cols; ///< Number of columns required
++
++ struct WindowState state; ///< Current state of the Window
++ struct WindowState old; ///< Previous state of the Window
++
++ enum MuttWindowOrientation orient; ///< Which direction the Window will expand
++ enum MuttWindowSize size; ///< Type of Window, e.g. #MUTT_WIN_SIZE_FIXED
++
++ TAILQ_ENTRY(MuttWindow) entries; ///< Linked list
++ struct MuttWindow *parent; ///< Parent Window
++ struct MuttWindowList children; ///< Children Windows
++
++ enum WindowType type; ///< Window type, e.g. #WT_SIDEBAR
++ void *wdata; ///< Private data
++ void (*free_wdata)(struct MuttWindow *win, void **ptr); ///< Callback function to free private data
++#ifdef USE_DEBUG_WINDOW
++ const char *name;
++#endif
++};
++
++extern struct MuttWindow *MuttDialogWindow;
++extern struct MuttWindow *MuttHelpWindow;
++extern struct MuttWindow *MuttMessageWindow;
++
++// Functions that deal with the Window
++void mutt_window_add_child (struct MuttWindow *parent, struct MuttWindow *child);
++void mutt_window_copy_size (const struct MuttWindow *win_src, struct MuttWindow *win_dst);
++void mutt_window_free (struct MuttWindow **ptr);
++void mutt_window_free_all (void);
++void mutt_window_get_coords (struct MuttWindow *win, int *col, int *row);
++void mutt_window_init (void);
++struct MuttWindow *mutt_window_new (enum MuttWindowOrientation orient, enum MuttWindowSize size, int rows, int cols);
++void mutt_window_reflow (struct MuttWindow *win);
++void mutt_window_reflow_message_rows(int mw_rows);
++void mutt_window_set_root (int rows, int cols);
++int mutt_window_wrap_cols (int width, short wrap);
++
++// Functions for drawing on the Window
++int mutt_window_addch (int ch);
++int mutt_window_addnstr (const char *str, int num);
++int mutt_window_addstr (const char *str);
++void mutt_window_clearline(struct MuttWindow *win, int row);
++void mutt_window_clrtobot (void);
++void mutt_window_clrtoeol (struct MuttWindow *win);
++int mutt_window_move (struct MuttWindow *win, int row, int col);
++void mutt_window_move_abs (int row, int col);
++int mutt_window_mvaddstr (struct MuttWindow *win, int row, int col, const char *str);
++int mutt_window_mvprintw (struct MuttWindow *win, int row, int col, const char *fmt, ...);
++int mutt_window_printf (const char *format, ...);
++bool mutt_window_is_visible(struct MuttWindow *win);
++
++void mutt_winlist_free (struct MuttWindowList *head);
++struct MuttWindow *mutt_window_find(struct MuttWindow *root, enum WindowType type);
++struct MuttWindow *mutt_window_dialog(struct MuttWindow *win);
++
++void dialog_pop(void);
++void dialog_push(struct MuttWindow *dlg);
++
++#endif /* MUTT_MUTT_WINDOW_H */
+diff --git a/gui/reflow.c b/gui/reflow.c
+new file mode 100644
+index 000000000..972529b58
+--- /dev/null
++++ b/gui/reflow.c
+@@ -0,0 +1,234 @@
++/**
++ * @file
++ * Window reflowing
++ *
++ * @authors
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page gui_reflow Window reflowing
++ *
++ * Window reflowing
++ */
++
++#include "config.h"
++#include <stddef.h>
++#include "mutt/lib.h"
++#include "reflow.h"
++#include "mutt_window.h"
++
++/**
++ * window_reflow_horiz - Reflow Windows using all the available horizontal space
++ * @param win Window
++ */
++static void window_reflow_horiz(struct MuttWindow *win)
++{
++ if (!win)
++ return;
++
++ int max_count = 0;
++ int space = win->state.cols;
++
++ // Pass one - minimal allocation
++ struct MuttWindow *np = NULL;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (!np->state.visible)
++ continue;
++
++ np->old = np->state; // Save the old state for later notifications
++
++ switch (np->size)
++ {
++ case MUTT_WIN_SIZE_FIXED:
++ {
++ const int avail = MIN(space, np->req_cols);
++ np->state.cols = avail;
++ np->state.rows = win->state.rows;
++ space -= avail;
++ break;
++ }
++ case MUTT_WIN_SIZE_MAXIMISE:
++ {
++ np->state.cols = 1;
++ np->state.rows = win->state.rows;
++ max_count++;
++ space -= 1;
++ break;
++ }
++ case MUTT_WIN_SIZE_MINIMISE:
++ {
++ np->state.rows = win->state.rows;
++ np->state.cols = win->state.cols;
++ np->state.row_offset = win->state.row_offset;
++ np->state.col_offset = win->state.col_offset;
++ window_reflow(np);
++ space -= np->state.cols;
++ break;
++ }
++ }
++ }
++
++ // Pass two - sharing
++ if ((max_count > 0) && (space > 0))
++ {
++ int alloc = (space + max_count - 1) / max_count;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (space == 0)
++ break;
++ if (!np->state.visible)
++ continue;
++ if (np->size != MUTT_WIN_SIZE_MAXIMISE)
++ continue;
++
++ alloc = MIN(space, alloc);
++ np->state.cols += alloc;
++ space -= alloc;
++ }
++ }
++
++ // Pass three - position and recursion
++ int col = win->state.col_offset;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (!np->state.visible)
++ continue;
++
++ np->state.col_offset = col;
++ np->state.row_offset = win->state.row_offset;
++ col += np->state.cols;
++
++ if (np->size != MUTT_WIN_SIZE_MINIMISE)
++ window_reflow(np);
++ }
++
++ if ((space > 0) && (win->size == MUTT_WIN_SIZE_MINIMISE))
++ {
++ win->state.cols -= space;
++ }
++}
++
++/**
++ * window_reflow_vert - Reflow Windows using all the available vertical space
++ * @param win Window
++ */
++static void window_reflow_vert(struct MuttWindow *win)
++{
++ if (!win)
++ return;
++
++ int max_count = 0;
++ int space = win->state.rows;
++
++ // Pass one - minimal allocation
++ struct MuttWindow *np = NULL;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (!np->state.visible)
++ continue;
++
++ np->old = np->state; // Save the old state for later notifications
++
++ switch (np->size)
++ {
++ case MUTT_WIN_SIZE_FIXED:
++ {
++ const int avail = MIN(space, np->req_rows);
++ np->state.rows = avail;
++ np->state.cols = win->state.cols;
++ space -= avail;
++ break;
++ }
++ case MUTT_WIN_SIZE_MAXIMISE:
++ {
++ np->state.rows = 1;
++ np->state.cols = win->state.cols;
++ max_count++;
++ space -= 1;
++ break;
++ }
++ case MUTT_WIN_SIZE_MINIMISE:
++ {
++ np->state.rows = win->state.rows;
++ np->state.cols = win->state.cols;
++ np->state.row_offset = win->state.row_offset;
++ np->state.col_offset = win->state.col_offset;
++ window_reflow(np);
++ space -= np->state.rows;
++ break;
++ }
++ }
++ }
++
++ // Pass two - sharing
++ if ((max_count > 0) && (space > 0))
++ {
++ int alloc = (space + max_count - 1) / max_count;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (space == 0)
++ break;
++ if (!np->state.visible)
++ continue;
++ if (np->size != MUTT_WIN_SIZE_MAXIMISE)
++ continue;
++
++ alloc = MIN(space, alloc);
++ np->state.rows += alloc;
++ space -= alloc;
++ }
++ }
++
++ // Pass three - position and recursion
++ int row = win->state.row_offset;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ if (!np->state.visible)
++ continue;
++
++ np->state.row_offset = row;
++ np->state.col_offset = win->state.col_offset;
++ row += np->state.rows;
++
++ if (np->size != MUTT_WIN_SIZE_MINIMISE)
++ window_reflow(np);
++ }
++
++ if ((space > 0) && (win->size == MUTT_WIN_SIZE_MINIMISE))
++ {
++ win->state.rows -= space;
++ }
++}
++
++/**
++ * window_reflow - Reflow Windows
++ * @param win Root Window
++ *
++ * Using the rules coded into the Windows, such as Fixed or Maximise, allocate
++ * space to a set of nested Windows.
++ */
++void window_reflow(struct MuttWindow *win)
++{
++ if (!win)
++ return;
++ if (win->orient == MUTT_WIN_ORIENT_VERTICAL)
++ window_reflow_vert(win);
++ else
++ window_reflow_horiz(win);
++}
+diff --git a/gui/reflow.h b/gui/reflow.h
+new file mode 100644
+index 000000000..c1990efd1
+--- /dev/null
++++ b/gui/reflow.h
+@@ -0,0 +1,30 @@
++/**
++ * @file
++ * Window management
++ *
++ * @authors
++ * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_REFLOW_H
++#define MUTT_REFLOW_H
++
++struct MuttWindow;
++
++void window_reflow(struct MuttWindow *win);
++
++#endif /* MUTT_REFLOW_H */
+diff --git a/terminal.c b/gui/terminal.c
+similarity index 97%
+rename from terminal.c
+rename to gui/terminal.c
+index 8f7886236..d9b78e9ae 100644
+--- a/terminal.c
++++ b/gui/terminal.c
+@@ -21,7 +21,7 @@
+ */
+
+ /**
+- * @page terminal Set the terminal title/icon
++ * @page gui_terminal Set the terminal title/icon
+ *
+ * Set the terminal title/icon
+ */
+@@ -29,7 +29,7 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "terminal.h"
+ #include "mutt_curses.h"
+ #ifdef HAVE_NCURSESW_NCURSES_H
+diff --git a/terminal.h b/gui/terminal.h
+similarity index 100%
+rename from terminal.h
+rename to gui/terminal.h
+diff --git a/handler.c b/handler.c
+index 95975de6f..82c637b5f 100644
+--- a/handler.c
++++ b/handler.c
+@@ -37,25 +37,25 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "core/lib.h"
+ #include "mutt.h"
+ #include "handler.h"
+ #include "copy.h"
+ #include "enriched.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "mailcap.h"
+ #include "mutt_attach.h"
+ #include "mutt_logging.h"
+ #include "muttlib.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "rfc3676.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+@@ -577,13 +577,12 @@ static int autoview_handler(struct Body *a, struct State *s)
+ unlink(mutt_b2s(tempfile));
+ fflush(fp_in);
+ rewind(fp_in);
+- pid = mutt_create_filter_fd(mutt_b2s(cmd), NULL, &fp_out, &fp_err,
+- fileno(fp_in), -1, -1);
++ pid = filter_create_fd(mutt_b2s(cmd), NULL, &fp_out, &fp_err, fileno(fp_in), -1, -1);
+ }
+ else
+ {
+ mutt_file_fclose(&fp_in);
+- pid = mutt_create_filter(mutt_b2s(cmd), NULL, &fp_out, &fp_err);
++ pid = filter_create(mutt_b2s(cmd), NULL, &fp_out, &fp_err);
+ }
+
+ if (pid < 0)
+@@ -644,7 +643,7 @@ static int autoview_handler(struct Body *a, struct State *s)
+ mutt_file_fclose(&fp_out);
+ mutt_file_fclose(&fp_err);
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ if (piped)
+ mutt_file_fclose(&fp_in);
+ else
+@@ -1140,7 +1139,7 @@ static int multilingual_handler(struct Body *a, struct State *s)
+ if (C_PreferredLanguages)
+ {
+ struct Buffer *langs = mutt_buffer_pool_get();
+- cs_str_string_get(Config, "preferred_languages", langs);
++ cs_subset_str_string_get(NeoMutt->sub, "preferred_languages", langs);
+ mutt_debug(LL_DEBUG2, "RFC8255 >> preferred_languages set in config to '%s'\n",
+ mutt_b2s(langs));
+ mutt_buffer_pool_release(&langs);
+diff --git a/hcache/README.md b/hcache/README.md
+index e007e773c..3c0159f40 100644
+--- a/hcache/README.md
++++ b/hcache/README.md
+@@ -1,6 +1,7 @@
+ # Header Cache
+
+ These files make up NeoMutt's header cache.
++
+ There are six different databases to choose from:
+ - BerkeleyDB
+ - GDBM
+@@ -9,6 +10,11 @@ There are six different databases to choose from:
+ - QDBM
+ - TokyoCabinet
+
++And three different compression methods:
++- LZ4
++- ZLIB
++- ZSTD
++
+ Each backend implements the interface which is defined in `hcache.h`
+
+ # Operation
+diff --git a/hcache/backend.h b/hcache/backend.h
+index 0c7a14ccb..ccaeffa51 100644
+--- a/hcache/backend.h
++++ b/hcache/backend.h
+@@ -33,10 +33,8 @@
+ */
+ struct HcacheOps
+ {
+- /**
+- * name - Backend name
+- */
+- const char *name;
++ const char *name; ///< Header cache name
++
+ /**
+ * open - backend-specific routing to open the header cache database
+ * @param path The path to the database file
+@@ -50,6 +48,7 @@ struct HcacheOps
+ * all other backend-specific functions (see below).
+ */
+ void *(*open)(const char *path);
++
+ /**
+ * fetch - backend-specific routine to fetch a message's headers
+ * @param ctx The backend-specific context retrieved via open()
+@@ -58,13 +57,15 @@ struct HcacheOps
+ * @retval ptr Success, message's headers
+ * @retval NULL Otherwise
+ */
+- void *(*fetch)(void *ctx, const char *key, size_t keylen);
++ void *(*fetch)(void *ctx, const char *key, size_t keylen, size_t *dlen);
++
+ /**
+ * free - backend-specific routine to free fetched data
+ * @param[in] ctx The backend-specific context retrieved via open()
+ * @param[out] data A pointer to the data got with fetch() or fetch_raw()
+ */
+ void (*free)(void *ctx, void **data);
++
+ /**
+ * store - backend-specific routine to store a message's headers
+ * @param ctx The backend-specific context retrieved via open()
+@@ -76,6 +77,7 @@ struct HcacheOps
+ * @retval num Error, a backend-specific error code
+ */
+ int (*store)(void *ctx, const char *key, size_t keylen, void *data, size_t datalen);
++
+ /**
+ * delete_header - backend-specific routine to delete a message's headers
+ * @param ctx The backend-specific context retrieved via open()
+@@ -85,6 +87,7 @@ struct HcacheOps
+ * @retval num Error, a backend-specific error code
+ */
+ int (*delete_header)(void *ctx, const char *key, size_t keylen);
++
+ /**
+ * close - backend-specific routine to close a context
+ * @param[out] ctx The backend-specific context retrieved via open()
+@@ -94,6 +97,7 @@ struct HcacheOps
+ * to the context, so that FREE can be invoked on it.
+ */
+ void (*close)(void **ctx);
++
+ /**
+ * backend - backend-specific identification string
+ * @retval ptr String describing the currently used hcache backend
+diff --git a/hcache/bdb.c b/hcache/bdb.c
+index 540680caa..7a10b4d97 100644
+--- a/hcache/bdb.c
++++ b/hcache/bdb.c
+@@ -38,7 +38,7 @@
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+ #include "globals.h"
+
+@@ -154,7 +154,7 @@ static void *hcache_bdb_open(const char *path)
+ /**
+ * hcache_bdb_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_bdb_fetch(void *vctx, const char *key, size_t keylen)
++static void *hcache_bdb_fetch(void *vctx, const char *key, size_t keylen, size_t *dlen)
+ {
+ if (!vctx)
+ return NULL;
+@@ -170,6 +170,7 @@ static void *hcache_bdb_fetch(void *vctx, const char *key, size_t keylen)
+
+ ctx->db->get(ctx->db, NULL, &dkey, &data, 0);
+
++ *dlen = data.size;
+ return data.data;
+ }
+
+diff --git a/hcache/compr.h b/hcache/compr.h
+new file mode 100644
+index 000000000..eebc5a345
+--- /dev/null
++++ b/hcache/compr.h
+@@ -0,0 +1,88 @@
++/**
++ * @file
++ * API for the header cache compression
++ *
++ * @authors
++ * Copyright (C) 2019 Tino Reichardt <milky-neomutt@mcmilk.de>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_HCACHE_COMPR_H
++#define MUTT_HCACHE_COMPR_H
++
++#include <stdlib.h>
++
++/**
++ * struct ComprOps - Header Cache Compression API
++ */
++struct ComprOps
++{
++ const char *name; ///< Compression name
++
++ /**
++ * open - Open a compression context
++ * @retval ptr Success, backend-specific context
++ * @retval NULL Otherwise
++ */
++ void *(*open)(void);
++
++ /**
++ * compress - Compress header cache data
++ * @param[in] cctx Compression context
++ * @param[in] data Data to be compressed
++ * @param[in] dlen Length of the uncompressed data
++ * @param[out] clen Length of returned compressed data
++ * @retval ptr Success, pointer to compressed data
++ * @retval NULL Otherwise
++ *
++ * @note This function returns a pointer to data, which will be freed by the
++ * close() function.
++ */
++ void *(*compress)(void *cctx, const char *data, size_t dlen, size_t *clen);
++
++ /**
++ * decompress - Decompress header cache data
++ * @param[in] cctx Compression context
++ * @param[in] cbuf Data to be decompressed
++ * @param[in] clen Length of the compressed input data
++ * @retval ptr Success, pointer to decompressed data
++ * @retval NULL Otherwise
++ *
++ * @note This function returns a pointer to data, which will be freed by the
++ * close() function.
++ */
++ void *(*decompress)(void *cctx, const char *cbuf, size_t clen);
++
++ /**
++ * close - Close a compression context
++ * @param[out] cctx Backend-specific context retrieved via open()
++ *
++ * @note This function will free all allocated resources, which were
++ * allocated by open(), compress() or decompress()
++ */
++ void (*close)(void **cctx);
++};
++
++#define HCACHE_COMPRESS_OPS(_name) \
++ const struct ComprOps compr_##_name##_ops = { \
++ .name = #_name, \
++ .open = compr_##_name##_open, \
++ .compress = compr_##_name##_compress, \
++ .decompress = compr_##_name##_decompress, \
++ .close = compr_##_name##_close, \
++ };
++
++#endif /* MUTT_HCACHE_COMPR_H */
+diff --git a/hcache/compr_lz4.c b/hcache/compr_lz4.c
+new file mode 100644
+index 000000000..7bed38505
+--- /dev/null
++++ b/hcache/compr_lz4.c
+@@ -0,0 +1,129 @@
++/**
++ * @file
++ * LZ4 header cache compression
++ *
++ * @authors
++ * Copyright (C) 2019 Tino Reichardt <milky-neomutt@mcmilk.de>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page hc_comp_lz4 LZ4 compression
++ *
++ * Use LZ4 header cache compression for database backends.
++ */
++
++#include "config.h"
++#include <stddef.h>
++#include <lz4.h>
++#include "mutt/lib.h"
++#include "lib.h"
++#include "compr.h"
++
++/**
++ * struct ComprLz4Ctx - Private Lz4 Compression Context
++ */
++struct ComprLz4Ctx
++{
++ void *buf; ///< Temporary buffer
++};
++
++/**
++ * compr_lz4_open - Implements ComprOps::open()
++ */
++static void *compr_lz4_open(void)
++{
++ struct ComprLz4Ctx *ctx = mutt_mem_malloc(sizeof(struct ComprLz4Ctx));
++
++ ctx->buf = mutt_mem_malloc(LZ4_compressBound(1024 * 32));
++
++ return ctx;
++}
++
++/**
++ * compr_lz4_compress - Implements ComprOps::compress()
++ */
++static void *compr_lz4_compress(void *cctx, const char *data, size_t dlen, size_t *clen)
++{
++ if (!cctx || (dlen < 10))
++ return NULL;
++
++ struct ComprLz4Ctx *ctx = cctx;
++ int datalen = dlen;
++ int len = LZ4_compressBound(dlen);
++ mutt_mem_realloc(&ctx->buf, len + 4);
++ char *cbuf = ctx->buf;
++
++ /* int LZ4_compress_fast(const char* src, char* dst, int srcSize, int dstCapacity, int acceleration); */
++ *clen = LZ4_compress_fast(data, cbuf + 4, datalen, len, C_HeaderCacheCompressLevel);
++ if (*clen < 0)
++ mutt_error("LZ4_compress_fast() failed!");
++ *clen += 4;
++
++ /* safe ulen to first 4 bytes */
++ unsigned char *cs = ctx->buf;
++ cs[0] = dlen & 0xff;
++ dlen >>= 8;
++ cs[1] = dlen & 0xff;
++ dlen >>= 8;
++ cs[2] = dlen & 0xff;
++ dlen >>= 8;
++ cs[3] = dlen & 0xff;
++
++ return ctx->buf;
++}
++
++/**
++ * compr_lz4_decompress - Implements ComprOps::decompress()
++ */
++static void *compr_lz4_decompress(void *cctx, const char *cbuf, size_t clen)
++{
++ if (!cctx)
++ return NULL;
++
++ struct ComprLz4Ctx *ctx = cctx;
++
++ /* first 4 bytes store the size */
++ const unsigned char *cs = (const unsigned char *) cbuf;
++ size_t ulen = cs[0] + (cs[1] << 8) + (cs[2] << 16) + (cs[3] << 24);
++ if (ulen == 0)
++ return (void *) cbuf;
++
++ mutt_mem_realloc(&ctx->buf, ulen);
++ void *ubuf = ctx->buf;
++ const char *data = cbuf;
++ int ret = LZ4_decompress_safe(data + 4, ubuf, clen - 4, ulen);
++ if (ret < 0)
++ mutt_error("LZ4_decompress_safe() failed!");
++
++ return ubuf;
++}
++
++/**
++ * compr_lz4_close - Implements ComprOps::close()
++ */
++static void compr_lz4_close(void **cctx)
++{
++ if (!cctx || !*cctx)
++ return;
++
++ struct ComprLz4Ctx *ctx = *cctx;
++
++ FREE(&ctx->buf);
++ FREE(cctx);
++}
++
++HCACHE_COMPRESS_OPS(lz4)
+diff --git a/hcache/compr_zlib.c b/hcache/compr_zlib.c
+new file mode 100644
+index 000000000..926acc65e
+--- /dev/null
++++ b/hcache/compr_zlib.c
+@@ -0,0 +1,129 @@
++/**
++ * @file
++ * Zlib header cache compression
++ *
++ * @authors
++ * Copyright (C) 2019 Tino Reichardt <milky-neomutt@mcmilk.de>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page hc_comp_zlib ZLIB compression
++ *
++ * Use ZLIB header cache compression for database backends.
++ */
++
++#include "config.h"
++#include <stddef.h>
++#include <zconf.h>
++#include <zlib.h>
++#include "mutt/lib.h"
++#include "lib.h"
++#include "compr.h"
++
++/**
++ * struct ComprZlibCtx - Private Zlib Compression Context
++ */
++struct ComprZlibCtx
++{
++ void *buf; ///< Temporary buffer
++};
++
++/**
++ * compr_zlib_open - Implements ComprOps::open()
++ */
++static void *compr_zlib_open(void)
++{
++ struct ComprZlibCtx *ctx = mutt_mem_malloc(sizeof(struct ComprZlibCtx));
++
++ ctx->buf = mutt_mem_malloc(compressBound(1024 * 32));
++
++ return ctx;
++}
++
++/**
++ * compr_zlib_compress - Implements ComprOps::compress()
++ */
++static void *compr_zlib_compress(void *cctx, const char *data, size_t dlen, size_t *clen)
++{
++ if (!cctx || (dlen < 10))
++ return NULL;
++
++ struct ComprZlibCtx *ctx = cctx;
++
++ uLong len = compressBound(dlen);
++ mutt_mem_realloc(&ctx->buf, len + 4);
++ Bytef *cbuf = (unsigned char *) ctx->buf + 4;
++ const void *ubuf = data;
++ int rc = compress2(cbuf, &len, ubuf, dlen, C_HeaderCacheCompressLevel);
++ if (rc != Z_OK)
++ mutt_error("Zlib compress2() failed!");
++ *clen = len + 4;
++
++ /* safe ulen to first 4 bytes */
++ unsigned char *cs = ctx->buf;
++ cs[0] = dlen & 0xff;
++ dlen >>= 8;
++ cs[1] = dlen & 0xff;
++ dlen >>= 8;
++ cs[2] = dlen & 0xff;
++ dlen >>= 8;
++ cs[3] = dlen & 0xff;
++
++ return ctx->buf;
++}
++
++/**
++ * compr_zlib_decompress - Implements ComprOps::decompress()
++ */
++static void *compr_zlib_decompress(void *cctx, const char *cbuf, size_t clen)
++{
++ if (!cctx)
++ return NULL;
++
++ struct ComprZlibCtx *ctx = cctx;
++
++ /* first 4 bytes store the size */
++ const unsigned char *cs = (const unsigned char *) cbuf;
++ uLong ulen = cs[0] + (cs[1] << 8) + (cs[2] << 16) + (cs[3] << 24);
++ if (ulen == 0)
++ return (void *) cbuf;
++
++ mutt_mem_realloc(&ctx->buf, ulen);
++ Bytef *ubuf = ctx->buf;
++ cs = (const unsigned char *) cbuf;
++ int ret = uncompress(ubuf, &ulen, cs + 4, clen - 4);
++ if (ret != Z_OK)
++ mutt_error("Zlib uncompress() failed!");
++
++ return ubuf;
++}
++
++/**
++ * compr_zlib_close - Implements ComprOps::close()
++ */
++static void compr_zlib_close(void **cctx)
++{
++ if (!cctx || !*cctx)
++ return;
++
++ struct ComprZlibCtx *ctx = *cctx;
++
++ FREE(&ctx->buf);
++ FREE(cctx);
++}
++
++HCACHE_COMPRESS_OPS(zlib)
+diff --git a/hcache/compr_zstd.c b/hcache/compr_zstd.c
+new file mode 100644
+index 000000000..d2b563fb5
+--- /dev/null
++++ b/hcache/compr_zstd.c
+@@ -0,0 +1,166 @@
++/**
++ * @file
++ * Zstd header cache compression
++ *
++ * @authors
++ * Copyright (C) 2019 Tino Reichardt <milky-neomutt@mcmilk.de>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page hc_comp_zstd Zstandard compression
++ *
++ * Use Zstandard header cache compression for database backends.
++ */
++
++#include "config.h"
++#include <stdio.h>
++#include <zstd.h>
++#include "mutt/lib.h"
++#include "lib.h"
++#include "compr.h"
++
++/**
++ * struct ComprZstdCtx - Private Zstd Compression Context
++ */
++struct ComprZstdCtx
++{
++ void *buf; ///< Temporary buffer
++ ZSTD_CCtx *cctx; ///< Compression context
++ ZSTD_DCtx *dctx; ///< Decompression context
++ ZSTD_CDict *cdict; ///< Compression dictionary
++ ZSTD_DDict *ddict; ///< Decompression dictionary
++};
++
++/**
++ * compr_zstd_open - Implements ComprOps::open()
++ */
++static void *compr_zstd_open(void)
++{
++ struct ComprZstdCtx *ctx = mutt_mem_malloc(sizeof(struct ComprZstdCtx));
++
++ ctx->buf = mutt_mem_malloc(ZSTD_compressBound(1024 * 128));
++ ctx->cctx = ZSTD_createCCtx();
++ ctx->dctx = ZSTD_createDCtx();
++ ctx->cdict = NULL;
++ ctx->ddict = NULL;
++
++ if (!ctx->cctx || !ctx->dctx)
++ {
++ FREE(ctx);
++ return NULL;
++ }
++
++ if (C_HeaderCacheCompressDictionary)
++ {
++ FILE *fp = fopen(C_HeaderCacheCompressDictionary, "r");
++ if (fp)
++ {
++ fseek(fp, 0, SEEK_END);
++ long dsize = ftell(fp);
++ mutt_mem_realloc(&ctx->buf, dsize);
++ rewind(fp);
++ size_t done = fread(ctx->buf, 1, dsize, fp);
++ if (done == dsize)
++ {
++ ctx->cdict = ZSTD_createCDict(ctx->buf, dsize, C_HeaderCacheCompressLevel);
++ ctx->ddict = ZSTD_createDDict(ctx->buf, dsize);
++ }
++ fclose(fp);
++ }
++ }
++
++ return ctx;
++}
++
++/**
++ * compr_zstd_compress - Implements ComprOps::compress()
++ */
++static void *compr_zstd_compress(void *cctx, const char *data, size_t dlen, size_t *clen)
++{
++ if (!cctx || (dlen < 10))
++ return NULL;
++
++ struct ComprZstdCtx *ctx = cctx;
++
++ size_t ret;
++ size_t len = ZSTD_compressBound(dlen);
++ mutt_mem_realloc(&ctx->buf, len);
++
++ if (ctx->cdict)
++ ret = ZSTD_compress_usingCDict(ctx->cctx, ctx->buf, len, data, dlen, ctx->cdict);
++ else
++ ret = ZSTD_compressCCtx(ctx->cctx, ctx->buf, len, data, dlen, C_HeaderCacheCompressLevel);
++
++ if (ZSTD_isError(ret))
++ mutt_error("ZSTD_compress() failed!");
++
++ *clen = ret;
++
++ return ctx->buf;
++}
++
++/**
++ * compr_zstd_decompress - Implements ComprOps::decompress()
++ */
++static void *compr_zstd_decompress(void *cctx, const char *cbuf, size_t clen)
++{
++ struct ComprZstdCtx *ctx = cctx;
++
++ size_t ret;
++ size_t len = ZSTD_getFrameContentSize(cbuf, clen);
++ mutt_mem_realloc(&ctx->buf, len);
++
++ if (ctx->ddict)
++ ret = ZSTD_decompress_usingDDict(ctx->dctx, ctx->buf, len, cbuf, clen, ctx->ddict);
++ else
++ ret = ZSTD_decompressDCtx(ctx->dctx, ctx->buf, len, cbuf, clen);
++
++ if (ZSTD_isError(ret))
++ mutt_error("ZSTD_decompress() failed!");
++
++ return ctx->buf;
++}
++
++/**
++ * compr_zstd_close - Implements ComprOps::close()
++ */
++static void compr_zstd_close(void **cctx)
++{
++ if (!cctx || !*cctx)
++ return;
++
++ struct ComprZstdCtx *ctx = *cctx;
++
++ if (ctx->cctx)
++ ZSTD_freeCCtx(ctx->cctx);
++
++ if (ctx->dctx)
++ ZSTD_freeDCtx(ctx->dctx);
++
++ if (ctx->cdict)
++ ZSTD_freeCDict(ctx->cdict);
++
++ if (ctx->ddict)
++ ZSTD_freeDDict(ctx->ddict);
++
++ if (ctx->buf)
++ FREE(&ctx->buf);
++
++ FREE(cctx);
++}
++
++HCACHE_COMPRESS_OPS(zstd)
+diff --git a/hcache/gdbm.c b/hcache/gdbm.c
+index 017f7723b..e592bfb8e 100644
+--- a/hcache/gdbm.c
++++ b/hcache/gdbm.c
+@@ -32,7 +32,7 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <gdbm.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+ #include "globals.h"
+
+@@ -56,7 +56,7 @@ static void *hcache_gdbm_open(const char *path)
+ /**
+ * hcache_gdbm_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_gdbm_fetch(void *ctx, const char *key, size_t keylen)
++static void *hcache_gdbm_fetch(void *ctx, const char *key, size_t keylen, size_t *dlen)
+ {
+ if (!ctx)
+ return NULL;
+@@ -69,6 +69,8 @@ static void *hcache_gdbm_fetch(void *ctx, const char *key, size_t keylen)
+ dkey.dptr = (char *) key;
+ dkey.dsize = keylen;
+ data = gdbm_fetch(db, dkey);
++
++ *dlen = data.dsize;
+ return data.dptr;
+ }
+
+diff --git a/hcache/hcache.c b/hcache/hcache.c
+index 34a409e9d..ec244589f 100644
+--- a/hcache/hcache.c
++++ b/hcache/hcache.c
+@@ -7,6 +7,7 @@
+ * Copyright (C) 2004 Tobias Werth <sitowert@stud.uni-erlangen.de>
+ * Copyright (C) 2004 Brian Fundakowski Feldman <green@FreeBSD.org>
+ * Copyright (C) 2016 Pietro Cerutti <gahr@gahr.ch>
++ * Copyright (C) 2019 Tino Reichardt <milky-neomutt@mcmilk.de>
+ *
+ * @copyright
+ * This program is free software: you can redistribute it and/or modify it under
+@@ -48,10 +49,11 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
++#include "lib.h"
+ #include "backend.h"
+-#include "hcache.h"
++#include "compr.h"
+ #include "hcache/hcversion.h"
+
+ /* These Config Variables are only used in hcache/hcache.c */
+@@ -72,9 +74,6 @@ HCACHE_BACKEND(tokyocabinet)
+
+ /**
+ * hcache_ops - Backend implementations
+- *
+- * Keep this list sorted as it is in configure.ac to avoid user surprise if no
+- * header_cache_backend is specified.
+ */
+ const struct HcacheOps *hcache_ops[] = {
+ #ifdef HAVE_TC
+@@ -119,6 +118,72 @@ static const struct HcacheOps *hcache_get_backend_ops(const char *backend)
+ return *ops;
+ }
+
++#ifdef USE_HCACHE_COMPRESSION
++char *C_HeaderCacheCompressDictionary; ///< Config: (hcache) Filepath to dictionary for zstd compression
++short C_HeaderCacheCompressLevel; ///< Config: (hcache) Level of compression for method
++char *C_HeaderCacheCompressMethod; ///< Config: (hcache) Enable generic hcache database compression
++
++#define HCACHE_COMPR(name) extern const struct ComprOps compr_##name##_ops;
++HCACHE_COMPR(lz4)
++HCACHE_COMPR(zlib)
++HCACHE_COMPR(zstd)
++#undef HCACHE_COMPR
++
++#define compr_get_ops() \
++ hcache_get_backend_compr_ops(C_HeaderCacheCompressMethod)
++
++/**
++ * compr_ops - Backend implementations
++ */
++const struct ComprOps *compr_ops[] = {
++#ifdef HAVE_LZ4
++ &compr_lz4_ops,
++#endif
++#ifdef HAVE_ZLIB
++ &compr_zlib_ops,
++#endif
++#ifdef HAVE_ZSTD
++ &compr_zstd_ops,
++#endif
++ NULL
++};
++
++/**
++ * hcache_get_backend_compr_ops - Get the API functions for an hcache compress backend
++ * @param compr Name of the backend
++ * @retval ptr Set of function pointers
++ */
++static const struct ComprOps *hcache_get_backend_compr_ops(const char *compr)
++{
++ const struct ComprOps **ops = compr_ops;
++
++ if (!compr || !*compr)
++ {
++ return *ops;
++ }
++
++ for (; *ops; ops++)
++ {
++ if (strcmp(compr, (*ops)->name) == 0)
++ break;
++ }
++
++ return *ops;
++}
++
++/**
++ * mutt_hcache_is_valid_compression - Is the string a valid hcache compression backend
++ * @param s String identifying a compression method
++ * @retval true s is recognized as a valid backend
++ * @retval false otherwise
++ */
++bool mutt_hcache_is_valid_compression(const char *s)
++{
++ return hcache_get_backend_compr_ops(s);
++}
++
++#endif /* USE_HCACHE_COMPRESSION */
++
+ /**
+ * crc_matches - Is the CRC number correct?
+ * @param d Binary blob to read CRC from
+@@ -199,12 +264,11 @@ static void hcache_per_folder(struct Buffer *hcpath, const char *path,
+ if (((rc == 0) && !S_ISDIR(sb.st_mode)) || ((rc == -1) && !slash))
+ {
+ /* An existing file or a non-existing path not ending with a slash */
+- mutt_buffer_encode_path(hcpath, path);
++ mutt_encode_path(hcpath, path);
+ return;
+ }
+
+ /* We have a directory - no matter whether it exists, or not */
+-
+ struct Buffer *hcfile = mutt_buffer_pool_get();
+ if (namer)
+ {
+@@ -215,7 +279,12 @@ static void hcache_per_folder(struct Buffer *hcpath, const char *path,
+ {
+ unsigned char m[16]; /* binary md5sum */
+ struct Buffer *name = mutt_buffer_pool_get();
++#ifdef USE_HCACHE_COMPRESSION
++ const char *cm = C_HeaderCacheCompressMethod;
++ mutt_buffer_printf(name, "%s|%s%s", hcache_get_ops()->name, folder, cm ? cm : "");
++#else
+ mutt_buffer_printf(name, "%s|%s", hcache_get_ops()->name, folder);
++#endif
+ mutt_md5(mutt_b2s(name), m);
+ mutt_buffer_reset(name);
+ mutt_md5_toascii(m, name->data);
+@@ -223,7 +292,7 @@ static void hcache_per_folder(struct Buffer *hcpath, const char *path,
+ mutt_buffer_pool_release(&name);
+ }
+
+- mutt_buffer_encode_path(hcpath, mutt_b2s(hcpath));
++ mutt_encode_path(hcpath, mutt_b2s(hcpath));
+ create_hcache_dir(mutt_b2s(hcpath));
+ mutt_buffer_pool_release(&hcfile);
+ }
+@@ -291,6 +360,23 @@ header_cache_t *mutt_hcache_open(const char *path, const char *folder, hcache_na
+ hcachever = digest.intval;
+ }
+
++#ifdef USE_HCACHE_COMPRESSION
++ if (C_HeaderCacheCompressMethod)
++ {
++ const struct ComprOps *cops = compr_get_ops();
++
++ hc->cctx = cops->open();
++ if (!hc->cctx)
++ {
++ FREE(&hc);
++ return NULL;
++ }
++
++ /* remember the buffer of database backend */
++ hc->ondisk = NULL;
++ }
++#endif
++
+ hc->folder = get_foldername(folder);
+ hc->crc = hcachever;
+
+@@ -332,6 +418,11 @@ void mutt_hcache_close(header_cache_t *hc)
+ if (!hc || !ops)
+ return;
+
++#ifdef USE_HCACHE_COMPRESSION
++ if (C_HeaderCacheCompressMethod)
++ compr_get_ops()->close(&hc->cctx);
++#endif
++
+ ops->close(&hc->ctx);
+ FREE(&hc->folder);
+ FREE(&hc);
+@@ -359,7 +450,7 @@ void *mutt_hcache_fetch(header_cache_t *hc, const char *key, size_t keylen)
+
+ /**
+ * mutt_hcache_fetch_raw - Fetch a message's header from the cache
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param key Message identification string
+ * @param keylen Length of the string pointed to by key
+ * @retval ptr Success, the data if found
+@@ -378,11 +469,20 @@ void *mutt_hcache_fetch_raw(header_cache_t *hc, const char *key, size_t keylen)
+ return NULL;
+
+ struct Buffer path = mutt_buffer_make(1024);
+-
++ size_t dlen;
+ keylen = mutt_buffer_printf(&path, "%s%s", hc->folder, key);
+-
+- void *blob = ops->fetch(hc->ctx, mutt_b2s(&path), keylen);
++ void *blob = ops->fetch(hc->ctx, mutt_b2s(&path), keylen, &dlen);
+ mutt_buffer_dealloc(&path);
++
++#ifdef USE_HCACHE_COMPRESSION
++ if (C_HeaderCacheCompressMethod && blob != NULL)
++ {
++ const struct ComprOps *cops = compr_get_ops();
++ hc->ondisk = blob;
++ blob = cops->decompress(hc->cctx, blob, dlen);
++ }
++#endif
++
+ return blob;
+ }
+
+@@ -396,6 +496,15 @@ void mutt_hcache_free(header_cache_t *hc, void **data)
+ if (!hc || !ops)
+ return;
+
++#ifdef USE_HCACHE_COMPRESSION
++ /* give back the buffer returned by backend */
++ if (C_HeaderCacheCompressMethod && hc->ondisk)
++ {
++ *data = hc->ondisk;
++ hc->ondisk = NULL;
++ }
++#endif
++
+ ops->free(hc->ctx, data);
+ }
+
+@@ -420,7 +529,7 @@ int mutt_hcache_store(header_cache_t *hc, const char *key, size_t keylen,
+
+ /**
+ * mutt_hcache_store_raw - store a key / data pair
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param key Message identification string
+ * @param keylen Length of the string pointed to by key
+ * @param data Payload to associate with key
+@@ -440,8 +549,19 @@ int mutt_hcache_store_raw(header_cache_t *hc, const char *key, size_t keylen,
+
+ keylen = mutt_buffer_printf(&path, "%s%s", hc->folder, key);
+
++#ifdef USE_HCACHE_COMPRESSION
++ if (C_HeaderCacheCompressMethod)
++ {
++ /* data/dlen gets ptr to compressed data here */
++ const struct ComprOps *cops = compr_get_ops();
++ data = cops->compress(hc->cctx, data, dlen, &dlen);
++ }
++#endif
++
++ /* store uncompressed data */
+ int rc = ops->store(hc->ctx, mutt_b2s(&path), keylen, data, dlen);
+ mutt_buffer_dealloc(&path);
++
+ return rc;
+ }
+
+diff --git a/hcache/kc.c b/hcache/kc.c
+index 471aa6726..e33263c34 100644
+--- a/hcache/kc.c
++++ b/hcache/kc.c
+@@ -32,7 +32,7 @@
+ #include "config.h"
+ #include <kclangc.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+ #include "globals.h"
+
+@@ -66,15 +66,13 @@ static void *hcache_kyotocabinet_open(const char *path)
+ /**
+ * hcache_kyotocabinet_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_kyotocabinet_fetch(void *ctx, const char *key, size_t keylen)
++static void *hcache_kyotocabinet_fetch(void *ctx, const char *key, size_t keylen, size_t *dlen)
+ {
+- size_t sp;
+-
+ if (!ctx)
+ return NULL;
+
+ KCDB *db = ctx;
+- return kcdbget(db, key, keylen, &sp);
++ return kcdbget(db, key, keylen, dlen);
+ }
+
+ /**
+diff --git a/hcache/hcache.h b/hcache/lib.h
+similarity index 89%
+rename from hcache/hcache.h
+rename to hcache/lib.h
+index fc9bba47b..b776ffee7 100644
+--- a/hcache/hcache.h
++++ b/hcache/lib.h
+@@ -45,13 +45,21 @@
+ * | hcache/lmdb.c | @subpage hc_lmdb |
+ * | hcache/qdbm.c | @subpage hc_qdbm |
+ * | hcache/tc.c | @subpage hc_tc |
++ *
++ * Compression Backends:
++ *
++ * | File | Description |
++ * | :------------------ | :-------------------- |
++ * | hcache/compr_lz4.c | @subpage hc_comp_lz4 |
++ * | hcache/compr_zlib.c | @subpage hc_comp_zlib |
++ * | hcache/compr_zstd.c | @subpage hc_comp_zstd |
+ */
+
+-#ifndef MUTT_HCACHE_HCACHE_H
+-#define MUTT_HCACHE_HCACHE_H
++#ifndef MUTT_HCACHE_LIB_H
++#define MUTT_HCACHE_LIB_H
+
+-#include <stdbool.h>
+ #include <stddef.h>
++#include <stdbool.h>
+
+ struct Buffer;
+ struct Email;
+@@ -69,6 +77,8 @@ struct EmailCache
+ char *folder;
+ unsigned int crc;
+ void *ctx;
++ void *cctx;
++ void *ondisk;
+ };
+
+ typedef struct EmailCache header_cache_t;
+@@ -82,6 +92,9 @@ typedef void (*hcache_namer_t)(const char *path, struct Buffer *dest);
+
+ /* These Config Variables are only used in hcache/hcache.c */
+ extern char *C_HeaderCacheBackend;
++extern char *C_HeaderCacheCompressDictionary;
++extern short C_HeaderCacheCompressLevel;
++extern char *C_HeaderCacheCompressMethod;
+
+ /**
+ * mutt_hcache_open - open the connection to the header cache
+@@ -96,13 +109,13 @@ header_cache_t *mutt_hcache_open(const char *path, const char *folder, hcache_na
+
+ /**
+ * mutt_hcache_close - close the connection to the header cache
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ */
+ void mutt_hcache_close(header_cache_t *hc);
+
+ /**
+ * mutt_hcache_fetch - fetch and validate a message's header from the cache
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param key Message identification string
+ * @param keylen Length of the string pointed to by key
+ * @retval ptr Success, data if found and valid
+@@ -120,7 +133,7 @@ void *mutt_hcache_fetch_raw(header_cache_t *hc, const char *key, size_t keylen);
+
+ /**
+ * mutt_hcache_free - free previously fetched data
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param data Pointer to the data got using hcache_fetch or hcache_fetch_raw
+ */
+ void mutt_hcache_free(header_cache_t *hc, void **data);
+@@ -129,7 +142,7 @@ struct Email *mutt_hcache_restore(const unsigned char *d);
+
+ /**
+ * mutt_hcache_store - store a Header along with a validity datum
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param key Message identification string
+ * @param keylen Length of the string pointed to by key
+ * @param e Email to store
+@@ -145,7 +158,7 @@ int mutt_hcache_store_raw(header_cache_t *hc, const char *key, size_t keylen,
+
+ /**
+ * mutt_hcache_delete_header - delete a key / data pair
+- * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open
++ * @param hc Pointer to the header_cache_t structure got by mutt_hcache_open()
+ * @param key Message identification string
+ * @param keylen Length of the string pointed to by key
+ * @retval 0 Success
+@@ -162,5 +175,6 @@ int mutt_hcache_delete_header(header_cache_t *hc, const char *key, size_t keylen
+ const char *mutt_hcache_backend_list(void);
+
+ bool mutt_hcache_is_valid_backend(const char *s);
++bool mutt_hcache_is_valid_compression(const char *s);
+
+-#endif /* MUTT_HCACHE_HCACHE_H */
++#endif /* MUTT_HCACHE_LIB_H */
+diff --git a/hcache/lmdb.c b/hcache/lmdb.c
+index c76563ed0..5a910773a 100644
+--- a/hcache/lmdb.c
++++ b/hcache/lmdb.c
+@@ -32,7 +32,7 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <lmdb.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+
+ /** The maximum size of the database file (2GiB).
+@@ -173,7 +173,7 @@ static void *hcache_lmdb_open(const char *path)
+ /**
+ * hcache_lmdb_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_lmdb_fetch(void *vctx, const char *key, size_t keylen)
++static void *hcache_lmdb_fetch(void *vctx, const char *key, size_t keylen, size_t *dlen)
+ {
+ if (!vctx)
+ return NULL;
+@@ -205,6 +205,7 @@ static void *hcache_lmdb_fetch(void *vctx, const char *key, size_t keylen)
+ return NULL;
+ }
+
++ *dlen = data.mv_size;
+ return data.mv_data;
+ }
+
+diff --git a/hcache/qdbm.c b/hcache/qdbm.c
+index 848f8c2ed..d4645080e 100644
+--- a/hcache/qdbm.c
++++ b/hcache/qdbm.c
+@@ -34,7 +34,7 @@
+ #include <depot.h>
+ #include <stdbool.h>
+ #include <villa.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+ #include "globals.h"
+
+@@ -54,13 +54,16 @@ static void *hcache_qdbm_open(const char *path)
+ /**
+ * hcache_qdbm_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_qdbm_fetch(void *ctx, const char *key, size_t keylen)
++static void *hcache_qdbm_fetch(void *ctx, const char *key, size_t keylen, size_t *dlen)
+ {
+ if (!ctx)
+ return NULL;
+
+ VILLA *db = ctx;
+- return vlget(db, key, keylen, NULL);
++ int sp = 0;
++ void *rv = vlget(db, key, keylen, &sp);
++ *dlen = sp;
++ return rv;
+ }
+
+ /**
+diff --git a/hcache/serialize.c b/hcache/serialize.c
+index adbbab5a9..aaa6357a6 100644
+--- a/hcache/serialize.c
++++ b/hcache/serialize.c
+@@ -33,11 +33,11 @@
+ #include <stdbool.h>
+ #include <string.h>
+ #include <sys/types.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "serialize.h"
+-#include "hcache.h"
++#include "lib.h"
+
+ /**
+ * lazy_realloc - Reallocate some memory
+diff --git a/hcache/serialize.h b/hcache/serialize.h
+index 1b8a57468..0616f8e93 100644
+--- a/hcache/serialize.h
++++ b/hcache/serialize.h
+@@ -29,7 +29,7 @@
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <sys/types.h>
+-#include "hcache.h"
++#include "lib.h"
+
+ struct AddressList;
+ struct Body;
+diff --git a/hcache/tc.c b/hcache/tc.c
+index 413799191..c4e5b6662 100644
+--- a/hcache/tc.c
++++ b/hcache/tc.c
+@@ -33,7 +33,7 @@
+ #include <stddef.h>
+ #include <tcbdb.h>
+ #include <tcutil.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "backend.h"
+ #include "globals.h"
+
+@@ -60,14 +60,16 @@ static void *hcache_tokyocabinet_open(const char *path)
+ /**
+ * hcache_tokyocabinet_fetch - Implements HcacheOps::fetch()
+ */
+-static void *hcache_tokyocabinet_fetch(void *ctx, const char *key, size_t keylen)
++static void *hcache_tokyocabinet_fetch(void *ctx, const char *key, size_t keylen, size_t *dlen)
+ {
+ if (!ctx)
+ return NULL;
+
+ int sp = 0;
+ TCBDB *db = ctx;
+- return tcbdbget(db, key, keylen, &sp);
++ void *rv = tcbdbget(db, key, keylen, &sp);
++ *dlen = sp;
++ return rv;
+ }
+
+ /**
+diff --git a/hdrline.c b/hdrline.c
+index 8a4231b1b..6730ebd4a 100644
+--- a/hdrline.c
++++ b/hdrline.c
+@@ -36,16 +36,15 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "hdrline.h"
+ #include "alias.h"
+-#include "color.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hook.h"
+@@ -53,8 +52,8 @@
+ #include "mutt_parse.h"
+ #include "mutt_thread.h"
+ #include "muttlib.h"
+-#include "ncrypt/ncrypt.h"
+ #include "sort.h"
++#include "ncrypt/lib.h"
+
+ /* These Config Variables are only used in hdrline.c */
+ struct MbTable *C_CryptChars; ///< Config: User-configurable crypto flags: signed, encrypted etc.
+@@ -108,7 +107,7 @@ enum FieldType
+ };
+
+ /**
+- * mutt_is_mail_list - Is this the email address of a mailing list?
++ * mutt_is_mail_list - Is this the email address of a mailing list? - Implements ::addr_predicate_t
+ * @param addr Address to test
+ * @retval true If it's a mailing list
+ */
+@@ -120,7 +119,7 @@ bool mutt_is_mail_list(const struct Address *addr)
+ }
+
+ /**
+- * mutt_is_subscribed_list - Is this the email address of a user-subscribed mailing list?
++ * mutt_is_subscribed_list - Is this the email address of a user-subscribed mailing list? - Implements ::addr_predicate_t
+ * @param addr Address to test
+ * @retval true If it's a subscribed mailing list
+ */
+@@ -884,7 +883,7 @@ static const char *index_format_str(char *buf, size_t buflen, size_t col, int co
+
+ case 'f':
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->env->from, true);
++ mutt_addrlist_write(&e->env->from, tmp, sizeof(tmp), true);
+ mutt_format_s(buf, buflen, prec, tmp);
+ break;
+
+@@ -1119,7 +1118,7 @@ static const char *index_format_str(char *buf, size_t buflen, size_t col, int co
+
+ case 'r':
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->env->to, true);
++ mutt_addrlist_write(&e->env->to, tmp, sizeof(tmp), true);
+ if (optional && (tmp[0] == '\0'))
+ optional = false;
+ mutt_format_s(buf, buflen, prec, tmp);
+@@ -1127,7 +1126,7 @@ static const char *index_format_str(char *buf, size_t buflen, size_t col, int co
+
+ case 'R':
+ tmp[0] = '\0';
+- mutt_addrlist_write(tmp, sizeof(tmp), &e->env->cc, true);
++ mutt_addrlist_write(&e->env->cc, tmp, sizeof(tmp), true);
+ if (optional && (tmp[0] == '\0'))
+ optional = false;
+ mutt_format_s(buf, buflen, prec, tmp);
+diff --git a/help.c b/help.c
+index 80ebe11cf..59bfb2cb2 100644
+--- a/help.c
++++ b/help.c
+@@ -33,8 +33,9 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
+-#include "curs_lib.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
++#include "functions.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "muttlib.h"
+diff --git a/hook.c b/hook.c
+index 244250630..11d9a417e 100644
+--- a/hook.c
++++ b/hook.c
+@@ -34,7 +34,7 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "mutt.h"
+@@ -44,14 +44,15 @@
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hdrline.h"
++#include "init.h"
+ #include "mutt_attach.h"
+ #include "mutt_commands.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "pattern.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_COMPRESSED
+-#include "compress.h"
++#include "compress/lib.h"
+ #endif
+
+ /* These Config Variables are only used in hook.c */
+@@ -78,7 +79,7 @@ static struct Hash *IdxFmtHooks = NULL;
+ static HookFlags current_hook_type = MUTT_HOOK_NO_FLAGS;
+
+ /**
+- * mutt_parse_hook - Parse the 'hook' family of commands - Implements ::command_t
++ * mutt_parse_hook - Parse the 'hook' family of commands - Implements Command::parse()
+ *
+ * This is used by 'account-hook', 'append-hook' and many more.
+ */
+@@ -238,11 +239,16 @@ enum CommandResult mutt_parse_hook(struct Buffer *buf, struct Buffer *s,
+ else if (data & (MUTT_SEND_HOOK | MUTT_SEND2_HOOK | MUTT_SAVE_HOOK |
+ MUTT_FCC_HOOK | MUTT_MESSAGE_HOOK | MUTT_REPLY_HOOK))
+ {
+- pat = mutt_pattern_comp(mutt_b2s(pattern),
+- (data & (MUTT_SEND_HOOK | MUTT_SEND2_HOOK | MUTT_FCC_HOOK)) ?
+- MUTT_PC_NO_FLAGS :
+- MUTT_PC_FULL_MSG,
+- err);
++ PatternCompFlags comp_flags;
++
++ if (data & (MUTT_SEND2_HOOK))
++ comp_flags = MUTT_PC_SEND_MODE_SEARCH;
++ else if (data & (MUTT_SEND_HOOK | MUTT_FCC_HOOK))
++ comp_flags = MUTT_PC_NO_FLAGS;
++ else
++ comp_flags = MUTT_PC_FULL_MSG;
++
++ pat = mutt_pattern_comp(mutt_b2s(pattern), comp_flags, err);
+ if (!pat)
+ goto cleanup;
+ }
+@@ -315,7 +321,7 @@ void mutt_delete_hooks(HookFlags type)
+ }
+
+ /**
+- * delete_idxfmt_hooklist - Delete a index-format-hook from the Hash Table
++ * delete_idxfmt_hooklist - Delete a index-format-hook from the Hash Table - Implements ::hashelem_free_t
+ * @param type Type of Hash Element
+ * @param obj Pointer to Hashed object
+ * @param data Private data
+@@ -344,7 +350,7 @@ static void delete_idxfmt_hooks(void)
+ }
+
+ /**
+- * mutt_parse_idxfmt_hook - Parse the 'index-format-hook' command - Implements ::command_t
++ * mutt_parse_idxfmt_hook - Parse the 'index-format-hook' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_idxfmt_hook(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -446,7 +452,7 @@ enum CommandResult mutt_parse_idxfmt_hook(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * mutt_parse_unhook - Parse the 'unhook' command - Implements ::command_t
++ * mutt_parse_unhook - Parse the 'unhook' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_unhook(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+diff --git a/icommands.c b/icommands.c
+index d04d8a1ba..a0043207f 100644
+--- a/icommands.c
++++ b/icommands.c
+@@ -26,12 +26,14 @@
+ #include <limits.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "icommands.h"
+-#include "curs_lib.h"
+-#include "globals.h"
++#include "functions.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+@@ -93,7 +95,7 @@ enum CommandResult mutt_parse_icommand(/* const */ char *line, struct Buffer *er
+ if (mutt_str_strcmp(token->data, ICommandList[i].name) != 0)
+ continue;
+
+- rc = ICommandList[i].func(token, &expn, ICommandList[i].data, err);
++ rc = ICommandList[i].parse(token, &expn, ICommandList[i].data, err);
+ if (rc != 0)
+ goto finish;
+
+@@ -224,7 +226,7 @@ static void dump_all_menus(struct Buffer *buf, bool bind)
+ }
+
+ /**
+- * icmd_bind - Parse 'bind' and 'macro' commands - Implements ::icommand_t
++ * icmd_bind - Parse 'bind' and 'macro' commands - Implements ICommand::parse()
+ */
+ static enum CommandResult icmd_bind(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -289,8 +291,7 @@ static enum CommandResult icmd_bind(struct Buffer *buf, struct Buffer *s,
+ mutt_file_fclose(&fp_out);
+ mutt_buffer_dealloc(&filebuf);
+
+- struct Pager info = { 0 };
+- if (mutt_do_pager((bind) ? "bind" : "macro", tempfile, MUTT_PAGER_NO_FLAGS, &info) == -1)
++ if (mutt_do_pager((bind) ? "bind" : "macro", tempfile, MUTT_PAGER_NO_FLAGS, NULL) == -1)
+ {
+ // L10N: '%s' is the file name of the temporary file
+ mutt_buffer_printf(err, _("Could not create temporary file %s"), tempfile);
+@@ -301,7 +302,7 @@ static enum CommandResult icmd_bind(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * icmd_set - Parse 'set' command to display config - Implements ::icommand_t
++ * icmd_set - Parse 'set' command to display config - Implements ICommand::parse()
+ */
+ static enum CommandResult icmd_set(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -319,11 +320,11 @@ static enum CommandResult icmd_set(struct Buffer *buf, struct Buffer *s,
+
+ if (mutt_str_strcmp(s->data, "set all") == 0)
+ {
+- dump_config(Config, CS_DUMP_NO_FLAGS, fp_out);
++ dump_config(NeoMutt->sub->cs, CS_DUMP_NO_FLAGS, fp_out);
+ }
+ else if (mutt_str_strcmp(s->data, "set") == 0)
+ {
+- dump_config(Config, CS_DUMP_ONLY_CHANGED, fp_out);
++ dump_config(NeoMutt->sub->cs, CS_DUMP_ONLY_CHANGED, fp_out);
+ }
+ else
+ {
+@@ -333,8 +334,7 @@ static enum CommandResult icmd_set(struct Buffer *buf, struct Buffer *s,
+
+ mutt_file_fclose(&fp_out);
+
+- struct Pager info = { 0 };
+- if (mutt_do_pager("set", tempfile, MUTT_PAGER_NO_FLAGS, &info) == -1)
++ if (mutt_do_pager("set", tempfile, MUTT_PAGER_NO_FLAGS, NULL) == -1)
+ {
+ // L10N: '%s' is the file name of the temporary file
+ mutt_buffer_printf(err, _("Could not create temporary file %s"), tempfile);
+@@ -345,7 +345,7 @@ static enum CommandResult icmd_set(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * icmd_version - Parse 'version' command - Implements ::icommand_t
++ * icmd_version - Parse 'version' command - Implements ICommand::parse()
+ */
+ static enum CommandResult icmd_version(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -364,8 +364,7 @@ static enum CommandResult icmd_version(struct Buffer *buf, struct Buffer *s,
+ print_version(fp_out);
+ mutt_file_fclose(&fp_out);
+
+- struct Pager info = { 0 };
+- if (mutt_do_pager("version", tempfile, MUTT_PAGER_NO_FLAGS, &info) == -1)
++ if (mutt_do_pager("version", tempfile, MUTT_PAGER_NO_FLAGS, NULL) == -1)
+ {
+ // L10N: '%s' is the file name of the temporary file
+ mutt_buffer_printf(err, _("Could not create temporary file %s"), tempfile);
+diff --git a/icommands.h b/icommands.h
+index c077efdf5..563e46f78 100644
+--- a/icommands.h
++++ b/icommands.h
+@@ -28,23 +28,23 @@
+
+ struct Buffer;
+
+-/**
+- * typedef icommand_t - Prototype for information commands
+- * @param buf Command
+- * @param s Entire command line
+- * @param data Private data to pass to parse function
+- * @param err Buffer for error messages
+- * @retval #CommandResult Result, e.g. #MUTT_CMD_SUCCESS
+- */
+-typedef enum CommandResult (*icommand_t)(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-
+ /**
+ * struct ICommand - An Informational Command
+ */
+ struct ICommand
+ {
+- char *name; ///< Name of the command
+- icommand_t func; ///< Function to parse the command
++ char *name; ///< Name of the command
++
++ /**
++ * parse - Function to parse information commands
++ * @param buf Command
++ * @param s Entire command line
++ * @param data Private data to pass to parse function
++ * @param err Buffer for error messages
++ * @retval #CommandResult Result, e.g. #MUTT_CMD_SUCCESS
++ */
++ enum CommandResult (*parse)(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++
+ unsigned long data; ///< Private data to pass to the command
+ };
+
+diff --git a/imap/auth.c b/imap/auth.c
+index 088fd365e..edaea0bc1 100644
+--- a/imap/auth.c
++++ b/imap/auth.c
+@@ -31,12 +31,29 @@
+ #include "config.h"
+ #include <string.h>
+ #include "imap_private.h" // IWYU pragma: keep
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "auth.h"
+
+ /* These Config Variables are only used in imap/auth.c */
+ struct Slist *C_ImapAuthenticators; ///< Config: (imap) List of allowed IMAP authentication methods
+
++/**
++ * struct ImapAuth - IMAP authentication multiplexor
++ */
++struct ImapAuth
++{
++ /**
++ * authenticate - Authenticate an IMAP connection
++ * @param adata Imap Account data
++ * @param method Use this named method, or any available method if NULL
++ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
++ */
++ enum ImapAuthRes (*authenticate)(struct ImapAccountData *adata, const char *method);
++
++ const char *method; ///< Name of authentication method supported, NULL means variable.
++ ///< If this is not null, authenticate may ignore the second parameter.
++};
++
+ /**
+ * imap_authenticators - Accepted authentication methods
+ */
+diff --git a/imap/auth.h b/imap/auth.h
+index 8114bfc86..f76909a12 100644
+--- a/imap/auth.h
++++ b/imap/auth.h
+@@ -27,6 +27,7 @@
+ #define MUTT_IMAP_AUTH_H
+
+ #include "config.h"
++
+ struct ImapAccountData;
+
+ /**
+@@ -39,18 +40,6 @@ enum ImapAuthRes
+ IMAP_AUTH_UNAVAIL, ///< Authentication method not permitted
+ };
+
+-/**
+- * struct ImapAuth - IMAP authentication multiplexor
+- */
+-struct ImapAuth
+-{
+- /* do authentication, using named method or any available if method is NULL */
+- enum ImapAuthRes (*authenticate)(struct ImapAccountData *adata, const char *method);
+- /* name of authentication method supported, NULL means variable. If this
+- * is not null, authenticate may ignore the second parameter. */
+- const char *method;
+-};
+-
+ /* external authenticator prototypes */
+ enum ImapAuthRes imap_auth_plain(struct ImapAccountData *adata, const char *method);
+ #ifndef USE_SASL
+diff --git a/imap/auth_anon.c b/imap/auth_anon.c
+index 06d3b7d5b..67d2d5c2e 100644
+--- a/imap/auth_anon.c
++++ b/imap/auth_anon.c
+@@ -28,14 +28,13 @@
+
+ #include "config.h"
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_socket.h"
+
+ /**
+- * imap_auth_anon - Authenticate anonymously
++ * imap_auth_anon - Authenticate anonymously - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/auth_cram.c b/imap/auth_cram.c
+index b4947c22e..1b11c7ee4 100644
+--- a/imap/auth_cram.c
++++ b/imap/auth_cram.c
+@@ -30,10 +30,9 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_socket.h"
+
+ #define MD5_BLOCK_LEN 64
+@@ -90,7 +89,7 @@ static void hmac_md5(const char *password, char *challenge, unsigned char *respo
+ }
+
+ /**
+- * imap_auth_cram_md5 - Authenticate using CRAM-MD5
++ * imap_auth_cram_md5 - Authenticate using CRAM-MD5 - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/auth_gss.c b/imap/auth_gss.c
+index b0f03195d..688ab386d 100644
+--- a/imap/auth_gss.c
++++ b/imap/auth_gss.c
+@@ -25,9 +25,9 @@
+ *
+ * IMAP GSS authentication method
+ *
+- * An overview of the authentication method is in RFC 1731.
++ * An overview of the authentication method is in RFC1731.
+ *
+- * An overview of the C API used is in RFC 2744.
++ * An overview of the C API used is in RFC2744.
+ * Of note is section 3.2, which describes gss_buffer_desc.
+ * The length should not include a terminating '\0' byte, and the client
+ * should not expect the value field to be '\0'terminated.
+@@ -38,10 +38,9 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #ifdef HAVE_HEIMDAL
+@@ -99,7 +98,7 @@ static void print_gss_error(OM_uint32 err_maj, OM_uint32 err_min)
+ }
+
+ /**
+- * imap_auth_gss - GSS Authentication support
++ * imap_auth_gss - GSS Authentication support - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/auth_login.c b/imap/auth_login.c
+index e57636d9c..b60b142ad 100644
+--- a/imap/auth_login.c
++++ b/imap/auth_login.c
+@@ -30,14 +30,13 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_logging.h"
+
+ /**
+- * imap_auth_login - Plain LOGIN support
++ * imap_auth_login - Plain LOGIN support - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/auth_oauth.c b/imap/auth_oauth.c
+index 630511404..cd5c5a67b 100644
+--- a/imap/auth_oauth.c
++++ b/imap/auth_oauth.c
+@@ -30,17 +30,17 @@
+ #include "config.h"
+ #include <stdio.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
++#include "lib.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+
+ /**
+- * imap_auth_oauth - Authenticate an IMAP connection using OAUTHBEARER
++ * imap_auth_oauth - Authenticate an IMAP connection using OAUTHBEARER - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+- * @param method Name of this authentication method (UNUSED)
++ * @param method Name of this authentication method
+ * @retval num Result, e.g. #IMAP_AUTH_SUCCESS
+ */
+ enum ImapAuthRes imap_auth_oauth(struct ImapAccountData *adata, const char *method)
+@@ -82,7 +82,7 @@ enum ImapAuthRes imap_auth_oauth(struct ImapAccountData *adata, const char *meth
+ if (rc != IMAP_EXEC_SUCCESS)
+ {
+ /* The error response was in SASL continuation, so continue the SASL
+- * to cause a failure and exit SASL input. See RFC 7628 3.2.3 */
++ * to cause a failure and exit SASL input. See RFC7628 3.2.3 */
+ mutt_socket_send(adata->conn, "\001");
+ rc = imap_exec(adata, ibuf, IMAP_CMD_NO_FLAGS);
+ }
+diff --git a/imap/auth_plain.c b/imap/auth_plain.c
+index 573b2bb6e..6efce904c 100644
+--- a/imap/auth_plain.c
++++ b/imap/auth_plain.c
+@@ -29,15 +29,14 @@
+
+ #include "config.h"
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+
+ /**
+- * imap_auth_plain - SASL PLAIN support
++ * imap_auth_plain - SASL PLAIN support - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/auth_sasl.c b/imap/auth_sasl.c
+index 4ccee4ac1..bbf5b32c1 100644
+--- a/imap/auth_sasl.c
++++ b/imap/auth_sasl.c
+@@ -34,14 +34,13 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
+-#include "conn/conn.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+ #include "auth.h"
+-#include "mutt_account.h"
+ #include "mutt_socket.h"
+
+ /**
+- * imap_auth_sasl - Default authenticator if available
++ * imap_auth_sasl - Default authenticator if available - Implements ImapAuth::authenticate()
+ * @param adata Imap Account data
+ * @param method Name of this authentication method
+ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
+diff --git a/imap/browse.c b/imap/browse.c
+index 270c7ac1d..9357edcc4 100644
+--- a/imap/browse.c
++++ b/imap/browse.c
+@@ -32,18 +32,18 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "imap/imap_private.h"
+-#include "mutt/mutt.h"
++#include "imap_private.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "browser.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "imap/imap.h"
+ #include "mutt_logging.h"
+ #include "muttlib.h"
++#include "imap/lib.h"
+
+ /**
+ * add_folder - Format and add an IMAP folder to the browser
+@@ -62,10 +62,10 @@ static void add_folder(char delim, char *folder, bool noselect, bool noinferiors
+ {
+ char tmp[PATH_MAX];
+ char relpath[PATH_MAX];
+- struct ConnAccount conn_account;
++ struct ConnAccount cac = { { 0 } };
+ char mailbox[1024];
+
+- if (imap_parse_path(state->folder, &conn_account, mailbox, sizeof(mailbox)))
++ if (imap_parse_path(state->folder, &cac, mailbox, sizeof(mailbox)))
+ return;
+
+ if (state->entrylen + 1 == state->entrymax)
+@@ -92,7 +92,7 @@ static void add_folder(char delim, char *folder, bool noselect, bool noinferiors
+ return;
+ }
+
+- imap_qualify_path(tmp, sizeof(tmp), &conn_account, folder);
++ imap_qualify_path(tmp, sizeof(tmp), &cac, folder);
+ (state->entry)[state->entrylen].name = mutt_str_strdup(tmp);
+
+ /* mark desc with delim in browser if it can have subfolders */
+@@ -144,7 +144,7 @@ static void add_folder(char delim, char *folder, bool noselect, bool noinferiors
+ static int browse_add_list_result(struct ImapAccountData *adata, const char *cmd,
+ struct BrowserState *state, bool isparent)
+ {
+- struct ImapList list;
++ struct ImapList list = { 0 };
+ int rc;
+ struct Url *url = url_parse(state->folder);
+
+@@ -184,8 +184,8 @@ static int browse_add_list_result(struct ImapAccountData *adata, const char *cmd
+ int imap_browse(const char *path, struct BrowserState *state)
+ {
+ struct ImapAccountData *adata = NULL;
+- struct ImapList list;
+- struct ConnAccount conn_account;
++ struct ImapList list = { 0 };
++ struct ConnAccount cac = { { 0 } };
+ char buf[PATH_MAX + 16];
+ char mbox[PATH_MAX];
+ char munged_mbox[PATH_MAX];
+@@ -196,7 +196,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ bool showparents = false;
+ bool save_lsub;
+
+- if (imap_parse_path(path, &conn_account, buf, sizeof(buf)))
++ if (imap_parse_path(path, &cac, buf, sizeof(buf)))
+ {
+ mutt_error(_("%s is an invalid IMAP path"), path);
+ return -1;
+@@ -212,7 +212,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ {
+ adata = imap_adata_get(np->mailbox);
+ // Pick first mailbox connected on the same server
+- if (imap_account_match(&adata->conn_account, &conn_account))
++ if (imap_account_match(&adata->conn->account, &cac))
+ break;
+ adata = NULL;
+ }
+@@ -281,7 +281,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ if (mbox[n - 1] == list.delim)
+ {
+ showparents = true;
+- imap_qualify_path(buf, sizeof(buf), &conn_account, mbox);
++ imap_qualify_path(buf, sizeof(buf), &cac, mbox);
+ state->folder = mutt_str_strdup(buf);
+ n--;
+ }
+@@ -314,7 +314,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ mbox[n++] = ctmp;
+ ctmp = mbox[n];
+ mbox[n] = '\0';
+- imap_qualify_path(buf, sizeof(buf), &conn_account, mbox);
++ imap_qualify_path(buf, sizeof(buf), &cac, mbox);
+ state->folder = mutt_str_strdup(buf);
+ }
+ mbox[n] = ctmp;
+@@ -329,7 +329,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ add_folder(adata->delim, relpath, true, false, state, true);
+ if (!state->folder)
+ {
+- imap_qualify_path(buf, sizeof(buf), &conn_account, relpath);
++ imap_qualify_path(buf, sizeof(buf), &cac, relpath);
+ state->folder = mutt_str_strdup(buf);
+ }
+ }
+@@ -338,7 +338,7 @@ int imap_browse(const char *path, struct BrowserState *state)
+ /* no namespace, no folder: set folder to host only */
+ if (!state->folder)
+ {
+- imap_qualify_path(buf, sizeof(buf), &conn_account, NULL);
++ imap_qualify_path(buf, sizeof(buf), &cac, NULL);
+ state->folder = mutt_str_strdup(buf);
+ }
+
+diff --git a/imap/command.c b/imap/command.c
+index 9f4e21617..9ae23c8d0 100644
+--- a/imap/command.c
++++ b/imap/command.c
+@@ -38,12 +38,12 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
+-#include "mutt.h"
++#include "conn/lib.h"
+ #include "globals.h"
++#include "init.h"
+ #include "message.h"
+ #include "mutt_account.h"
+ #include "mutt_logging.h"
+@@ -62,12 +62,25 @@ bool C_ImapServernoise; ///< Config: (imap) Display server warnings as error mes
+ * @note This must be kept in the same order as ImapCaps.
+ */
+ static const char *const Capabilities[] = {
+- "IMAP4", "IMAP4rev1", "STATUS",
+- "ACL", "NAMESPACE", "AUTH=CRAM-MD5",
+- "AUTH=GSSAPI", "AUTH=ANONYMOUS", "AUTH=OAUTHBEARER",
+- "STARTTLS", "LOGINDISABLED", "IDLE",
+- "SASL-IR", "ENABLE", "CONDSTORE",
+- "QRESYNC", "LIST-EXTENDED", "X-GM-EXT-1",
++ "IMAP4",
++ "IMAP4rev1",
++ "STATUS",
++ "ACL",
++ "NAMESPACE",
++ "AUTH=CRAM-MD5",
++ "AUTH=GSSAPI",
++ "AUTH=ANONYMOUS",
++ "AUTH=OAUTHBEARER",
++ "STARTTLS",
++ "LOGINDISABLED",
++ "IDLE",
++ "SASL-IR",
++ "ENABLE",
++ "CONDSTORE",
++ "QRESYNC",
++ "LIST-EXTENDED",
++ "COMPRESS=DEFLATE",
++ "X-GM-EXT-1",
+ NULL,
+ };
+
+@@ -552,7 +565,7 @@ static void cmd_parse_capability(struct ImapAccountData *adata, char *s)
+ static void cmd_parse_list(struct ImapAccountData *adata, char *s)
+ {
+ struct ImapList *list = NULL;
+- struct ImapList lb;
++ struct ImapList lb = { 0 };
+ char delimbuf[5]; /* worst case: "\\"\0 */
+ unsigned int litlen;
+
+@@ -649,8 +662,8 @@ static void cmd_parse_lsub(struct ImapAccountData *adata, char *s)
+ char buf[256];
+ char errstr[256];
+ struct Buffer err, token;
+- struct Url url;
+- struct ImapList list;
++ struct Url url = { 0 };
++ struct ImapList list = { 0 };
+
+ if (adata->cmdresult)
+ {
+@@ -780,6 +793,28 @@ static void cmd_parse_search(struct ImapAccountData *adata, const char *s)
+ }
+ }
+
++/**
++ * find_mailbox - Find a Mailbox by its name
++ * @param adata Imap Account data
++ * @param name Mailbox to find
++ * @retval ptr Mailbox
++ */
++static struct Mailbox *find_mailbox(struct ImapAccountData *adata, const char *name)
++{
++ if (!adata || !adata->account || !name)
++ return NULL;
++
++ struct MailboxNode *np = NULL;
++ STAILQ_FOREACH(np, &adata->account->mailboxes, entries)
++ {
++ struct ImapMboxData *mdata = imap_mdata_get(np->mailbox);
++ if (mutt_str_strcmp(name, mdata->name) == 0)
++ return np->mailbox;
++ }
++
++ return NULL;
++}
++
+ /**
+ * cmd_parse_status - Parse status from server
+ * @param adata Imap Account data
+@@ -790,10 +825,7 @@ static void cmd_parse_search(struct ImapAccountData *adata, const char *s)
+ */
+ static void cmd_parse_status(struct ImapAccountData *adata, char *s)
+ {
+- char *value = NULL;
+- unsigned int olduv, oldun;
+- unsigned int litlen;
+- short new_mail = 0;
++ unsigned int litlen = 0;
+
+ char *mailbox = imap_next_word(s);
+
+@@ -814,41 +846,35 @@ static void cmd_parse_status(struct ImapAccountData *adata, char *s)
+
+ mailbox = adata->buf;
+ s = mailbox + litlen;
+- *s = '\0';
++ s[0] = '\0';
+ s++;
+ SKIPWS(s);
+ }
+ else
+ {
+ s = imap_next_word(mailbox);
+- *(s - 1) = '\0';
++ s[-1] = '\0';
+ imap_unmunge_mbox_name(adata->unicode, mailbox);
+ }
+
+- struct Url url;
+- mutt_account_tourl(&adata->conn_account, &url);
+- url.path = mailbox;
+- char path[PATH_MAX];
+- url_tostring(&url, path, sizeof(path), 0);
+-
+- struct Mailbox *m = mx_mbox_find2(path);
++ struct Mailbox *m = find_mailbox(adata, mailbox);
+ struct ImapMboxData *mdata = imap_mdata_get(m);
+ if (!mdata)
+ {
+ mutt_debug(LL_DEBUG3, "Received status for an unexpected mailbox: %s\n", mailbox);
+ return;
+ }
+- olduv = mdata->uid_validity;
+- oldun = mdata->uid_next;
++ unsigned int olduv = mdata->uid_validity;
++ unsigned int oldun = mdata->uid_next;
+
+ if (*s++ != '(')
+ {
+ mutt_debug(LL_DEBUG1, "Error parsing STATUS\n");
+ return;
+ }
+- while (*s && (*s != ')'))
++ while ((s[0] != '\0') && (s[0] != ')'))
+ {
+- value = imap_next_word(s);
++ char *value = imap_next_word(s);
+
+ errno = 0;
+ const unsigned long ulcount = strtoul(value, &value, 10);
+@@ -871,7 +897,7 @@ static void cmd_parse_status(struct ImapAccountData *adata, char *s)
+ mdata->unseen = count;
+
+ s = value;
+- if (*s && (*s != ')'))
++ if ((s[0] != '\0') && (*s != ')'))
+ s = imap_next_word(s);
+ }
+ mutt_debug(LL_DEBUG3, "%s (UIDVALIDITY: %u, UIDNEXT: %u) %d messages, %d recent, %d unseen\n",
+@@ -883,14 +909,15 @@ static void cmd_parse_status(struct ImapAccountData *adata, char *s)
+ mutt_debug(LL_DEBUG3, "Found %s in mailbox list (OV: %u ON: %u U: %d)\n",
+ mailbox, olduv, oldun, mdata->unseen);
+
++ bool new_mail = false;
+ if (C_MailCheckRecent)
+ {
+- if (olduv && (olduv == mdata->uid_validity))
++ if ((olduv != 0) && (olduv == mdata->uid_validity))
+ {
+ if (oldun < mdata->uid_next)
+ new_mail = (mdata->unseen > 0);
+ }
+- else if (!olduv && !oldun)
++ else if ((olduv == 0) && (oldun == 0))
+ {
+ /* first check per session, use recent. might need a flag for this. */
+ new_mail = (mdata->recent > 0);
+@@ -904,7 +931,9 @@ static void cmd_parse_status(struct ImapAccountData *adata, char *s)
+ #ifdef USE_SIDEBAR
+ if ((m->has_new != new_mail) || (m->msg_count != mdata->messages) ||
+ (m->msg_unread != mdata->unseen))
++ {
+ mutt_menu_set_current_redraw(REDRAW_SIDEBAR);
++ }
+ #endif
+
+ m->has_new = new_mail;
+@@ -1261,12 +1290,12 @@ int imap_exec(struct ImapAccountData *adata, const char *cmdstr, ImapCmdFlags fl
+ }
+
+ /* Allow interruptions, particularly useful if there are network problems. */
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+ do
+ {
+ rc = imap_cmd_step(adata);
+ } while (rc == IMAP_RES_CONTINUE);
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+
+ if (rc == IMAP_RES_NO)
+ return IMAP_EXEC_ERROR;
+diff --git a/imap/imap.c b/imap/imap.c
+index 8b61ff6d8..7f44be3a9 100644
+--- a/imap/imap.c
++++ b/imap/imap.c
+@@ -36,20 +36,20 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+-#include "imap.h"
++#include "lib.h"
+ #include "auth.h"
+ #include "commands.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "hook.h"
++#include "init.h"
+ #include "message.h"
+-#include "mutt_account.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #include "muttlib.h"
+@@ -60,10 +60,16 @@
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
++#ifdef USE_ZLIB
++#include "mutt_zstrm.h"
++#endif
+
+ struct stat;
+
+ /* These Config Variables are only used in imap/imap.c */
++#ifdef USE_ZLIB
++bool C_ImapDeflate; ///< Config: (imap) Compress network traffic
++#endif
+ bool C_ImapIdle; ///< Config: (imap) Use the IMAP IDLE extension to check for new mail
+ bool C_ImapRfc5161; ///< Config: (imap) Use the IMAP ENABLE extension to select capabilities
+
+@@ -538,7 +544,7 @@ static int complete_hosts(char *buf, size_t buflen)
+ #if 0
+ TAILQ_FOREACH(conn, mutt_socket_head(), entries)
+ {
+- struct Url url;
++ struct Url url = { 0 };
+ char urlstr[1024];
+
+ if (conn->account.type != MUTT_ACCT_TYPE_IMAP)
+@@ -840,8 +846,8 @@ void imap_expunge_mailbox(struct Mailbox *m)
+ imap_hcache_close(mdata);
+ #endif
+
+- mailbox_changed(m, MBN_UPDATE);
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_UPDATE);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ }
+
+ /**
+@@ -961,18 +967,25 @@ void imap_close_connection(struct ImapAccountData *adata)
+ * @retval true Flag exists
+ *
+ * Do a caseless comparison of the flag against a flag list, return true if
+- * found or flag list has '\*'.
++ * found or flag list has '\*'. Note that "flag" might contain additional
++ * whitespace at the end, so we really need to compare up to the length of each
++ * element in "flag_list".
+ */
+ bool imap_has_flag(struct ListHead *flag_list, const char *flag)
+ {
+ if (STAILQ_EMPTY(flag_list))
+ return false;
+
++ const size_t flaglen = mutt_str_strlen(flag);
+ struct ListNode *np = NULL;
+ STAILQ_FOREACH(np, flag_list, entries)
+ {
+- if (mutt_str_strcasecmp(np->data, flag) == 0)
++ const size_t nplen = strlen(np->data);
++ if ((flaglen >= nplen) && ((flag[nplen] == '\0') || (flag[nplen] == ' ')) &&
++ (mutt_str_strncasecmp(np->data, flag, nplen) == 0))
++ {
+ return true;
++ }
+
+ if (mutt_str_strcmp(np->data, "\\*") == 0)
+ return true;
+@@ -1450,7 +1463,7 @@ int imap_complete(char *buf, size_t buflen, const char *path)
+ struct ImapAccountData *adata = NULL;
+ struct ImapMboxData *mdata = NULL;
+ char tmp[2048];
+- struct ImapList listresp;
++ struct ImapList listresp = { 0 };
+ char completion[1024];
+ int clen;
+ size_t matchlen = 0;
+@@ -1507,7 +1520,7 @@ int imap_complete(char *buf, size_t buflen, const char *path)
+ if (completions)
+ {
+ /* reformat output */
+- imap_qualify_path(buf, buflen, &adata->conn_account, completion);
++ imap_qualify_path(buf, buflen, &adata->conn->account, completion);
+ mutt_pretty_mailbox(buf, buflen);
+ return 0;
+ }
+@@ -1540,7 +1553,7 @@ int imap_fast_trash(struct Mailbox *m, char *dest)
+ struct Buffer sync_cmd = mutt_buffer_make(0);
+
+ /* check that the save-to folder is in the same account */
+- if (!mutt_account_match(&(adata->conn->account), &(dest_adata->conn->account)))
++ if (!imap_account_match(&(adata->conn->account), &(dest_adata->conn->account)))
+ {
+ mutt_debug(LL_DEBUG3, "%s not same server as %s\n", dest, mailbox_path(m));
+ goto out;
+@@ -1628,8 +1641,12 @@ int imap_fast_trash(struct Mailbox *m, char *dest)
+ * @param m Mailbox
+ * @param expunge if true do expunge
+ * @param close if true we move imap state to CLOSE
++ * @retval #MUTT_REOPENED mailbox has been externally modified
++ * @retval #MUTT_NEW_MAIL new mail has arrived
+ * @retval 0 Success
+ * @retval -1 Error
++ *
++ * @note The flag retvals come from a call to imap_check_mailbox()
+ */
+ int imap_sync_mailbox(struct Mailbox *m, bool expunge, bool close)
+ {
+@@ -1639,6 +1656,7 @@ int imap_sync_mailbox(struct Mailbox *m, bool expunge, bool close)
+ struct Email **emails = NULL;
+ int oldsort;
+ int rc;
++ int check;
+
+ struct ImapAccountData *adata = imap_adata_get(m);
+ struct ImapMboxData *mdata = imap_mdata_get(m);
+@@ -1653,9 +1671,9 @@ int imap_sync_mailbox(struct Mailbox *m, bool expunge, bool close)
+ * to be changed. */
+ imap_allow_reopen(m);
+
+- rc = imap_check_mailbox(m, false);
+- if (rc < 0)
+- return rc;
++ check = imap_check_mailbox(m, false);
++ if (check < 0)
++ return check;
+
+ /* if we are expunging anyway, we can do deleted messages very quickly... */
+ if (expunge && (m->rights & MUTT_ACL_DELETE))
+@@ -1827,7 +1845,7 @@ int imap_sync_mailbox(struct Mailbox *m, bool expunge, bool close)
+ if (C_MessageCacheClean)
+ imap_cache_clean(m);
+
+- return 0;
++ return check;
+ }
+
+ /**
+@@ -1841,13 +1859,12 @@ static struct Account *imap_ac_find(struct Account *a, const char *path)
+ struct Url *url = url_parse(path);
+
+ struct ImapAccountData *adata = a->adata;
+- struct ConnAccount *ac = &adata->conn_account;
++ struct ConnAccount *cac = &adata->conn->account;
+
+- if ((mutt_str_strcasecmp(url->host, ac->host) != 0) ||
+- (mutt_str_strcasecmp(url->user, ac->user) != 0))
+- {
++ if (mutt_str_strcasecmp(url->host, cac->host) != 0)
++ a = NULL;
++ else if (url->user && (mutt_str_strcasecmp(url->user, cac->user) != 0))
+ a = NULL;
+- }
+
+ url_free(&url);
+ return a;
+@@ -1865,22 +1882,27 @@ static int imap_ac_add(struct Account *a, struct Mailbox *m)
+
+ if (!adata)
+ {
+- struct ConnAccount conn_account;
++ struct ConnAccount cac = { { 0 } };
+ char mailbox[PATH_MAX];
+
+- if (imap_parse_path(mailbox_path(m), &conn_account, mailbox, sizeof(mailbox)) < 0)
++ if (imap_parse_path(mailbox_path(m), &cac, mailbox, sizeof(mailbox)) < 0)
+ return -1;
+
+- adata = imap_adata_new();
+- adata->conn_account = conn_account;
+- adata->conn = mutt_conn_new(&conn_account);
++ adata = imap_adata_new(a);
++ adata->conn = mutt_conn_new(&cac);
+ if (!adata->conn)
++ {
++ imap_adata_free((void **) &adata);
+ return -1;
++ }
+
+ mutt_account_hook(m->realpath);
+
+ if (imap_login(adata) < 0)
++ {
++ imap_adata_free((void **) &adata);
+ return -1;
++ }
+
+ a->adata = adata;
+ a->free_adata = imap_adata_free;
+@@ -1893,7 +1915,7 @@ static int imap_ac_add(struct Account *a, struct Mailbox *m)
+
+ /* fixup path and realpath, mainly to replace / by /INBOX */
+ char buf[1024];
+- imap_qualify_path(buf, sizeof(buf), &adata->conn_account, mdata->name);
++ imap_qualify_path(buf, sizeof(buf), &adata->conn->account, mdata->name);
+ mutt_buffer_strcpy(&m->pathbuf, buf);
+ mutt_str_replace(&m->realpath, mailbox_path(m));
+
+@@ -1954,8 +1976,10 @@ int imap_login(struct ImapAccountData *adata)
+ adata->state = IMAP_AUTHENTICATED;
+ FREE(&adata->capstr);
+ if (adata->conn->ssf)
++ {
+ mutt_debug(LL_DEBUG2, "Communication encrypted at %d bits\n",
+ adata->conn->ssf);
++ }
+ }
+ else
+ mutt_account_unsetpass(&adata->conn->account);
+@@ -1963,7 +1987,18 @@ int imap_login(struct ImapAccountData *adata)
+ if (adata->state == IMAP_AUTHENTICATED)
+ {
+ /* capabilities may have changed */
+- imap_exec(adata, "CAPABILITY", IMAP_CMD_QUEUE);
++ imap_exec(adata, "CAPABILITY", IMAP_CMD_PASS);
++
++#ifdef USE_ZLIB
++ /* RFC4978 */
++ if ((adata->capabilities & IMAP_CAP_COMPRESS) && C_ImapDeflate &&
++ (imap_exec(adata, "COMPRESS DEFLATE", IMAP_CMD_PASS) == IMAP_EXEC_SUCCESS))
++ {
++ mutt_debug(LL_DEBUG2, "IMAP compression is enabled on connection to %s\n",
++ adata->conn->account.host);
++ mutt_zstrm_wrap_conn(adata->conn);
++ }
++#endif
+
+ /* enable RFC6855, if the server supports that */
+ if (C_ImapRfc5161 && (adata->capabilities & IMAP_CAP_ENABLE))
+@@ -2039,8 +2074,10 @@ static int imap_mbox_open(struct Mailbox *m)
+ struct Mailbox *m_postponed = mx_mbox_find2(C_Postponed);
+ struct ImapAccountData *postponed_adata = imap_adata_get(m_postponed);
+ if (postponed_adata &&
+- mutt_account_match(&postponed_adata->conn_account, &adata->conn_account))
++ imap_account_match(&postponed_adata->conn->account, &adata->conn->account))
++ {
+ imap_mailbox_status(m_postponed, true);
++ }
+
+ if (C_ImapCheckSubscribed)
+ imap_exec(adata, "LSUB \"\" \"*\"", IMAP_CMD_QUEUE);
+@@ -2335,7 +2372,7 @@ static int imap_tags_edit(struct Mailbox *m, const char *tags, char *buf, size_t
+ if (tags)
+ mutt_str_strfcpy(buf, tags, buflen);
+
+- if (mutt_get_field("Tags: ", buf, buflen, 0) != 0)
++ if (mutt_get_field("Tags: ", buf, buflen, MUTT_COMP_NO_FLAGS) != 0)
+ return -1;
+
+ /* each keyword must be atom defined by rfc822 as:
+@@ -2554,6 +2591,7 @@ static int imap_path_parent(char *buf, size_t buflen)
+ struct MxOps MxImapOps = {
+ .magic = MUTT_IMAP,
+ .name = "imap",
++ .is_local = false,
+ .ac_find = imap_ac_find,
+ .ac_add = imap_ac_add,
+ .mbox_open = imap_mbox_open,
+diff --git a/imap/imap_private.h b/imap/imap_private.h
+index 7fac7f4d4..63bd3118c 100644
+--- a/imap/imap_private.h
++++ b/imap/imap_private.h
+@@ -30,11 +30,12 @@
+ #include <stdint.h>
+ #include <stdio.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+-#include "conn/conn.h"
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+
++struct Account;
++struct ConnAccount;
+ struct Email;
+ struct Mailbox;
+ struct Message;
+@@ -134,9 +135,10 @@ typedef uint32_t ImapCapFlags; ///< Flags, e.g. #IMAP_CAP_IMAP4
+ #define IMAP_CAP_CONDSTORE (1 << 14) ///< RFC7162
+ #define IMAP_CAP_QRESYNC (1 << 15) ///< RFC7162
+ #define IMAP_CAP_LIST_EXTENDED (1 << 16) ///< RFC5258: IMAP4 LIST Command Extensions
+-#define IMAP_CAP_X_GM_EXT_1 (1 << 17) ///< https://developers.google.com/gmail/imap/imap-extensions
++#define IMAP_CAP_COMPRESS (1 << 17) ///< RFC4978: COMPRESS=DEFLATE
++#define IMAP_CAP_X_GM_EXT_1 (1 << 18) ///< https://developers.google.com/gmail/imap/imap-extensions
+
+-#define IMAP_CAP_ALL ((1 << 18) - 1)
++#define IMAP_CAP_ALL ((1 << 19) - 1)
+
+ /**
+ * struct ImapList - Items in an IMAP browser
+@@ -166,7 +168,6 @@ struct ImapCommand
+ struct ImapAccountData
+ {
+ struct Connection *conn;
+- struct ConnAccount conn_account;
+ bool recovering;
+ bool closing; /* If true, we are waiting for CLOSE completion */
+ unsigned char state; ///< ImapState, e.g. #IMAP_AUTHENTICATED
+@@ -203,6 +204,7 @@ struct ImapAccountData
+
+ char delim;
+ struct Mailbox *mailbox; /* Current selected mailbox */
++ struct Account *account; ///< Parent Account
+ };
+
+ /**
+@@ -311,7 +313,7 @@ char *imap_hcache_get_uid_seqset(struct ImapMboxData *mdata);
+
+ enum QuadOption imap_continue(const char *msg, const char *resp);
+ void imap_error(const char *where, const char *msg);
+-struct ImapAccountData *imap_adata_new(void);
++struct ImapAccountData *imap_adata_new(struct Account *a);
+ void imap_adata_free(void **ptr);
+ struct ImapMboxData *imap_mdata_new(struct ImapAccountData *adata, const char* name);
+ void imap_mdata_free(void **ptr);
+@@ -320,7 +322,6 @@ char *imap_fix_path(char delim, const char *mailbox, char *path, size_t plen);
+ void imap_cachepath(char delim, const char *mailbox, struct Buffer *dest);
+ int imap_get_literal_count(const char *buf, unsigned int *bytes);
+ char *imap_get_qualifier(char *buf);
+-int imap_mxcmp(const char *mx1, const char *mx2);
+ char *imap_next_word(char *s);
+ void imap_qualify_path(char *buf, size_t buflen, struct ConnAccount *conn_account, char *path);
+ void imap_quote_string(char *dest, size_t dlen, const char *src, bool quote_backtick);
+@@ -332,6 +333,7 @@ int mutt_seqset_iterator_next(struct SeqsetIterator *iter, unsigned int *next);
+ void mutt_seqset_iterator_free(struct SeqsetIterator **ptr);
+ bool imap_account_match(const struct ConnAccount *a1, const struct ConnAccount *a2);
+ void imap_get_parent(const char *mbox, char delim, char *buf, size_t buflen);
++bool mutt_account_match(const struct ConnAccount *a1, const struct ConnAccount *a2);
+
+ /* utf7.c */
+ void imap_utf_encode(bool unicode, char **s);
+diff --git a/imap/imap.h b/imap/lib.h
+similarity index 90%
+rename from imap/imap.h
+rename to imap/lib.h
+index 90eca1433..3b0e29425 100644
+--- a/imap/imap.h
++++ b/imap/lib.h
+@@ -45,14 +45,16 @@
+ * | imap/util.c | @subpage imap_util |
+ */
+
+-#ifndef MUTT_IMAP_IMAP_H
+-#define MUTT_IMAP_IMAP_H
++#ifndef MUTT_IMAP_LIB_H
++#define MUTT_IMAP_LIB_H
+
++#include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <sys/types.h>
+ #include "core/lib.h"
+ #include "mx.h"
++#include "config.h"
+
+ struct BrowserState;
+ struct Buffer;
+@@ -65,6 +67,9 @@ struct stat;
+ extern struct Slist *C_ImapAuthenticators;
+
+ /* These Config Variables are only used in imap/imap.c */
++#ifdef USE_ZLIB
++extern bool C_ImapDeflate;
++#endif
+ extern bool C_ImapIdle;
+ extern bool C_ImapRfc5161;
+
+@@ -77,6 +82,9 @@ extern bool C_ImapServernoise;
+
+ /* These Config Variables are only used in imap/util.c */
+ extern char *C_ImapDelimChars;
++extern char *C_ImapLogin;
++extern char *C_ImapOauthRefreshCommand;
++extern char *C_ImapPass;
+ extern short C_ImapPipelineDepth;
+
+ /* imap.c */
+@@ -108,8 +116,9 @@ void imap_logout_all(void);
+
+ /* util.c */
+ int imap_expand_path(struct Buffer *buf);
+-int imap_parse_path(const char *path, struct ConnAccount *account, char *mailbox, size_t mailboxlen);
++int imap_parse_path(const char *path, struct ConnAccount *cac, char *mailbox, size_t mailboxlen);
+ void imap_pretty_mailbox(char *path, size_t pathlen, const char *folder);
++int imap_mxcmp(const char *mx1, const char *mx2);
+
+ int imap_wait_keepalive(pid_t pid);
+ void imap_keepalive(void);
+@@ -117,4 +126,4 @@ void imap_keepalive(void);
+ void imap_get_parent_path(const char *path, char *buf, size_t buflen);
+ void imap_clean_path(char *path, size_t plen);
+
+-#endif /* MUTT_IMAP_IMAP_H */
++#endif /* MUTT_IMAP_LIB_H */
+diff --git a/imap/message.c b/imap/message.c
+index f765ce16e..551b0d5a4 100644
+--- a/imap/message.c
++++ b/imap/message.c
+@@ -36,30 +36,28 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "message.h"
+ #include "bcache.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "imap/imap.h"
+-#include "mutt_account.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "progress.h"
+ #include "protos.h"
++#include "imap/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #endif
+
+ struct BodyCache;
+@@ -95,6 +93,7 @@ static struct ImapEmailData *imap_edata_new(void)
+
+ /**
+ * imap_edata_get - Get the private data for this Email
++ * @param e Email
+ * @retval ptr Private Email data
+ */
+ struct ImapEmailData *imap_edata_get(struct Email *e)
+@@ -1595,7 +1594,7 @@ int imap_copy_messages(struct Mailbox *m, struct EmailList *el, const char *dest
+ char mmbox[PATH_MAX];
+ char prompt[PATH_MAX + 64];
+ int rc;
+- struct ConnAccount conn_account;
++ struct ConnAccount cac = { { 0 } };
+ enum QuadOption err_continue = MUTT_NO;
+ int triedcreate = 0;
+ struct EmailNode *en = STAILQ_FIRST(el);
+@@ -1608,14 +1607,14 @@ int imap_copy_messages(struct Mailbox *m, struct EmailList *el, const char *dest
+ return 1;
+ }
+
+- if (imap_parse_path(dest, &conn_account, buf, sizeof(buf)))
++ if (imap_parse_path(dest, &cac, buf, sizeof(buf)))
+ {
+ mutt_debug(LL_DEBUG1, "bad destination %s\n", dest);
+ return -1;
+ }
+
+ /* check that the save-to folder is in the same account */
+- if (!mutt_account_match(&adata->conn->account, &conn_account))
++ if (!imap_account_match(&adata->conn->account, &cac))
+ {
+ mutt_debug(LL_DEBUG3, "%s not same server as %s\n", dest, mailbox_path(m));
+ return 1;
+diff --git a/imap/utf7.c b/imap/utf7.c
+index 304edfadf..57ded0387 100644
+--- a/imap/utf7.c
++++ b/imap/utf7.c
+@@ -30,7 +30,7 @@
+ #include <stdbool.h>
+ #include <string.h>
+ #include "imap_private.h" // IWYU pragma: keep
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ // clang-format off
+ /**
+diff --git a/imap/util.c b/imap/util.c
+index aa378560a..4ca36d020 100644
+--- a/imap/util.c
++++ b/imap/util.c
+@@ -42,24 +42,27 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include "imap_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "bcache.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "imap/imap.h"
+ #include "mutt_account.h"
+ #include "options.h"
++#include "imap/lib.h"
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
+ #include "message.h"
++#include "hcache/lib.h"
+ #endif
+
+ /* These Config Variables are only used in imap/util.c */
+ char *C_ImapDelimChars; ///< Config: (imap) Characters that denote separators in IMAP folders
++char *C_ImapLogin; ///< Config: (imap) Login name for the IMAP server (defaults to #C_ImapUser)
++char *C_ImapOauthRefreshCommand; ///< Config: (imap) External command to generate OAUTH refresh token
++char *C_ImapPass; ///< Config: (imap) Password for the IMAP server
+ short C_ImapPipelineDepth; ///< Config: (imap) Number of IMAP commands that may be queued up
+
+ /**
+@@ -80,8 +83,8 @@ void imap_adata_free(void **ptr)
+
+ if (adata->conn)
+ {
+- if (adata->conn->conn_close)
+- adata->conn->conn_close(adata->conn);
++ if (adata->conn->close)
++ adata->conn->close(adata->conn);
+ FREE(&adata->conn);
+ }
+
+@@ -92,9 +95,11 @@ void imap_adata_free(void **ptr)
+ * imap_adata_new - Allocate and initialise a new ImapAccountData structure
+ * @retval ptr New ImapAccountData
+ */
+-struct ImapAccountData *imap_adata_new(void)
++struct ImapAccountData *imap_adata_new(struct Account *a)
+ {
+ struct ImapAccountData *adata = mutt_mem_calloc(1, sizeof(struct ImapAccountData));
++ adata->account = a;
++
+ static unsigned char new_seqid = 'a';
+
+ adata->seqid = new_seqid;
+@@ -130,11 +135,11 @@ struct ImapAccountData *imap_adata_get(struct Mailbox *m)
+ int imap_adata_find(const char *path, struct ImapAccountData **adata,
+ struct ImapMboxData **mdata)
+ {
+- struct ConnAccount conn_account;
++ struct ConnAccount cac = { { 0 } };
+ struct ImapAccountData *tmp_adata = NULL;
+ char tmp[1024];
+
+- if (imap_parse_path(path, &conn_account, tmp, sizeof(tmp)) < 0)
++ if (imap_parse_path(path, &cac, tmp, sizeof(tmp)) < 0)
+ return -1;
+
+ struct Account *np = NULL;
+@@ -146,7 +151,7 @@ int imap_adata_find(const char *path, struct ImapAccountData **adata,
+ tmp_adata = np->adata;
+ if (!tmp_adata)
+ continue;
+- if (imap_account_match(&tmp_adata->conn_account, &conn_account))
++ if (imap_account_match(&tmp_adata->conn->account, &cac))
+ {
+ *mdata = imap_mdata_new(tmp_adata, tmp);
+ *adata = tmp_adata;
+@@ -159,6 +164,8 @@ int imap_adata_find(const char *path, struct ImapAccountData **adata,
+
+ /**
+ * imap_mdata_new - Allocate and initialise a new ImapMboxData structure
++ * @param adata Imap Account data
++ * @param name Name for Mailbox
+ * @retval ptr New ImapMboxData
+ */
+ struct ImapMboxData *imap_mdata_new(struct ImapAccountData *adata, const char *name)
+@@ -239,6 +246,7 @@ void imap_mdata_free(void **ptr)
+
+ /**
+ * imap_mdata_get - Get the Mailbox data for this mailbox
++ * @param m Mailbox
+ */
+ struct ImapMboxData *imap_mdata_get(struct Mailbox *m)
+ {
+@@ -256,13 +264,11 @@ struct ImapMboxData *imap_mdata_get(struct Mailbox *m)
+ */
+ void imap_get_parent(const char *mbox, char delim, char *buf, size_t buflen)
+ {
+- int n;
+-
+ /* Make a copy of the mailbox name, but only if the pointers are different */
+ if (mbox != buf)
+ mutt_str_strfcpy(buf, mbox, buflen);
+
+- n = mutt_str_strlen(buf);
++ int n = mutt_str_strlen(buf);
+
+ /* Let's go backwards until the next delimiter
+ *
+@@ -273,7 +279,7 @@ void imap_get_parent(const char *mbox, char delim, char *buf, size_t buflen)
+ *
+ * If buf == '/', then n-- => n == 0, so the loop ends
+ * immediately */
+- for (n--; n >= 0 && buf[n] != delim; n--)
++ for (n--; (n >= 0) && (buf[n] != delim); n--)
+ ;
+
+ /* We stopped before the beginning. There is a trailing slash. */
+@@ -313,7 +319,7 @@ void imap_get_parent_path(const char *path, char *buf, size_t buflen)
+ imap_get_parent(mdata->name, adata->delim, mbox, sizeof(mbox));
+
+ /* Returns a fully qualified IMAP url */
+- imap_qualify_path(buf, buflen, &adata->conn_account, mbox);
++ imap_qualify_path(buf, buflen, &adata->conn->account, mbox);
+ imap_mdata_free((void *) &mdata);
+ }
+
+@@ -333,10 +339,31 @@ void imap_clean_path(char *path, size_t plen)
+ return;
+
+ /* Returns a fully qualified IMAP url */
+- imap_qualify_path(path, plen, &adata->conn_account, mdata->name);
++ imap_qualify_path(path, plen, &adata->conn->account, mdata->name);
+ imap_mdata_free((void *) &mdata);
+ }
+
++/**
++ * imap_get_field - Get connection login credentials - Implements ConnAccount::get_field()
++ */
++static const char *imap_get_field(enum ConnAccountField field)
++{
++ switch (field)
++ {
++ case MUTT_CA_LOGIN:
++ return C_ImapLogin;
++ case MUTT_CA_USER:
++ return C_ImapUser;
++ case MUTT_CA_PASS:
++ return C_ImapPass;
++ case MUTT_CA_OAUTH_CMD:
++ return C_ImapOauthRefreshCommand;
++ case MUTT_CA_HOST:
++ default:
++ return NULL;
++ }
++}
++
+ #ifdef USE_HCACHE
+ /**
+ * imap_msn_index_to_uid_seqset - Convert MSN index of UIDs to Seqset
+@@ -433,7 +460,7 @@ header_cache_t *imap_hcache_open(struct ImapAccountData *adata, struct ImapMboxD
+ if ((len > 3) && (strcmp(mutt_b2s(mbox) + len - 3, "/..") == 0))
+ goto cleanup;
+
+- struct Url url;
++ struct Url url = { 0 };
+ mutt_account_tourl(&adata->conn->account, &url);
+ url.path = mbox->data;
+ url_tobuffer(&url, cachepath, U_PATH);
+@@ -584,33 +611,33 @@ char *imap_hcache_get_uid_seqset(struct ImapMboxData *mdata)
+ /**
+ * imap_parse_path - Parse an IMAP mailbox name into ConnAccount, name
+ * @param path Mailbox path to parse
+- * @param account Account credentials
++ * @param cac Account credentials
+ * @param mailbox Buffer for mailbox name
+ * @param mailboxlen Length of buffer
+ * @retval 0 Success
+ * @retval -1 Failure
+ *
+ * Given an IMAP mailbox name, return host, port and a path IMAP servers will
+- * recognize. mx.mbox is malloc'd, caller must free it
++ * recognize.
+ */
+-int imap_parse_path(const char *path, struct ConnAccount *account, char *mailbox, size_t mailboxlen)
++int imap_parse_path(const char *path, struct ConnAccount *cac, char *mailbox, size_t mailboxlen)
+ {
+ static unsigned short ImapPort = 0;
+ static unsigned short ImapsPort = 0;
+- struct servent *service = NULL;
+
+ if (ImapPort == 0)
+ {
+- service = getservbyname("imap", "tcp");
++ struct servent *service = getservbyname("imap", "tcp");
+ if (service)
+ ImapPort = ntohs(service->s_port);
+ else
+ ImapPort = IMAP_PORT;
+ mutt_debug(LL_DEBUG3, "Using default IMAP port %d\n", ImapPort);
+ }
++
+ if (ImapsPort == 0)
+ {
+- service = getservbyname("imaps", "tcp");
++ struct servent *service = getservbyname("imaps", "tcp");
+ if (service)
+ ImapsPort = ntohs(service->s_port);
+ else
+@@ -619,9 +646,10 @@ int imap_parse_path(const char *path, struct ConnAccount *account, char *mailbox
+ }
+
+ /* Defaults */
+- memset(account, 0, sizeof(struct ConnAccount));
+- account->port = ImapPort;
+- account->type = MUTT_ACCT_TYPE_IMAP;
++ cac->port = ImapPort;
++ cac->type = MUTT_ACCT_TYPE_IMAP;
++ cac->service = "imap";
++ cac->get_field = imap_get_field;
+
+ struct Url *url = url_parse(path);
+ if (!url)
+@@ -633,21 +661,21 @@ int imap_parse_path(const char *path, struct ConnAccount *account, char *mailbox
+ return -1;
+ }
+
+- if ((mutt_account_fromurl(account, url) < 0) || (account->host[0] == '\0'))
++ if ((mutt_account_fromurl(cac, url) < 0) || (cac->host[0] == '\0'))
+ {
+ url_free(&url);
+ return -1;
+ }
+
+ if (url->scheme == U_IMAPS)
+- account->flags |= MUTT_ACCT_SSL;
++ cac->flags |= MUTT_ACCT_SSL;
+
+ mutt_str_strfcpy(mailbox, url->path, mailboxlen);
+
+ url_free(&url);
+
+- if ((account->flags & MUTT_ACCT_SSL) && !(account->flags & MUTT_ACCT_PORT))
+- account->port = ImapsPort;
++ if ((cac->flags & MUTT_ACCT_SSL) && !(cac->flags & MUTT_ACCT_PORT))
++ cac->port = ImapsPort;
+
+ return 0;
+ }
+@@ -702,8 +730,9 @@ int imap_mxcmp(const char *mx1, const char *mx2)
+ */
+ void imap_pretty_mailbox(char *path, size_t pathlen, const char *folder)
+ {
+- struct ConnAccount target_conn_account, home_conn_account;
+- struct Url url;
++ struct ConnAccount cac_target = { { 0 } };
++ struct ConnAccount cac_home = { { 0 } };
++ struct Url url = { 0 };
+ char *delim = NULL;
+ int tlen;
+ int hlen = 0;
+@@ -711,20 +740,20 @@ void imap_pretty_mailbox(char *path, size_t pathlen, const char *folder)
+ char target_mailbox[1024];
+ char home_mailbox[1024];
+
+- if (imap_parse_path(path, &target_conn_account, target_mailbox, sizeof(target_mailbox)) < 0)
++ if (imap_parse_path(path, &cac_target, target_mailbox, sizeof(target_mailbox)) < 0)
+ return;
+
+ if (imap_path_probe(folder, NULL) != MUTT_IMAP)
+ goto fallback;
+
+- if (imap_parse_path(folder, &home_conn_account, home_mailbox, sizeof(home_mailbox)) < 0)
++ if (imap_parse_path(folder, &cac_home, home_mailbox, sizeof(home_mailbox)) < 0)
+ goto fallback;
+
+ tlen = mutt_str_strlen(target_mailbox);
+ hlen = mutt_str_strlen(home_mailbox);
+
+ /* check whether we can do '+' substitution */
+- if (tlen && mutt_account_match(&home_conn_account, &target_conn_account) &&
++ if (tlen && imap_account_match(&cac_home, &cac_target) &&
+ (mutt_str_strncmp(home_mailbox, target_mailbox, hlen) == 0))
+ {
+ if (hlen == 0)
+@@ -750,7 +779,7 @@ void imap_pretty_mailbox(char *path, size_t pathlen, const char *folder)
+ }
+
+ fallback:
+- mutt_account_tourl(&target_conn_account, &url);
++ mutt_account_tourl(&cac_target, &url);
+ url.path = target_mailbox;
+ url_tostring(&url, path, pathlen, 0);
+ }
+@@ -933,13 +962,13 @@ char *imap_next_word(char *s)
+ * imap_qualify_path - Make an absolute IMAP folder target
+ * @param buf Buffer for the result
+ * @param buflen Length of buffer
+- * @param conn_account ConnAccount of the account
++ * @param cac ConnAccount of the account
+ * @param path Path relative to the mailbox
+ */
+-void imap_qualify_path(char *buf, size_t buflen, struct ConnAccount *conn_account, char *path)
++void imap_qualify_path(char *buf, size_t buflen, struct ConnAccount *cac, char *path)
+ {
+- struct Url url;
+- mutt_account_tourl(conn_account, &url);
++ struct Url url = { 0 };
++ mutt_account_tourl(cac, &url);
+ url.path = path;
+ url_tostring(&url, buf, buflen, 0);
+ }
+diff --git a/index.c b/index.c
+index 900b52ca5..e9fdcd083 100644
+--- a/index.c
++++ b/index.c
+@@ -35,34 +35,32 @@
+ #include <stdint.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
++#include "debug/lib.h"
+ #include "index.h"
+ #include "alias.h"
+ #include "browser.h"
+-#include "color.h"
+ #include "commands.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hdrline.h"
+ #include "hook.h"
++#include "init.h"
+ #include "keymap.h"
+-#include "mutt_curses.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+ #include "mutt_thread.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "pager.h"
+@@ -75,21 +73,21 @@
+ #include "send.h"
+ #include "sort.h"
+ #include "status.h"
+-#include "terminal.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_SIDEBAR
+ #include "sidebar.h"
+ #endif
+ #ifdef USE_POP
+-#include "pop/pop.h"
++#include "pop/lib.h"
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+@@ -98,7 +96,7 @@
+ #include "monitor.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in index.c */
+@@ -654,19 +652,18 @@ void update_index(struct Menu *menu, struct Context *ctx, int check, int oldcoun
+ }
+
+ /**
+- * mailbox_index_observer - Listen for Mailbox changes - Implements ::observer_t()
++ * mailbox_index_observer - Listen for Mailbox changes - Implements ::observer_t
+ *
+ * If a Mailbox is closed, then set a pointer to NULL.
+ */
+ static int mailbox_index_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->global_data)
+ return -1;
+-
+- if ((nc->event_type != NT_MAILBOX) || (nc->event_subtype != MBN_CLOSED))
++ if ((nc->event_type != NT_MAILBOX) || (nc->event_subtype != NT_MAILBOX_CLOSED))
+ return 0;
+
+- struct Mailbox **ptr = (struct Mailbox **) nc->data;
++ struct Mailbox **ptr = nc->global_data;
+ if (!ptr || !*ptr)
+ return 0;
+
+@@ -703,7 +700,7 @@ static int main_change_folder(struct Menu *menu, int op, struct Mailbox *m,
+ mx_path_canon(buf, buflen, C_Folder, NULL);
+ }
+
+- enum MailboxType magic = mx_path_probe(buf, NULL);
++ enum MailboxType magic = mx_path_probe(buf);
+ if ((magic == MUTT_MAILBOX_ERROR) || (magic == MUTT_UNKNOWN))
+ {
+ // Try to see if the buffer matches a description before we bail.
+@@ -770,14 +767,14 @@ static int main_change_folder(struct Menu *menu, int op, struct Mailbox *m,
+ /* If the `folder-hook` were to call `unmailboxes`, then the Mailbox (`m`)
+ * could be deleted, leaving `m` dangling. */
+ // TODO: Refactor this function to avoid the need for an observer
+- notify_observer_add(m->notify, NT_MAILBOX, 0, mailbox_index_observer, IP & m);
++ notify_observer_add(m->notify, mailbox_index_observer, &m);
+ }
+ mutt_folder_hook(buf, m ? m->name : NULL);
+ if (m)
+ {
+ /* `m` is still valid, but we won't need the observer again before the end
+ * of the function. */
+- notify_observer_remove(m->notify, mailbox_index_observer, IP & m);
++ notify_observer_remove(m->notify, mailbox_index_observer, &m);
+ }
+
+ int flags = MUTT_OPEN_NO_FLAGS;
+@@ -825,7 +822,7 @@ static int main_change_folder(struct Menu *menu, int op, struct Mailbox *m,
+ }
+
+ /**
+- * index_make_entry - Format a menu item for the index list - Implements Menu::menu_make_entry()
++ * index_make_entry - Format a menu item for the index list - Implements Menu::make_entry()
+ */
+ void index_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+@@ -894,12 +891,12 @@ void index_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ }
+ }
+
+- mutt_make_string_flags(buf, buflen, menu->indexwin->cols, NONULL(C_IndexFormat),
+- Context, Context->mailbox, e, flags);
++ mutt_make_string_flags(buf, buflen, menu->win_index->state.cols,
++ NONULL(C_IndexFormat), Context, Context->mailbox, e, flags);
+ }
+
+ /**
+- * index_color - Calculate the colour for a line of the index - Implements Menu::menu_color()
++ * index_color - Calculate the colour for a line of the index - Implements Menu::color()
+ */
+ int index_color(int line)
+ {
+@@ -1056,7 +1053,7 @@ void mutt_draw_statusline(int cols, const char *buf, size_t buflen)
+ }
+
+ /**
+- * index_custom_redraw - Redraw the index - Implements Menu::menu_custom_redraw()
++ * index_custom_redraw - Redraw the index - Implements Menu::custom_redraw()
+ */
+ static void index_custom_redraw(struct Menu *menu)
+ {
+@@ -1091,9 +1088,9 @@ static void index_custom_redraw(struct Menu *menu)
+ {
+ char buf[1024];
+ menu_status_line(buf, sizeof(buf), menu, NONULL(C_StatusFormat));
+- mutt_window_move(menu->statuswin, 0, 0);
++ mutt_window_move(menu->win_ibar, 0, 0);
+ mutt_curses_set_color(MT_COLOR_STATUS);
+- mutt_draw_statusline(menu->statuswin->cols, buf, sizeof(buf));
++ mutt_draw_statusline(menu->win_ibar->state.cols, buf, sizeof(buf));
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ menu->redraw &= ~REDRAW_STATUS;
+ if (C_TsEnabled && TsSupported)
+@@ -1110,12 +1107,13 @@ static void index_custom_redraw(struct Menu *menu)
+
+ /**
+ * mutt_index_menu - Display a list of emails
++ * @param dlg Dialog containing Windows to draw on
+ * @retval num How the menu was finished, e.g. OP_QUIT, OP_EXIT
+ *
+ * This function handles the message index window as well as commands returned
+ * from the pager (MENU_PAGER).
+ */
+-int mutt_index_menu(void)
++int mutt_index_menu(struct MuttWindow *dlg)
+ {
+ char buf[PATH_MAX], helpstr[1024];
+ OpenMailboxFlags flags;
+@@ -1130,9 +1128,18 @@ int mutt_index_menu(void)
+ int attach_msg = OptAttachMsg;
+ bool in_pager = false; /* set when pager redirects a function through the index */
+
++ struct MuttWindow *win_index = mutt_window_find(dlg, WT_INDEX);
++ struct MuttWindow *win_ibar = mutt_window_find(dlg, WT_INDEX_BAR);
++ struct MuttWindow *win_pager = mutt_window_find(dlg, WT_PAGER);
++ struct MuttWindow *win_pbar = mutt_window_find(dlg, WT_PAGER_BAR);
++
+ struct Menu *menu = mutt_menu_new(MENU_MAIN);
+- menu->menu_make_entry = index_make_entry;
+- menu->menu_color = index_color;
++ menu->pagelen = win_index->state.rows;
++ menu->win_index = win_index;
++ menu->win_ibar = win_ibar;
++
++ menu->make_entry = index_make_entry;
++ menu->color = index_color;
+ menu->current = ci_first_message(Context);
+ menu->help = mutt_compile_help(
+ helpstr, sizeof(helpstr), MENU_MAIN,
+@@ -1141,9 +1148,9 @@ int mutt_index_menu(void)
+ IndexNewsHelp :
+ #endif
+ IndexHelp);
+- menu->menu_custom_redraw = index_custom_redraw;
++ menu->custom_redraw = index_custom_redraw;
+ mutt_menu_push_current(menu);
+- mutt_window_reflow();
++ mutt_window_reflow(NULL);
+
+ if (!attach_msg)
+ {
+@@ -1310,13 +1317,13 @@ int mutt_index_menu(void)
+ menu->oldcurrent = -1;
+
+ if (C_ArrowCursor)
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset, 2);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset, 2);
+ else if (C_BrailleFriendly)
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset, 0);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset, 0);
+ else
+ {
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset,
+- menu->indexwin->cols - 1);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset,
++ menu->win_index->state.cols - 1);
+ }
+ mutt_refresh();
+
+@@ -1467,7 +1474,8 @@ int mutt_index_menu(void)
+ if (op == OP_GET_MESSAGE)
+ {
+ buf[0] = '\0';
+- if ((mutt_get_field(_("Enter Message-Id: "), buf, sizeof(buf), 0) != 0) ||
++ if ((mutt_get_field(_("Enter Message-Id: "), buf, sizeof(buf),
++ MUTT_COMP_NO_FLAGS) != 0) ||
+ !buf[0])
+ {
+ break;
+@@ -1636,12 +1644,12 @@ int mutt_index_menu(void)
+ case OP_JUMP:
+ {
+ int msg_num = 0;
+- if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
+ break;
+ if (isdigit(LastKey))
+ mutt_unget_event(LastKey, 0);
+ buf[0] = '\0';
+- if ((mutt_get_field(_("Jump to message: "), buf, sizeof(buf), 0) != 0) ||
++ if ((mutt_get_field(_("Jump to message: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
+ (buf[0] == '\0'))
+ {
+ mutt_error(_("Nothing to do"));
+@@ -1680,8 +1688,7 @@ int mutt_index_menu(void)
+ */
+
+ case OP_MAIN_DELETE_PATTERN:
+- if (!prereq(Context, menu,
+- CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE | CHECK_READONLY | CHECK_ATTACH))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_READONLY | CHECK_ATTACH))
+ {
+ break;
+ }
+@@ -1707,6 +1714,9 @@ int mutt_index_menu(void)
+
+ case OP_SHOW_LOG_MESSAGES:
+ {
++#ifdef USE_DEBUG_GRAPHVIZ
++ dump_graphviz("index");
++#endif
+ char tempfile[PATH_MAX];
+ mutt_mktemp(tempfile, sizeof(tempfile));
+
+@@ -1725,7 +1735,7 @@ int mutt_index_menu(void)
+ }
+
+ case OP_HELP:
+- mutt_help(MENU_MAIN, MuttIndexWindow->cols);
++ mutt_help(MENU_MAIN, win_index->state.cols);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+@@ -1825,7 +1835,7 @@ int mutt_index_menu(void)
+ oldcount = (Context && Context->mailbox) ? Context->mailbox->msg_count : 0;
+
+ mutt_startup_shutdown_hook(MUTT_SHUTDOWN_HOOK);
+- notify_send(NeoMutt->notify, NT_GLOBAL, NT_GLOBAL_SHUTDOWN, 0);
++ notify_send(NeoMutt->notify, NT_GLOBAL, NT_GLOBAL_SHUTDOWN, NULL);
+
+ if (!Context || ((check = mx_mbox_close(&Context)) == 0))
+ done = true;
+@@ -1841,16 +1851,23 @@ int mutt_index_menu(void)
+ break;
+
+ case OP_REDRAW:
++ mutt_window_reflow(NULL);
+ clearok(stdscr, true);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+- case OP_SEARCH:
++ // Initiating a search can happen on an empty mailbox, but
++ // searching for next/previous/... needs to be on a message and
++ // thus a non-empty mailbox
+ case OP_SEARCH_REVERSE:
+ case OP_SEARCH_NEXT:
+ case OP_SEARCH_OPPOSITE:
+ if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE))
+ break;
++ /* fallthrough */
++ case OP_SEARCH:
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
++ break;
+ menu->current = mutt_search_command(menu->current, op);
+ if (menu->current == -1)
+ menu->current = menu->oldcurrent;
+@@ -1919,14 +1936,14 @@ int mutt_index_menu(void)
+ }
+
+ case OP_MAIN_TAG_PATTERN:
+- if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
+ break;
+ mutt_pattern_func(MUTT_TAG, _("Tag messages matching: "));
+ menu->redraw |= REDRAW_INDEX | REDRAW_STATUS;
+ break;
+
+ case OP_MAIN_UNDELETE_PATTERN:
+- if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE | CHECK_READONLY))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_READONLY))
+ break;
+ /* L10N: CHECK_ACL */
+ /* L10N: Due to the implementation details we do not know whether we
+@@ -1943,7 +1960,7 @@ int mutt_index_menu(void)
+ break;
+
+ case OP_MAIN_UNTAG_PATTERN:
+- if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
+ break;
+ if (mutt_pattern_func(MUTT_UNTAG, _("Untag messages matching: ")) == 0)
+ menu->redraw |= REDRAW_INDEX | REDRAW_STATUS;
+@@ -2100,7 +2117,8 @@ int mutt_index_menu(void)
+ struct Email *e_cur = get_cur_email(Context, menu);
+ if (Context->mailbox->magic != MUTT_NOTMUCH)
+ {
+- if (!e_cur || !e_cur->env || !e_cur->env->message_id)
++ if ((Context->mailbox->magic != MUTT_MH && Context->mailbox->magic != MUTT_MAILDIR) ||
++ (!e_cur || !e_cur->env || !e_cur->env->message_id))
+ {
+ mutt_message(_("No virtual folder and no Message-Id, aborting"));
+ break;
+@@ -2112,7 +2130,7 @@ int mutt_index_menu(void)
+ mutt_str_strcat(buf, sizeof(buf), (e_cur->env->message_id) + msg_id_offset);
+ if (buf[strlen(buf) - 1] == '>')
+ buf[strlen(buf) - 1] = '\0';
+- if (!nm_uri_from_query(Context->mailbox, buf, sizeof(buf)))
++ if (!nm_url_from_query(Context->mailbox, buf, sizeof(buf)))
+ {
+ mutt_message(_("Failed to create query, aborting"));
+ break;
+@@ -2278,18 +2296,35 @@ int mutt_index_menu(void)
+ #ifdef USE_NOTMUCH
+ case OP_MAIN_VFOLDER_FROM_QUERY:
+ case OP_MAIN_VFOLDER_FROM_QUERY_READONLY:
++ {
+ buf[0] = '\0';
+ if ((mutt_get_field("Query: ", buf, sizeof(buf), MUTT_NM_QUERY) != 0) || !buf[0])
+ {
+ mutt_message(_("No query, aborting"));
+ break;
+ }
+- if (!nm_uri_from_query(NULL, buf, sizeof(buf)))
+- mutt_message(_("Failed to create query, aborting"));
++
++ // Keep copy of user's querying to name mailbox.
++ char *query_unencoded = mutt_str_strdup(buf);
++
++ if (nm_url_from_query(NULL, buf, sizeof(buf)))
++ {
++ // Create mailbox and set name.
++ struct Mailbox *m_new_vfolder = mx_path_resolve(buf);
++ m_new_vfolder->name = query_unencoded;
++ query_unencoded = NULL;
++
++ main_change_folder(menu, op, m_new_vfolder, buf, sizeof(buf),
++ &oldcount, &index_hint, NULL);
++ }
+ else
+- main_change_folder(menu, op, NULL, buf, sizeof(buf), &oldcount, &index_hint, NULL);
+- break;
++ {
++ FREE(&query_unencoded);
++ mutt_message(_("Failed to create query, aborting"));
++ }
+
++ break;
++ }
+ case OP_MAIN_WINDOWED_VFOLDER_BACKWARD:
+ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
+ break;
+@@ -2306,7 +2341,7 @@ int mutt_index_menu(void)
+ }
+ nm_query_window_backward();
+ mutt_str_strfcpy(buf, C_NmQueryWindowCurrentSearch, sizeof(buf));
+- if (!nm_uri_from_query(Context->mailbox, buf, sizeof(buf)))
++ if (!nm_url_from_query(Context->mailbox, buf, sizeof(buf)))
+ mutt_message(_("Failed to create query, aborting"));
+ else
+ main_change_folder(menu, op, NULL, buf, sizeof(buf), &oldcount, &index_hint, NULL);
+@@ -2327,7 +2362,7 @@ int mutt_index_menu(void)
+ }
+ nm_query_window_forward();
+ mutt_str_strfcpy(buf, C_NmQueryWindowCurrentSearch, sizeof(buf));
+- if (!nm_uri_from_query(Context->mailbox, buf, sizeof(buf)))
++ if (!nm_url_from_query(Context->mailbox, buf, sizeof(buf)))
+ mutt_message(_("Failed to create query, aborting"));
+ else
+ {
+@@ -2485,7 +2520,7 @@ int mutt_index_menu(void)
+ /* toggle the weeding of headers so that a user can press the key
+ * again while reading the message. */
+ if (op == OP_DISPLAY_HEADERS)
+- bool_str_toggle(Config, "weed", NULL);
++ bool_str_toggle(NeoMutt->sub, "weed", NULL);
+
+ OptNeedResort = false;
+
+@@ -2504,12 +2539,13 @@ int mutt_index_menu(void)
+ mutt_check_traditional_pgp(&el, &menu->redraw);
+ emaillist_clear(&el);
+ }
+- struct Email *e = get_cur_email(Context, menu);
+- if (!e)
++ e_cur = get_cur_email(Context, menu);
++ if (!e_cur)
+ break;
+- int hint = e->index;
++ int hint = e_cur->index;
+
+- op = mutt_display_message(MuttIndexWindow, Context->mailbox, e_cur);
++ op = mutt_display_message(win_index, win_ibar, win_pager, win_pbar,
++ Context->mailbox, e_cur);
+ if (op < 0)
+ {
+ OptNeedResort = false;
+@@ -3163,7 +3199,7 @@ int mutt_index_menu(void)
+ }
+
+ case OP_MAIN_COLLAPSE_ALL:
+- if (!prereq(Context, menu, CHECK_IN_MAILBOX | CHECK_MSGCOUNT | CHECK_VISIBLE))
++ if (!prereq(Context, menu, CHECK_IN_MAILBOX))
+ break;
+
+ if ((C_Sort & SORT_MASK) != SORT_THREADS)
+@@ -3868,8 +3904,8 @@ int mutt_index_menu(void)
+ break;
+
+ case OP_SIDEBAR_TOGGLE_VISIBLE:
+- bool_str_toggle(Config, "sidebar_visible", NULL);
+- mutt_window_reflow();
++ bool_str_toggle(NeoMutt->sub, "sidebar_visible", NULL);
++ mutt_window_reflow(NULL);
+ break;
+ #endif
+
+@@ -3931,14 +3967,16 @@ void mutt_set_header_color(struct Mailbox *m, struct Email *e)
+ }
+
+ /**
+- * mutt_reply_observer - Listen for config changes to "reply_regex" - Implements ::observer_t()
++ * mutt_reply_observer - Listen for config changes to "reply_regex" - Implements ::observer_t
+ */
+ int mutt_reply_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->event_data)
+ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
+
+- struct EventConfig *ec = (struct EventConfig *) nc->event;
++ struct EventConfig *ec = nc->event_data;
+
+ if (mutt_str_strcmp(ec->name, "reply_regex") != 0)
+ return 0;
+@@ -3970,3 +4008,185 @@ int mutt_reply_observer(struct NotifyCallback *nc)
+ OptResortInit = true; /* trigger a redraw of the index */
+ return 0;
+ }
++
++/**
++ * index_pager_init - Allocate the Windows for the Index/Pager
++ * @retval ptr Dialog containing nested Windows
++ */
++struct MuttWindow *index_pager_init(void)
++{
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ dlg->type = WT_DIALOG;
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "index";
++#endif
++ struct MuttWindow *cont_right =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ cont_right->type = WT_CONTAINER;
++ struct MuttWindow *panel_index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ panel_index->name = "index panel";
++#endif
++ panel_index->type = WT_CONTAINER;
++ struct MuttWindow *panel_pager =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ panel_pager->name = "pager panel";
++#endif
++ panel_pager->type = WT_CONTAINER;
++ panel_pager->state.visible = false; // The Pager and Pager Bar are initially hidden
++
++ struct MuttWindow *win_index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ win_index->type = WT_INDEX;
++ struct MuttWindow *win_pbar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ win_pbar->type = WT_PAGER_BAR;
++ struct MuttWindow *win_pager =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ win_pager->type = WT_PAGER;
++ struct MuttWindow *win_sidebar =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, C_SidebarWidth);
++ win_sidebar->type = WT_SIDEBAR;
++ win_sidebar->state.visible = C_SidebarVisible && (C_SidebarWidth > 0);
++ struct MuttWindow *win_ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ win_ibar->type = WT_INDEX_BAR;
++
++ if (C_SidebarOnRight)
++ {
++ mutt_window_add_child(dlg, cont_right);
++ mutt_window_add_child(dlg, win_sidebar);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, win_sidebar);
++ mutt_window_add_child(dlg, cont_right);
++ }
++
++ mutt_window_add_child(cont_right, panel_index);
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(panel_index, win_ibar);
++ mutt_window_add_child(panel_index, win_index);
++ }
++ else
++ {
++ mutt_window_add_child(panel_index, win_index);
++ mutt_window_add_child(panel_index, win_ibar);
++ }
++
++ mutt_window_add_child(cont_right, panel_pager);
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(panel_pager, win_pbar);
++ mutt_window_add_child(panel_pager, win_pager);
++ }
++ else
++ {
++ mutt_window_add_child(panel_pager, win_pager);
++ mutt_window_add_child(panel_pager, win_pbar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_sb_observer, win_sidebar);
++
++ return dlg;
++}
++
++/**
++ * index_pager_shutdown - Clear up any non-Window parts
++ * @param dlg Dialog
++ */
++void index_pager_shutdown(struct MuttWindow *dlg)
++{
++ if (!dlg)
++ return;
++
++ struct MuttWindow *win_sidebar = mutt_window_find(dlg, WT_SIDEBAR);
++ if (!win_sidebar)
++ return;
++
++ notify_observer_remove(NeoMutt->notify, mutt_sb_observer, win_sidebar);
++}
++
++/**
++ * mutt_dlg_index_observer - Listen for config changes affecting the Index/Pager - Implements ::observer_t
++ */
++int mutt_dlg_index_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ struct MuttWindow *win_index = mutt_window_find(dlg, WT_INDEX);
++ struct MuttWindow *win_pager = mutt_window_find(dlg, WT_PAGER);
++ if (!win_index || !win_pager)
++ return -1;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") == 0)
++ {
++ struct MuttWindow *parent = win_index->parent;
++ if (!parent)
++ return -1;
++ struct MuttWindow *first = TAILQ_FIRST(&parent->children);
++ if (!first)
++ return -1;
++
++ if ((C_StatusOnTop && (first == win_index)) || (!C_StatusOnTop && (first != win_index)))
++ {
++ // Swap the Index and the Index Bar Windows
++ TAILQ_REMOVE(&parent->children, first, entries);
++ TAILQ_INSERT_TAIL(&parent->children, first, entries);
++ }
++
++ parent = win_pager->parent;
++ first = TAILQ_FIRST(&parent->children);
++
++ if ((C_StatusOnTop && (first == win_pager)) || (!C_StatusOnTop && (first != win_pager)))
++ {
++ // Swap the Pager and Pager Bar Windows
++ TAILQ_REMOVE(&parent->children, first, entries);
++ TAILQ_INSERT_TAIL(&parent->children, first, entries);
++ }
++ goto reflow;
++ }
++
++ if (mutt_str_strcmp(ec->name, "pager_index_lines") == 0)
++ {
++ struct MuttWindow *parent = win_pager->parent;
++ if (parent->state.visible)
++ {
++ int vcount = (Context && Context->mailbox) ? Context->mailbox->vcount : 0;
++ win_index->req_rows = MIN(C_PagerIndexLines, vcount);
++ win_index->size = MUTT_WIN_SIZE_FIXED;
++
++ win_index->parent->size = MUTT_WIN_SIZE_MINIMISE;
++ win_index->parent->state.visible = (C_PagerIndexLines != 0);
++ }
++ else
++ {
++ win_index->req_rows = MUTT_WIN_SIZE_UNLIMITED;
++ win_index->size = MUTT_WIN_SIZE_MAXIMISE;
++
++ win_index->parent->size = MUTT_WIN_SIZE_MAXIMISE;
++ win_index->parent->state.visible = true;
++ }
++ }
++
++reflow:
++ mutt_window_reflow(dlg);
++ return 0;
++}
+diff --git a/index.h b/index.h
+index 16fb2946c..a60fd6f2c 100644
+--- a/index.h
++++ b/index.h
+@@ -30,6 +30,8 @@ struct Context;
+ struct Email;
+ struct Mailbox;
+ struct Menu;
++struct MuttWindow;
++struct NotifyCallback;
+
+ /* These Config Variables are only used in index.c */
+ extern bool C_ChangeFolderNext;
+@@ -44,8 +46,11 @@ extern bool C_UncollapseNew;
+ int index_color(int line);
+ void index_make_entry(char *buf, size_t buflen, struct Menu *menu, int line);
+ void mutt_draw_statusline(int cols, const char *buf, size_t buflen);
+-int mutt_index_menu(void);
++int mutt_index_menu(struct MuttWindow *dlg);
+ void mutt_set_header_color(struct Mailbox *m, struct Email *e);
+ void update_index(struct Menu *menu, struct Context *ctx, int check, int oldcount, int index_hint);
++struct MuttWindow *index_pager_init(void);
++void index_pager_shutdown(struct MuttWindow *dlg);
++int mutt_dlg_index_observer(struct NotifyCallback *nc);
+
+ #endif /* MUTT_INDEX_H */
+diff --git a/init.c b/init.c
+index 506ec450e..5c3ec1aac 100644
+--- a/init.c
++++ b/init.c
+@@ -29,11 +29,8 @@
+
+ #include "config.h"
+ #include <ctype.h>
+-#include <errno.h>
+ #include <inttypes.h>
+-#include <limits.h>
+ #include <pwd.h>
+-#include <regex.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+@@ -41,47 +38,36 @@
+ #include <sys/stat.h>
+ #include <sys/utsname.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
++#include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "init.h"
+ #include "alias.h"
++#include "command_parse.h"
+ #include "context.h"
+-#include "filter.h"
++#include "functions.h"
++#include "globals.h"
+ #include "keymap.h"
+-#include "monitor.h"
++#include "mutt_commands.h"
++#include "mutt_config.h"
+ #include "mutt_menu.h"
+ #include "mutt_parse.h"
+-#include "mutt_window.h"
+-#include "mx.h"
++#include "muttlib.h"
+ #include "myvar.h"
+ #include "options.h"
+ #include "protos.h"
+-#include "sidebar.h"
+-#include "version.h"
++#include "sort.h"
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #endif
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+-#ifdef USE_IMAP
+-#include "imap/imap.h"
+-#endif
+-#ifdef ENABLE_NLS
+-#include <libintl.h>
+-#endif
+-
+-/* LIFO designed to contain the list of config files that have been sourced and
+- * avoid cyclic sourcing */
+-static struct ListHead MuttrcStack = STAILQ_HEAD_INITIALIZER(MuttrcStack);
+-
+-#define MAX_ERRS 128
+-
+-#define NUM_VARS mutt_array_size(MuttVars)
+-#define NUM_COMMANDS mutt_array_size(Commands)
+
+ /* Initial string that starts completion. No telling how much the user has
+ * typed so far. Allocate 1024 just to be sure! */
+@@ -91,84 +77,13 @@ static int NumMatched = 0; /* Number of matches for completion */
+ static char Completed[256] = { 0 }; /* completed string (command or variable) */
+ static const char **Matches;
+ /* this is a lie until mutt_init runs: */
+-static int MatchesListsize = MAX(NUM_VARS, NUM_COMMANDS) + 10;
++static int MatchesListsize = 512; // Enough space for all of the config items
+
+ #ifdef USE_NOTMUCH
+ /* List of tags found in last call to mutt_nm_query_complete(). */
+ static char **nm_tags;
+ #endif
+
+-/**
+- * enum GroupState - Type of email address group
+- */
+-enum GroupState
+-{
+- GS_NONE, ///< Group is missing an argument
+- GS_RX, ///< Entry is a regular expression
+- GS_ADDR, ///< Entry is an address
+-};
+-
+-/**
+- * add_to_stailq - Add a string to a list
+- * @param head String list
+- * @param str String to add
+- *
+- * @note Duplicate or empty strings will not be added
+- */
+-static void add_to_stailq(struct ListHead *head, const char *str)
+-{
+- /* don't add a NULL or empty string to the list */
+- if (!str || (*str == '\0'))
+- return;
+-
+- /* check to make sure the item is not already on this list */
+- struct ListNode *np = NULL;
+- STAILQ_FOREACH(np, head, entries)
+- {
+- if (mutt_str_strcasecmp(str, np->data) == 0)
+- {
+- return;
+- }
+- }
+- mutt_list_insert_tail(head, mutt_str_strdup(str));
+-}
+-
+-/**
+- * alternates_clean - Clear the recipient valid flag of all emails
+- */
+-static void alternates_clean(void)
+-{
+- if (!Context || !Context->mailbox)
+- return;
+-
+- struct Mailbox *m = Context->mailbox;
+- for (int i = 0; i < m->msg_count; i++)
+- {
+- struct Email *e = m->emails[i];
+- if (!e)
+- break;
+- e->recip_valid = false;
+- }
+-}
+-
+-/**
+- * attachments_clean - always wise to do what someone else did before
+- */
+-static void attachments_clean(void)
+-{
+- if (!Context || !Context->mailbox)
+- return;
+-
+- struct Mailbox *m = Context->mailbox;
+- for (int i = 0; i < m->msg_count; i++)
+- {
+- struct Email *e = m->emails[i];
+- if (!e)
+- break;
+- e->attach_valid = false;
+- }
+-}
+-
+ /**
+ * matches_ensure_morespace - Allocate more space for auto-completion
+ * @param current Current allocation
+@@ -178,7 +93,7 @@ static void matches_ensure_morespace(int current)
+ if (current <= (MatchesListsize - 2))
+ return;
+
+- int base_space = MAX(NUM_VARS, NUM_COMMANDS) + 1;
++ int base_space = 512; // Enough space for all of the config items
+ int extra_space = MatchesListsize - base_space;
+ extra_space *= 2;
+ const int space = base_space + extra_space;
+@@ -217,2422 +132,246 @@ static void candidate(char *user, const char *src, char *dest, size_t dlen)
+ }
+ }
+
+-/**
+- * clear_subject_mods - Clear out all modified email subjects
+- */
+-static void clear_subject_mods(void)
+-{
+- if (!Context || !Context->mailbox)
+- return;
+-
+- struct Mailbox *m = Context->mailbox;
+- for (int i = 0; i < m->msg_count; i++)
+- {
+- struct Email *e = m->emails[i];
+- if (!e || !e->env)
+- continue;
+- FREE(&e->env->disp_subj);
+- }
+-}
+-
+ #ifdef USE_NOTMUCH
+ /**
+ * complete_all_nm_tags - Pass a list of Notmuch tags to the completion code
+ * @param pt List of all Notmuch tags
+ * @retval 0 Success
+- * @retval -1 Error
+- */
+-static int complete_all_nm_tags(const char *pt)
+-{
+- int tag_count_1 = 0;
+- int tag_count_2 = 0;
+-
+- NumMatched = 0;
+- mutt_str_strfcpy(UserTyped, pt, sizeof(UserTyped));
+- memset(Matches, 0, MatchesListsize);
+- memset(Completed, 0, sizeof(Completed));
+-
+- nm_db_longrun_init(Context->mailbox, false);
+-
+- /* Work out how many tags there are. */
+- if (nm_get_all_tags(Context->mailbox, NULL, &tag_count_1) || (tag_count_1 == 0))
+- goto done;
+-
+- /* Free the old list, if any. */
+- if (nm_tags)
+- {
+- for (int i = 0; nm_tags[i]; i++)
+- FREE(&nm_tags[i]);
+- FREE(&nm_tags);
+- }
+- /* Allocate a new list, with sentinel. */
+- nm_tags = mutt_mem_malloc((tag_count_1 + 1) * sizeof(char *));
+- nm_tags[tag_count_1] = NULL;
+-
+- /* Get all the tags. */
+- if (nm_get_all_tags(Context->mailbox, nm_tags, &tag_count_2) || (tag_count_1 != tag_count_2))
+- {
+- FREE(&nm_tags);
+- nm_tags = NULL;
+- nm_db_longrun_done(Context->mailbox);
+- return -1;
+- }
+-
+- /* Put them into the completion machinery. */
+- for (int num = 0; num < tag_count_1; num++)
+- {
+- candidate(UserTyped, nm_tags[num], Completed, sizeof(Completed));
+- }
+-
+- matches_ensure_morespace(NumMatched);
+- Matches[NumMatched++] = UserTyped;
+-
+-done:
+- nm_db_longrun_done(Context->mailbox);
+- return 0;
+-}
+-#endif
+-
+-/**
+- * execute_commands - Execute a set of NeoMutt commands
+- * @param p List of command strings
+- * @retval 0 Success, all the commands succeeded
+- * @retval -1 Error
+- */
+-static int execute_commands(struct ListHead *p)
+-{
+- int rc = 0;
+- struct Buffer *err = mutt_buffer_pool_get();
+- struct Buffer *token = mutt_buffer_pool_get();
+-
+- struct ListNode *np = NULL;
+- STAILQ_FOREACH(np, p, entries)
+- {
+- enum CommandResult rc2 = mutt_parse_rc_line(np->data, token, err);
+- if (rc2 == MUTT_CMD_ERROR)
+- mutt_error(_("Error in command line: %s"), mutt_b2s(err));
+- else if (rc2 == MUTT_CMD_WARNING)
+- mutt_warning(_("Warning in command line: %s"), mutt_b2s(err));
+-
+- if ((rc2 == MUTT_CMD_ERROR) || (rc2 == MUTT_CMD_WARNING))
+- {
+- mutt_buffer_pool_release(&token);
+- mutt_buffer_pool_release(&err);
+- return -1;
+- }
+- }
+- mutt_buffer_pool_release(&token);
+- mutt_buffer_pool_release(&err);
+-
+- return rc;
+-}
+-
+-/**
+- * find_cfg - Find a config file
+- * @param home User's home directory
+- * @param xdg_cfg_home XDG home directory
+- * @retval ptr Success, first matching directory
+- * @retval NULL Error, no matching directories
+- */
+-static char *find_cfg(const char *home, const char *xdg_cfg_home)
+-{
+- const char *names[] = {
+- "neomuttrc",
+- "muttrc",
+- NULL,
+- };
+-
+- const char *locations[][2] = {
+- { xdg_cfg_home, "neomutt/" },
+- { xdg_cfg_home, "mutt/" },
+- { home, ".neomutt/" },
+- { home, ".mutt/" },
+- { home, "." },
+- { NULL, NULL },
+- };
+-
+- for (int i = 0; locations[i][0] || locations[i][1]; i++)
+- {
+- if (!locations[i][0])
+- continue;
+-
+- for (int j = 0; names[j]; j++)
+- {
+- char buf[256];
+-
+- snprintf(buf, sizeof(buf), "%s/%s%s", locations[i][0], locations[i][1], names[j]);
+- if (access(buf, F_OK) == 0)
+- return mutt_str_strdup(buf);
+- }
+- }
+-
+- return NULL;
+-}
+-
+-#ifndef DOMAIN
+-/**
+- * getmailname - Try to retrieve the FQDN from mailname files
+- * @retval ptr Heap allocated string with the FQDN
+- * @retval NULL if no valid mailname file could be read
+- */
+-static char *getmailname(void)
+-{
+- char *mailname = NULL;
+- static const char *mn_files[] = { "/etc/mailname", "/etc/mail/mailname" };
+-
+- for (size_t i = 0; i < mutt_array_size(mn_files); i++)
+- {
+- FILE *fp = mutt_file_fopen(mn_files[i], "r");
+- if (!fp)
+- continue;
+-
+- size_t len = 0;
+- mailname = mutt_file_read_line(NULL, &len, fp, NULL, 0);
+- mutt_file_fclose(&fp);
+- if (mailname && *mailname)
+- break;
+-
+- FREE(&mailname);
+- }
+-
+- return mailname;
+-}
+-#endif
+-
+-/**
+- * get_hostname - Find the Fully-Qualified Domain Name
+- * @retval true Success
+- * @retval false Error, failed to find any name
+- *
+- * Use several methods to try to find the Fully-Qualified domain name of this host.
+- * If the user has already configured a hostname, this function will use it.
+- */
+-static bool get_hostname(void)
+-{
+- char *str = NULL;
+- struct utsname utsname;
+-
+- if (C_Hostname)
+- {
+- str = C_Hostname;
+- }
+- else
+- {
+- /* The call to uname() shouldn't fail, but if it does, the system is horribly
+- * broken, and the system's networking configuration is in an unreliable
+- * state. We should bail. */
+- if ((uname(&utsname)) == -1)
+- {
+- mutt_perror(_("unable to determine nodename via uname()"));
+- return false; // TEST09: can't test
+- }
+-
+- str = utsname.nodename;
+- }
+-
+- /* some systems report the FQDN instead of just the hostname */
+- char *dot = strchr(str, '.');
+- if (dot)
+- ShortHostname = mutt_str_substr_dup(str, dot);
+- else
+- ShortHostname = mutt_str_strdup(str);
+-
+- if (!C_Hostname)
+- {
+- /* now get FQDN. Use configured domain first, DNS next, then uname */
+-#ifdef DOMAIN
+- /* we have a compile-time domain name, use that for C_Hostname */
+- C_Hostname =
+- mutt_mem_malloc(mutt_str_strlen(DOMAIN) + mutt_str_strlen(ShortHostname) + 2);
+- sprintf((char *) C_Hostname, "%s.%s", NONULL(ShortHostname), DOMAIN);
+-#else
+- C_Hostname = getmailname();
+- if (!C_Hostname)
+- {
+- char buffer[1024];
+- if (getdnsdomainname(buffer, sizeof(buffer)) == 0)
+- {
+- C_Hostname = mutt_mem_malloc(mutt_str_strlen(buffer) +
+- mutt_str_strlen(ShortHostname) + 2);
+- sprintf((char *) C_Hostname, "%s.%s", NONULL(ShortHostname), buffer);
+- }
+- else
+- {
+- /* DNS failed, use the nodename. Whether or not the nodename had a '.'
+- * in it, we can use the nodename as the FQDN. On hosts where DNS is
+- * not being used, e.g. small network that relies on hosts files, a
+- * short host name is all that is required for SMTP to work correctly.
+- * It could be wrong, but we've done the best we can, at this point the
+- * onus is on the user to provide the correct hostname if the nodename
+- * won't work in their network. */
+- C_Hostname = mutt_str_strdup(utsname.nodename);
+- }
+- }
+-#endif
+- }
+- if (C_Hostname)
+- cs_str_initial_set(Config, "hostname", C_Hostname, NULL);
+-
+- return true;
+-}
+-
+-/**
+- * mutt_attachmatch_new - Create a new AttachMatch
+- * @retval ptr New AttachMatch
+- */
+-static struct AttachMatch *mutt_attachmatch_new(void)
+-{
+- return mutt_mem_calloc(1, sizeof(struct AttachMatch));
+-}
+-
+-/**
+- * parse_attach_list - Parse the "attachments" command
+- * @param buf Buffer for temporary storage
+- * @param s Buffer containing the attachments command
+- * @param head List of AttachMatch to add to
+- * @param err Buffer for error messages
+- * @retval #CommandResult Result e.g. #MUTT_CMD_SUCCESS
+- */
+-static enum CommandResult parse_attach_list(struct Buffer *buf, struct Buffer *s,
+- struct ListHead *head, struct Buffer *err)
+-{
+- struct AttachMatch *a = NULL;
+- char *p = NULL;
+- char *tmpminor = NULL;
+- size_t len;
+- int ret;
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (!buf->data || (*buf->data == '\0'))
+- continue;
+-
+- a = mutt_attachmatch_new();
+-
+- /* some cheap hacks that I expect to remove */
+- if (mutt_str_strcasecmp(buf->data, "any") == 0)
+- a->major = mutt_str_strdup("*/.*");
+- else if (mutt_str_strcasecmp(buf->data, "none") == 0)
+- a->major = mutt_str_strdup("cheap_hack/this_should_never_match");
+- else
+- a->major = mutt_str_strdup(buf->data);
+-
+- p = strchr(a->major, '/');
+- if (p)
+- {
+- *p = '\0';
+- p++;
+- a->minor = p;
+- }
+- else
+- {
+- a->minor = "unknown";
+- }
+-
+- len = strlen(a->minor);
+- tmpminor = mutt_mem_malloc(len + 3);
+- strcpy(&tmpminor[1], a->minor);
+- tmpminor[0] = '^';
+- tmpminor[len + 1] = '$';
+- tmpminor[len + 2] = '\0';
+-
+- a->major_int = mutt_check_mime_type(a->major);
+- ret = REG_COMP(&a->minor_regex, tmpminor, REG_ICASE);
+-
+- FREE(&tmpminor);
+-
+- if (ret != 0)
+- {
+- regerror(ret, &a->minor_regex, err->data, err->dsize);
+- FREE(&a->major);
+- FREE(&a);
+- return MUTT_CMD_ERROR;
+- }
+-
+- mutt_debug(LL_DEBUG3, "added %s/%s [%d]\n", a->major, a->minor, a->major_int);
+-
+- mutt_list_insert_tail(head, (char *) a);
+- } while (MoreArgs(s));
+-
+- attachments_clean();
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_grouplist - Parse a group context
+- * @param gl GroupList to add to
+- * @param buf Temporary Buffer space
+- * @param s Buffer containing string to be parsed
+- * @param data Flags associated with the command
+- * @param err Buffer for error messages
+- * @retval 0 Success
+- * @retval -1 Error
+- */
+-static int parse_grouplist(struct GroupList *gl, struct Buffer *buf,
+- struct Buffer *s, unsigned long data, struct Buffer *err)
+-{
+- while (mutt_str_strcasecmp(buf->data, "-group") == 0)
+- {
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_strcpy(err, _("-group: no group name"));
+- return -1;
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- mutt_grouplist_add(gl, mutt_pattern_group(buf->data));
+-
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_strcpy(err, _("out of arguments"));
+- return -1;
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- }
+-
+- return 0;
+-}
+-
+-/**
+- * parse_replace_list - Parse a string replacement rule - Implements ::command_t
+- */
+-static enum CommandResult parse_replace_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct ReplaceList *list = (struct ReplaceList *) data;
+- struct Buffer templ = mutt_buffer_make(0);
+-
+- /* First token is a regex. */
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "subjectrx");
+- return MUTT_CMD_WARNING;
+- }
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- /* Second token is a replacement template */
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "subjectrx");
+- return MUTT_CMD_WARNING;
+- }
+- mutt_extract_token(&templ, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (mutt_replacelist_add(list, buf->data, templ.data, err) != 0)
+- {
+- FREE(&templ.data);
+- return MUTT_CMD_ERROR;
+- }
+- FREE(&templ.data);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_unattach_list - Parse the "unattachments" command
+- * @param buf Buffer for temporary storage
+- * @param s Buffer containing the unattachments command
+- * @param head List of AttachMatch to remove from
+- * @param err Buffer for error messages
+- * @retval #MUTT_CMD_SUCCESS Always
+- */
+-static enum CommandResult parse_unattach_list(struct Buffer *buf, struct Buffer *s,
+- struct ListHead *head, struct Buffer *err)
+-{
+- struct AttachMatch *a = NULL;
+- char *tmp = NULL;
+- char *minor = NULL;
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- FREE(&tmp);
+-
+- if (mutt_str_strcasecmp(buf->data, "any") == 0)
+- tmp = mutt_str_strdup("*/.*");
+- else if (mutt_str_strcasecmp(buf->data, "none") == 0)
+- tmp = mutt_str_strdup("cheap_hack/this_should_never_match");
+- else
+- tmp = mutt_str_strdup(buf->data);
+-
+- minor = strchr(tmp, '/');
+- if (minor)
+- {
+- *minor = '\0';
+- minor++;
+- }
+- else
+- {
+- minor = "unknown";
+- }
+- const enum ContentType major = mutt_check_mime_type(tmp);
+-
+- struct ListNode *np = NULL, *tmp2 = NULL;
+- STAILQ_FOREACH_SAFE(np, head, entries, tmp2)
+- {
+- a = (struct AttachMatch *) np->data;
+- mutt_debug(LL_DEBUG3, "check %s/%s [%d] : %s/%s [%d]\n", a->major,
+- a->minor, a->major_int, tmp, minor, major);
+- if ((a->major_int == major) && (mutt_str_strcasecmp(minor, a->minor) == 0))
+- {
+- mutt_debug(LL_DEBUG3, "removed %s/%s [%d]\n", a->major, a->minor, a->major_int);
+- regfree(&a->minor_regex);
+- FREE(&a->major);
+- STAILQ_REMOVE(head, np, ListNode, entries);
+- FREE(&np->data);
+- FREE(&np);
+- }
+- }
+-
+- } while (MoreArgs(s));
+-
+- FREE(&tmp);
+- attachments_clean();
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_unreplace_list - Remove a string replacement rule - Implements ::command_t
+- */
+-static enum CommandResult parse_unreplace_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct ReplaceList *list = (struct ReplaceList *) data;
+-
+- /* First token is a regex. */
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "unsubjectrx");
+- return MUTT_CMD_WARNING;
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- /* "*" is a special case. */
+- if (mutt_str_strcmp(buf->data, "*") == 0)
+- {
+- mutt_replacelist_free(list);
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- mutt_replacelist_remove(list, buf->data);
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * print_attach_list - Print a list of attachments
+- * @param h List of attachments
+- * @param op Operation, e.g. '+', '-'
+- * @param name Attached/Inline, 'A', 'I'
+- * @retval 0 Always
+- */
+-static int print_attach_list(struct ListHead *h, const char op, const char *name)
+-{
+- struct ListNode *np = NULL;
+- STAILQ_FOREACH(np, h, entries)
+- {
+- printf("attachments %c%s %s/%s\n", op, name,
+- ((struct AttachMatch *) np->data)->major,
+- ((struct AttachMatch *) np->data)->minor);
+- }
+-
+- return 0;
+-}
+-
+-/**
+- * remove_from_stailq - Remove an item, matching a string, from a List
+- * @param head Head of the List
+- * @param str String to match
+- *
+- * @note The string comparison is case-insensitive
+- */
+-static void remove_from_stailq(struct ListHead *head, const char *str)
+-{
+- if (mutt_str_strcmp("*", str) == 0)
+- mutt_list_free(head); /* "unCMD *" means delete all current entries */
+- else
+- {
+- struct ListNode *np = NULL, *tmp = NULL;
+- STAILQ_FOREACH_SAFE(np, head, entries, tmp)
+- {
+- if (mutt_str_strcasecmp(str, np->data) == 0)
+- {
+- STAILQ_REMOVE(head, np, ListNode, entries);
+- FREE(&np->data);
+- FREE(&np);
+- break;
+- }
+- }
+- }
+-}
+-
+-/**
+- * source_rc - Read an initialization file
+- * @param rcfile_path Path to initialization file
+- * @param err Buffer for error messages
+- * @retval <0 if neomutt should pause to let the user know
+- */
+-static int source_rc(const char *rcfile_path, struct Buffer *err)
+-{
+- int line = 0, rc = 0, warnings = 0;
+- enum CommandResult line_rc;
+- struct Buffer token;
+- char *linebuf = NULL;
+- char *currentline = NULL;
+- char rcfile[PATH_MAX];
+- size_t buflen;
+-
+- pid_t pid;
+-
+- mutt_str_strfcpy(rcfile, rcfile_path, sizeof(rcfile));
+-
+- size_t rcfilelen = mutt_str_strlen(rcfile);
+- if (rcfilelen == 0)
+- return -1;
+-
+- bool ispipe = rcfile[rcfilelen - 1] == '|';
+-
+- if (!ispipe)
+- {
+- struct ListNode *np = STAILQ_FIRST(&MuttrcStack);
+- if (!mutt_path_to_absolute(rcfile, np ? NONULL(np->data) : ""))
+- {
+- mutt_error(_("Error: Can't build path of '%s'"), rcfile_path);
+- return -1;
+- }
+-
+- STAILQ_FOREACH(np, &MuttrcStack, entries)
+- {
+- if (mutt_str_strcmp(np->data, rcfile) == 0)
+- {
+- break;
+- }
+- }
+- if (np)
+- {
+- mutt_error(_("Error: Cyclic sourcing of configuration file '%s'"), rcfile);
+- return -1;
+- }
+-
+- mutt_list_insert_head(&MuttrcStack, mutt_str_strdup(rcfile));
+- }
+-
+- mutt_debug(LL_DEBUG2, "Reading configuration file '%s'\n", rcfile);
+-
+- FILE *fp = mutt_open_read(rcfile, &pid);
+- if (!fp)
+- {
+- mutt_buffer_printf(err, "%s: %s", rcfile, strerror(errno));
+- return -1;
+- }
+-
+- mutt_buffer_init(&token);
+- while ((linebuf = mutt_file_read_line(linebuf, &buflen, fp, &line, MUTT_CONT)))
+- {
+- const bool conv = C_ConfigCharset && C_Charset;
+- if (conv)
+- {
+- currentline = mutt_str_strdup(linebuf);
+- if (!currentline)
+- continue;
+- mutt_ch_convert_string(¤tline, C_ConfigCharset, C_Charset, 0);
+- }
+- else
+- currentline = linebuf;
+- mutt_buffer_reset(err);
+- line_rc = mutt_parse_rc_line(currentline, &token, err);
+- if (line_rc == MUTT_CMD_ERROR)
+- {
+- mutt_error(_("Error in %s, line %d: %s"), rcfile, line, err->data);
+- if (--rc < -MAX_ERRS)
+- {
+- if (conv)
+- FREE(¤tline);
+- break;
+- }
+- }
+- else if (line_rc == MUTT_CMD_WARNING)
+- {
+- /* Warning */
+- mutt_warning(_("Warning in %s, line %d: %s"), rcfile, line, err->data);
+- warnings++;
+- }
+- else if (line_rc == MUTT_CMD_FINISH)
+- {
+- break; /* Found "finish" command */
+- }
+- else
+- {
+- if (rc < 0)
+- rc = -1;
+- }
+- if (conv)
+- FREE(¤tline);
+- }
+- FREE(&token.data);
+- FREE(&linebuf);
+- mutt_file_fclose(&fp);
+- if (pid != -1)
+- mutt_wait_filter(pid);
+- if (rc)
+- {
+- /* the neomuttrc source keyword */
+- mutt_buffer_reset(err);
+- mutt_buffer_printf(err, (rc >= -MAX_ERRS) ? _("source: errors in %s") : _("source: reading aborted due to too many errors in %s"),
+- rcfile);
+- rc = -1;
+- }
+- else
+- {
+- /* Don't alias errors with warnings */
+- if (warnings > 0)
+- {
+- mutt_buffer_printf(err, ngettext("source: %d warning in %s", "source: %d warnings in %s", warnings),
+- warnings, rcfile);
+- rc = -2;
+- }
+- }
+-
+- if (!ispipe && !STAILQ_EMPTY(&MuttrcStack))
+- {
+- struct ListNode *np = STAILQ_FIRST(&MuttrcStack);
+- STAILQ_REMOVE_HEAD(&MuttrcStack, entries);
+- FREE(&np->data);
+- FREE(&np);
+- }
+-
+- return rc;
+-}
+-
+-/**
+- * parse_alias - Parse the 'alias' command - Implements ::command_t
+- */
+-static enum CommandResult parse_alias(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Alias *tmp = NULL;
+- char *estr = NULL;
+- struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
+-
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_strcpy(err, _("alias: no address"));
+- return MUTT_CMD_WARNING;
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (parse_grouplist(&gl, buf, s, data, err) == -1)
+- return MUTT_CMD_ERROR;
+-
+- /* check to see if an alias with this name already exists */
+- TAILQ_FOREACH(tmp, &Aliases, entries)
+- {
+- if (mutt_str_strcasecmp(tmp->name, buf->data) == 0)
+- break;
+- }
+-
+- if (tmp)
+- {
+- mutt_alias_delete_reverse(tmp);
+- /* override the previous value */
+- mutt_addrlist_clear(&tmp->addr);
+- if (CurrentMenu == MENU_ALIAS)
+- mutt_menu_set_current_redraw_full();
+- }
+- else
+- {
+- /* create a new alias */
+- tmp = mutt_alias_new();
+- tmp->name = mutt_str_strdup(buf->data);
+- TAILQ_INSERT_TAIL(&Aliases, tmp, entries);
+- /* give the main addressbook code a chance */
+- if (CurrentMenu == MENU_ALIAS)
+- OptMenuCaller = true;
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_QUOTE | MUTT_TOKEN_SPACE | MUTT_TOKEN_SEMICOLON);
+- mutt_debug(LL_DEBUG5, "Second token is '%s'\n", buf->data);
+-
+- mutt_addrlist_parse2(&tmp->addr, buf->data);
+-
+- if (mutt_addrlist_to_intl(&tmp->addr, &estr))
+- {
+- mutt_buffer_printf(err, _("Warning: Bad IDN '%s' in alias '%s'"), estr, tmp->name);
+- FREE(&estr);
+- goto bail;
+- }
+-
+- mutt_grouplist_add_addrlist(&gl, &tmp->addr);
+- mutt_alias_add_reverse(tmp);
+-
+- if (C_DebugLevel > LL_DEBUG4)
+- {
+- /* A group is terminated with an empty address, so check a->mailbox */
+- struct Address *a = NULL;
+- TAILQ_FOREACH(a, &tmp->addr, entries)
+- {
+- if (!a->mailbox)
+- break;
+-
+- if (a->group)
+- mutt_debug(LL_DEBUG5, " Group %s\n", a->mailbox);
+- else
+- mutt_debug(LL_DEBUG5, " %s\n", a->mailbox);
+- }
+- }
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_SUCCESS;
+-
+-bail:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_ERROR;
+-}
+-
+-/**
+- * parse_alternates - Parse the 'alternates' command - Implements ::command_t
+- */
+-static enum CommandResult parse_alternates(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
+-
+- alternates_clean();
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (parse_grouplist(&gl, buf, s, data, err) == -1)
+- goto bail;
+-
+- mutt_regexlist_remove(&UnAlternates, buf->data);
+-
+- if (mutt_regexlist_add(&Alternates, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+-
+- if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+- } while (MoreArgs(s));
+-
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_SUCCESS;
+-
+-bail:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_ERROR;
+-}
+-
+-/**
+- * parse_attachments - Parse the 'attachments' command - Implements ::command_t
+- */
+-static enum CommandResult parse_attachments(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- char op;
+- char *category = NULL;
+- struct ListHead *head = NULL;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (!buf->data || (*buf->data == '\0'))
+- {
+- mutt_buffer_strcpy(err, _("attachments: no disposition"));
+- return MUTT_CMD_WARNING;
+- }
+-
+- category = buf->data;
+- op = *category++;
+-
+- if (op == '?')
+- {
+- mutt_endwin();
+- fflush(stdout);
+- printf("\n%s\n\n", _("Current attachments settings:"));
+- print_attach_list(&AttachAllow, '+', "A");
+- print_attach_list(&AttachExclude, '-', "A");
+- print_attach_list(&InlineAllow, '+', "I");
+- print_attach_list(&InlineExclude, '-', "I");
+- mutt_any_key_to_continue(NULL);
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- if ((op != '+') && (op != '-'))
+- {
+- op = '+';
+- category--;
+- }
+- if (mutt_str_startswith("attachment", category, CASE_IGNORE))
+- {
+- if (op == '+')
+- head = &AttachAllow;
+- else
+- head = &AttachExclude;
+- }
+- else if (mutt_str_startswith("inline", category, CASE_IGNORE))
+- {
+- if (op == '+')
+- head = &InlineAllow;
+- else
+- head = &InlineExclude;
+- }
+- else
+- {
+- mutt_buffer_strcpy(err, _("attachments: invalid disposition"));
+- return MUTT_CMD_ERROR;
+- }
+-
+- return parse_attach_list(buf, s, head, err);
+-}
+-
+-/**
+- * parse_echo - Parse the 'echo' command - Implements ::command_t
+- */
+-static enum CommandResult parse_echo(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "echo");
+- return MUTT_CMD_WARNING;
+- }
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- OptForceRefresh = true;
+- mutt_message("%s", buf->data);
+- OptForceRefresh = false;
+- mutt_sleep(0);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_finish - Parse the 'finish' command - Implements ::command_t
+- * @retval #MUTT_CMD_FINISH Stop processing the current file
+- * @retval #MUTT_CMD_WARNING Failed
+- *
+- * If the 'finish' command is found, we should stop reading the current file.
+- */
+-static enum CommandResult parse_finish(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too many arguments"), "finish");
+- return MUTT_CMD_WARNING;
+- }
+-
+- return MUTT_CMD_FINISH;
+-}
+-
+-/**
+- * parse_group - Parse the 'group' and 'ungroup' commands - Implements ::command_t
+- */
+-static enum CommandResult parse_group(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
+- enum GroupState state = GS_NONE;
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (parse_grouplist(&gl, buf, s, data, err) == -1)
+- goto bail;
+-
+- if ((data == MUTT_UNGROUP) && (mutt_str_strcasecmp(buf->data, "*") == 0))
+- {
+- mutt_grouplist_clear(&gl);
+- goto out;
+- }
+-
+- if (mutt_str_strcasecmp(buf->data, "-rx") == 0)
+- state = GS_RX;
+- else if (mutt_str_strcasecmp(buf->data, "-addr") == 0)
+- state = GS_ADDR;
+- else
+- {
+- switch (state)
+- {
+- case GS_NONE:
+- mutt_buffer_printf(err, _("%sgroup: missing -rx or -addr"),
+- (data == MUTT_UNGROUP) ? "un" : "");
+- goto warn;
+-
+- case GS_RX:
+- if ((data == MUTT_GROUP) &&
+- (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0))
+- {
+- goto bail;
+- }
+- else if ((data == MUTT_UNGROUP) &&
+- (mutt_grouplist_remove_regex(&gl, buf->data) < 0))
+- {
+- goto bail;
+- }
+- break;
+-
+- case GS_ADDR:
+- {
+- char *estr = NULL;
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- mutt_addrlist_parse2(&al, buf->data);
+- if (TAILQ_EMPTY(&al))
+- goto bail;
+- if (mutt_addrlist_to_intl(&al, &estr))
+- {
+- mutt_buffer_printf(err, _("%sgroup: warning: bad IDN '%s'"),
+- (data == 1) ? "un" : "", estr);
+- mutt_addrlist_clear(&al);
+- FREE(&estr);
+- goto bail;
+- }
+- if (data == MUTT_GROUP)
+- mutt_grouplist_add_addrlist(&gl, &al);
+- else if (data == MUTT_UNGROUP)
+- mutt_grouplist_remove_addrlist(&gl, &al);
+- mutt_addrlist_clear(&al);
+- break;
+- }
+- }
+- }
+- } while (MoreArgs(s));
+-
+-out:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_SUCCESS;
+-
+-bail:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_ERROR;
+-
+-warn:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_WARNING;
+-}
+-
+-/**
+- * is_function - Is the argument a neomutt function?
+- * @param name Command name to be searched for
+- * @retval true Function found
+- * @retval false Function not found
+- */
+-static bool is_function(const char *name)
+-{
+- for (enum MenuType i = 0; i < MENU_MAX; i++)
+- {
+- const struct Binding *b = km_get_table(Menus[i].value);
+- if (!b)
+- continue;
+-
+- for (int j = 0; b[j].name; j++)
+- if (mutt_str_strcmp(name, b[j].name) == 0)
+- return true;
+- }
+- return false;
+-}
+-
+-/**
+- * parse_ifdef - Parse the 'ifdef' and 'ifndef' commands - Implements ::command_t
+- *
+- * The 'ifdef' command allows conditional elements in the config file.
+- * If a given variable, function, command or compile-time symbol exists, then
+- * read the rest of the line of config commands.
+- * e.g.
+- * ifdef sidebar source ~/.neomutt/sidebar.rc
+- *
+- * If (data == 1) then it means use the 'ifndef' (if-not-defined) command.
+- * e.g.
+- * ifndef imap finish
+- */
+-static enum CommandResult parse_ifdef(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Buffer token = mutt_buffer_make(0);
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- // is the item defined as:
+- bool res = cs_get_elem(Config, buf->data) // a variable?
+- || feature_enabled(buf->data) // a compiled-in feature?
+- || is_function(buf->data) // a function?
+- || mutt_command_get(buf->data) // a command?
+- || myvar_get(buf->data) // a my_ variable?
+- || mutt_str_getenv(buf->data); // an environment variable?
+-
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), (data ? "ifndef" : "ifdef"));
+- return MUTT_CMD_WARNING;
+- }
+- mutt_extract_token(buf, s, MUTT_TOKEN_SPACE);
+-
+- /* ifdef KNOWN_SYMBOL or ifndef UNKNOWN_SYMBOL */
+- if ((res && (data == 0)) || (!res && (data == 1)))
+- {
+- enum CommandResult rc = mutt_parse_rc_line(buf->data, &token, err);
+- if (rc == MUTT_CMD_ERROR)
+- {
+- mutt_error(_("Error: %s"), err->data);
+- FREE(&token.data);
+- return MUTT_CMD_ERROR;
+- }
+- FREE(&token.data);
+- return rc;
+- }
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_ignore - Parse the 'ignore' command - Implements ::command_t
+- */
+-static enum CommandResult parse_ignore(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- remove_from_stailq(&UnIgnore, buf->data);
+- add_to_stailq(&Ignore, buf->data);
+- } while (MoreArgs(s));
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_lists - Parse the 'lists' command - Implements ::command_t
+- */
+-static enum CommandResult parse_lists(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (parse_grouplist(&gl, buf, s, data, err) == -1)
+- goto bail;
+-
+- mutt_regexlist_remove(&UnMailLists, buf->data);
+-
+- if (mutt_regexlist_add(&MailLists, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+-
+- if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+- } while (MoreArgs(s));
+-
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_SUCCESS;
+-
+-bail:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_ERROR;
+-}
+-
+-/**
+- * parse_mailboxes - Parse the 'mailboxes' command - Implements ::command_t
+- *
+- * This is also used by 'virtual-mailboxes'.
+- */
+-static enum CommandResult parse_mailboxes(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- while (MoreArgs(s))
+- {
+- struct Mailbox *m = mailbox_new();
+-
+- if (data & MUTT_NAMED)
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (buf->data && (*buf->data != '\0'))
+- {
+- m->name = mutt_str_strdup(buf->data);
+- }
+- else
+- {
+- mailbox_free(&m);
+- continue;
+- }
+- }
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (mutt_buffer_is_empty(buf))
+- {
+- /* Skip empty tokens. */
+- mailbox_free(&m);
+- continue;
+- }
+-
+- mutt_buffer_strcpy(&m->pathbuf, buf->data);
+- /* int rc = */ mx_path_canon2(m, C_Folder);
+-
+- if (m->magic <= MUTT_UNKNOWN)
+- {
+- mutt_error("Unknown Mailbox: %s", m->realpath);
+- mailbox_free(&m);
+- return MUTT_CMD_ERROR;
+- }
+-
+- bool new_account = false;
+- struct Account *a = mx_ac_find(m);
+- if (!a)
+- {
+- a = account_new(NULL, NeoMutt->sub);
+- a->magic = m->magic;
+- new_account = true;
+- }
+-
+- if (!new_account)
+- {
+- struct Mailbox *m_old = mx_mbox_find(a, m->realpath);
+- if (m_old)
+- {
+- if (m_old->flags == MB_HIDDEN)
+- {
+- m_old->flags = MB_NORMAL;
+- mutt_sb_notify_mailbox(m_old, true);
+- }
+- mailbox_free(&m);
+- continue;
+- }
+- }
+-
+- if (mx_ac_add(a, m) < 0)
+- {
+- //error
+- mailbox_free(&m);
+- if (new_account)
+- {
+- cs_subset_free(&a->sub);
+- FREE(&a->name);
+- notify_free(&a->notify);
+- FREE(&a);
+- }
+- continue;
+- }
+- if (new_account)
+- {
+- neomutt_account_add(NeoMutt, a);
+- }
+-
+-#ifdef USE_SIDEBAR
+- mutt_sb_notify_mailbox(m, true);
+-#endif
+-#ifdef USE_INOTIFY
+- mutt_monitor_add(m);
+-#endif
+- }
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_my_hdr - Parse the 'my_hdr' command - Implements ::command_t
+- */
+-static enum CommandResult parse_my_hdr(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct ListNode *n = NULL;
+- size_t keylen;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_SPACE | MUTT_TOKEN_QUOTE);
+- char *p = strpbrk(buf->data, ": \t");
+- if (!p || (*p != ':'))
+- {
+- mutt_buffer_strcpy(err, _("invalid header field"));
+- return MUTT_CMD_WARNING;
+- }
+- keylen = p - buf->data + 1;
+-
+- STAILQ_FOREACH(n, &UserHeader, entries)
+- {
+- /* see if there is already a field by this name */
+- if (mutt_str_strncasecmp(buf->data, n->data, keylen) == 0)
+- {
+- break;
+- }
+- }
+-
+- if (!n)
+- {
+- /* not found, allocate memory for a new node and add it to the list */
+- n = mutt_list_insert_tail(&UserHeader, NULL);
+- }
+- else
+- {
+- /* found, free the existing data */
+- FREE(&n->data);
+- }
+-
+- n->data = buf->data;
+- mutt_buffer_init(buf);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-#ifdef USE_SIDEBAR
+-/**
+- * parse_path_list - Parse the 'sidebar_whitelist' command - Implements ::command_t
+- */
+-static enum CommandResult parse_path_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Buffer *path = mutt_buffer_pool_get();
+-
+- do
+- {
+- mutt_extract_token(path, s, MUTT_TOKEN_NO_FLAGS);
+- mutt_buffer_expand_path(path);
+- add_to_stailq((struct ListHead *) data, mutt_b2s(path));
+- } while (MoreArgs(s));
+- mutt_buffer_pool_release(&path);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-#endif
+-
+-#ifdef USE_SIDEBAR
+-/**
+- * parse_path_unlist - Parse the 'unsidebar_whitelist' command - Implements ::command_t
+- */
+-static enum CommandResult parse_path_unlist(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Buffer *path = mutt_buffer_pool_get();
+-
+- do
+- {
+- mutt_extract_token(path, s, MUTT_TOKEN_NO_FLAGS);
+- /* Check for deletion of entire list */
+- if (mutt_str_strcmp(mutt_b2s(path), "*") == 0)
+- {
+- mutt_list_free((struct ListHead *) data);
+- break;
+- }
+- mutt_buffer_expand_path(path);
+- remove_from_stailq((struct ListHead *) data, mutt_b2s(path));
+- } while (MoreArgs(s));
+- mutt_buffer_pool_release(&path);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-#endif
+-
+-/**
+- * parse_set - Parse the 'set' family of commands - Implements ::command_t
+- *
+- * This is used by 'reset', 'set', 'toggle' and 'unset'.
+- */
+-static enum CommandResult parse_set(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- /* The order must match `enum MuttSetCommand` */
+- static const char *set_commands[] = { "set", "toggle", "unset", "reset" };
+-
+- int rc = 0;
+-
+- while (MoreArgs(s))
+- {
+- bool prefix = false;
+- bool query = false;
+- bool inv = (data == MUTT_SET_INV);
+- bool reset = (data == MUTT_SET_RESET);
+- bool unset = (data == MUTT_SET_UNSET);
+-
+- if (*s->dptr == '?')
+- {
+- prefix = true;
+- query = true;
+- s->dptr++;
+- }
+- else if (mutt_str_startswith(s->dptr, "no", CASE_MATCH))
+- {
+- prefix = true;
+- unset = !unset;
+- s->dptr += 2;
+- }
+- else if (mutt_str_startswith(s->dptr, "inv", CASE_MATCH))
+- {
+- prefix = true;
+- inv = !inv;
+- s->dptr += 3;
+- }
+- else if (*s->dptr == '&')
+- {
+- prefix = true;
+- reset = true;
+- s->dptr++;
+- }
+-
+- if (prefix && (data != MUTT_SET_SET))
+- {
+- mutt_buffer_printf(err, "ERR22 can't use 'inv', 'no', '&' or '?' with the '%s' command",
+- set_commands[data]);
+- return MUTT_CMD_WARNING;
+- }
+-
+- /* get the variable name */
+- mutt_extract_token(buf, s, MUTT_TOKEN_EQUAL | MUTT_TOKEN_QUESTION);
+-
+- bool bq = false;
+- bool equals = false;
+-
+- struct HashElem *he = NULL;
+- bool my = mutt_str_startswith(buf->data, "my_", CASE_MATCH);
+- if (!my)
+- {
+- he = cs_get_elem(Config, buf->data);
+- if (!he)
+- {
+- if (reset && (mutt_str_strcmp(buf->data, "all") == 0))
+- {
+- struct HashElem **list = get_elem_list(Config);
+- if (!list)
+- return MUTT_CMD_ERROR;
+-
+- for (size_t i = 0; list[i]; i++)
+- cs_he_reset(Config, list[i], NULL);
+-
+- FREE(&list);
+- break;
+- }
+- else
+- {
+- mutt_buffer_printf(err, "ERR01 unknown variable: %s", buf->data);
+- return MUTT_CMD_ERROR;
+- }
+- }
+-
+- bq = ((DTYPE(he->type) == DT_BOOL) || (DTYPE(he->type) == DT_QUAD));
+- }
+-
+- if (*s->dptr == '?')
+- {
+- if (prefix)
+- {
+- mutt_buffer_printf(err,
+- "ERR02 can't use a prefix when querying a variable");
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (reset || unset || inv)
+- {
+- mutt_buffer_printf(err, "ERR03 can't query a variable with the '%s' command",
+- set_commands[data]);
+- return MUTT_CMD_WARNING;
+- }
+-
+- query = true;
+- s->dptr++;
+- }
+- else if (*s->dptr == '=')
+- {
+- if (prefix)
+- {
+- mutt_buffer_printf(err,
+- "ERR04 can't use prefix when setting a variable");
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (reset || unset || inv)
+- {
+- mutt_buffer_printf(err, "ERR05 can't set a variable with the '%s' command",
+- set_commands[data]);
+- return MUTT_CMD_WARNING;
+- }
+-
+- equals = true;
+- s->dptr++;
+- }
+-
+- if (!bq && (inv || (unset && prefix)))
+- {
+- if (data == MUTT_SET_SET)
+- {
+- mutt_buffer_printf(err, "ERR06 prefixes 'no' and 'inv' may only be "
+- "used with bool/quad variables");
+- }
+- else
+- {
+- mutt_buffer_printf(err, "ERR07 command '%s' can only be used with bool/quad variables",
+- set_commands[data]);
+- }
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (reset)
+- {
+- // mutt_buffer_printf(err, "ACT24 reset variable %s", buf->data);
+- if (he)
+- {
+- rc = cs_he_reset(Config, he, err);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- return MUTT_CMD_ERROR;
+- }
+- else
+- {
+- myvar_del(buf->data);
+- }
+- continue;
+- }
+-
+- if ((data == MUTT_SET_SET) && !inv && !unset)
+- {
+- if (query)
+- {
+- // mutt_buffer_printf(err, "ACT08 query variable %s", buf->data);
+- if (he)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- mutt_buffer_addch(err, '=');
+- mutt_buffer_reset(buf);
+- rc = cs_he_string_get(Config, he, buf);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- return MUTT_CMD_ERROR;
+- }
+- pretty_var(buf->data, err);
+- }
+- else
+- {
+- const char *val = myvar_get(buf->data);
+- if (val)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- mutt_buffer_addch(err, '=');
+- pretty_var(val, err);
+- }
+- else
+- {
+- mutt_buffer_printf(err, _("%s: unknown variable"), buf->data);
+- return MUTT_CMD_ERROR;
+- }
+- }
+- break;
+- }
+- else if (equals)
+- {
+- // mutt_buffer_printf(err, "ACT11 set variable %s to ", buf->data);
+- const char *name = NULL;
+- if (my)
+- {
+- name = mutt_str_strdup(buf->data);
+- }
+- mutt_extract_token(buf, s, MUTT_TOKEN_BACKTICK_VARS);
+- if (my)
+- {
+- myvar_set(name, buf->data);
+- FREE(&name);
+- }
+- else
+- {
+- if (IS_PATH(he))
+- {
+- mutt_buffer_expand_path(buf);
+- struct Buffer scratch = mutt_buffer_make(1024);
+- mutt_buffer_copy(&scratch, buf);
+- size_t scratchlen = mutt_buffer_len(&scratch);
+- if (!(he->type & DT_MAILBOX) && (scratchlen != 0))
+- {
+- if ((mutt_b2s(&scratch)[scratchlen - 1] != '|') && /* not a command */
+- (url_check_scheme(mutt_b2s(&scratch)) == U_UNKNOWN)) /* probably a local file */
+- {
+- struct ListNode *np = STAILQ_FIRST(&MuttrcStack);
+- if (mutt_path_to_absolute(scratch.data, np ? NONULL(np->data) : "./"))
+- {
+- mutt_buffer_reset(buf);
+- mutt_buffer_addstr(buf, mutt_b2s(&scratch));
+- }
+- else
+- {
+- mutt_error(_("Error: Can't build path of '%s'"), mutt_b2s(&scratch));
+- }
+- }
+- }
+- mutt_buffer_dealloc(&scratch);
+- }
+- else if (IS_COMMAND(he))
+- {
+- struct Buffer scratch = mutt_buffer_make(1024);
+- mutt_buffer_copy(&scratch, buf);
+-
+- if (mutt_str_strcmp(buf->data, "builtin") != 0)
+- {
+- mutt_buffer_expand_path(&scratch);
+- }
+- mutt_buffer_reset(buf);
+- mutt_buffer_addstr(buf, mutt_b2s(&scratch));
+- mutt_buffer_dealloc(&scratch);
+- }
+-
+- rc = cs_he_string_set(Config, he, buf->data, err);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- return MUTT_CMD_ERROR;
+- }
+- continue;
+- }
+- else
+- {
+- if (bq)
+- {
+- // mutt_buffer_printf(err, "ACT23 set variable %s to 'yes'", buf->data);
+- rc = cs_he_native_set(Config, he, true, err);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- return MUTT_CMD_ERROR;
+- continue;
+- }
+- else
+- {
+- // mutt_buffer_printf(err, "ACT10 query variable %s", buf->data);
+- if (he)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- mutt_buffer_addch(err, '=');
+- mutt_buffer_reset(buf);
+- rc = cs_he_string_get(Config, he, buf);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- return MUTT_CMD_ERROR;
+- }
+- pretty_var(buf->data, err);
+- }
+- else
+- {
+- const char *val = myvar_get(buf->data);
+- if (val)
+- {
+- mutt_buffer_addstr(err, buf->data);
+- mutt_buffer_addch(err, '=');
+- pretty_var(val, err);
+- }
+- else
+- {
+- mutt_buffer_printf(err, _("%s: unknown variable"), buf->data);
+- return MUTT_CMD_ERROR;
+- }
+- }
+- break;
+- }
+- }
+- }
+-
+- if (my)
+- {
+- myvar_del(buf->data);
+- }
+- else if (bq)
+- {
+- if (inv)
+- {
+- // mutt_buffer_printf(err, "ACT25 TOGGLE bool/quad variable %s", buf->data);
+- if (DTYPE(he->type) == DT_BOOL)
+- bool_he_toggle(Config, he, err);
+- else
+- quad_he_toggle(Config, he, err);
+- }
+- else
+- {
+- // mutt_buffer_printf(err, "ACT26 UNSET bool/quad variable %s", buf->data);
+- rc = cs_he_native_set(Config, he, false, err);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- return MUTT_CMD_ERROR;
+- }
+- continue;
+- }
+- else
+- {
+- rc = cs_he_string_set(Config, he, NULL, err);
+- if (CSR_RESULT(rc) != CSR_SUCCESS)
+- return MUTT_CMD_ERROR;
+- }
+- }
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_setenv - Parse the 'setenv' and 'unsetenv' commands - Implements ::command_t
+- */
+-static enum CommandResult parse_setenv(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- char **envp = mutt_envlist_getlist();
+-
+- bool query = false;
+- bool unset = (data == MUTT_SET_UNSET);
+-
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "setenv");
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (*s->dptr == '?')
+- {
+- query = true;
+- s->dptr++;
+- }
+-
+- /* get variable name */
+- mutt_extract_token(buf, s, MUTT_TOKEN_EQUAL);
+-
+- if (query)
+- {
+- bool found = false;
+- while (envp && *envp)
+- {
+- /* This will display all matches for "^QUERY" */
+- if (mutt_str_startswith(*envp, buf->data, CASE_MATCH))
+- {
+- if (!found)
+- {
+- mutt_endwin();
+- found = true;
+- }
+- puts(*envp);
+- }
+- envp++;
+- }
+-
+- if (found)
+- {
+- mutt_any_key_to_continue(NULL);
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- mutt_buffer_printf(err, _("%s is unset"), buf->data);
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (unset)
+- {
+- if (mutt_envlist_unset(buf->data))
+- return MUTT_CMD_SUCCESS;
+- return MUTT_CMD_ERROR;
+- }
+-
+- /* set variable */
+-
+- if (*s->dptr == '=')
+- {
+- s->dptr++;
+- SKIPWS(s->dptr);
+- }
+-
+- if (!MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too few arguments"), "setenv");
+- return MUTT_CMD_WARNING;
+- }
+-
+- char *name = mutt_str_strdup(buf->data);
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- mutt_envlist_set(name, buf->data, true);
+- FREE(&name);
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_source - Parse the 'source' command - Implements ::command_t
+- */
+-static enum CommandResult parse_source(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- char path[PATH_MAX];
+-
+- do
+- {
+- if (mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS) != 0)
+- {
+- mutt_buffer_printf(err, _("source: error at %s"), s->dptr);
+- return MUTT_CMD_ERROR;
+- }
+- mutt_str_strfcpy(path, buf->data, sizeof(path));
+- mutt_expand_path(path, sizeof(path));
+-
+- if (source_rc(path, err) < 0)
+- {
+- mutt_buffer_printf(err, _("source: file %s could not be sourced"), path);
+- return MUTT_CMD_ERROR;
+- }
+-
+- } while (MoreArgs(s));
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_spam_list - Parse the 'spam' and 'nospam' commands - Implements ::command_t
+- */
+-static enum CommandResult parse_spam_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Buffer templ;
+-
+- mutt_buffer_init(&templ);
+-
+- /* Insist on at least one parameter */
+- if (!MoreArgs(s))
+- {
+- if (data == MUTT_SPAM)
+- mutt_buffer_strcpy(err, _("spam: no matching pattern"));
+- else
+- mutt_buffer_strcpy(err, _("nospam: no matching pattern"));
+- return MUTT_CMD_ERROR;
+- }
+-
+- /* Extract the first token, a regex */
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- /* data should be either MUTT_SPAM or MUTT_NOSPAM. MUTT_SPAM is for spam commands. */
+- if (data == MUTT_SPAM)
+- {
+- /* If there's a second parameter, it's a template for the spam tag. */
+- if (MoreArgs(s))
+- {
+- mutt_extract_token(&templ, s, MUTT_TOKEN_NO_FLAGS);
+-
+- /* Add to the spam list. */
+- if (mutt_replacelist_add(&SpamList, buf->data, templ.data, err) != 0)
+- {
+- FREE(&templ.data);
+- return MUTT_CMD_ERROR;
+- }
+- FREE(&templ.data);
+- }
+- /* If not, try to remove from the nospam list. */
+- else
+- {
+- mutt_regexlist_remove(&NoSpamList, buf->data);
+- }
+-
+- return MUTT_CMD_SUCCESS;
+- }
+- /* MUTT_NOSPAM is for nospam commands. */
+- else if (data == MUTT_NOSPAM)
+- {
+- /* nospam only ever has one parameter. */
+-
+- /* "*" is a special case. */
+- if (mutt_str_strcmp(buf->data, "*") == 0)
+- {
+- mutt_replacelist_free(&SpamList);
+- mutt_regexlist_free(&NoSpamList);
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- /* If it's on the spam list, just remove it. */
+- if (mutt_replacelist_remove(&SpamList, buf->data) != 0)
+- return MUTT_CMD_SUCCESS;
+-
+- /* Otherwise, add it to the nospam list. */
+- if (mutt_regexlist_add(&NoSpamList, buf->data, REG_ICASE, err) != 0)
+- return MUTT_CMD_ERROR;
+-
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- /* This should not happen. */
+- mutt_buffer_strcpy(err, "This is no good at all.");
+- return MUTT_CMD_ERROR;
+-}
+-
+-/**
+- * parse_stailq - Parse a list command - Implements ::command_t
+- *
+- * This is used by 'alternative_order', 'auto_view' and several others.
+- */
+-static enum CommandResult parse_stailq(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- add_to_stailq((struct ListHead *) data, buf->data);
+- } while (MoreArgs(s));
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_subjectrx_list - Parse the 'subjectrx' command - Implements ::command_t
+- */
+-static enum CommandResult parse_subjectrx_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- enum CommandResult rc;
+-
+- rc = parse_replace_list(buf, s, data, err);
+- if (rc == MUTT_CMD_SUCCESS)
+- clear_subject_mods();
+- return rc;
+-}
+-
+-/**
+- * parse_subscribe - Parse the 'subscribe' command - Implements ::command_t
+- */
+-static enum CommandResult parse_subscribe(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct GroupList gl = STAILQ_HEAD_INITIALIZER(gl);
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (parse_grouplist(&gl, buf, s, data, err) == -1)
+- goto bail;
+-
+- mutt_regexlist_remove(&UnMailLists, buf->data);
+- mutt_regexlist_remove(&UnSubscribedLists, buf->data);
+-
+- if (mutt_regexlist_add(&MailLists, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+- if (mutt_regexlist_add(&SubscribedLists, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+- if (mutt_grouplist_add_regex(&gl, buf->data, REG_ICASE, err) != 0)
+- goto bail;
+- } while (MoreArgs(s));
+-
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_SUCCESS;
+-
+-bail:
+- mutt_grouplist_destroy(&gl);
+- return MUTT_CMD_ERROR;
+-}
+-
+-#ifdef USE_IMAP
+-/**
+- * parse_subscribe_to - Parse the 'subscribe-to' command - Implements ::command_t
+- *
+- * The 'subscribe-to' command allows to subscribe to an IMAP-Mailbox.
+- * Patterns are not supported.
+- * Use it as follows: subscribe-to =folder
+- */
+-static enum CommandResult parse_subscribe_to(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (!buf || !s || !err)
+- return MUTT_CMD_ERROR;
+-
+- mutt_buffer_reset(err);
+-
+- if (MoreArgs(s))
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too many arguments"), "subscribe-to");
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (buf->data && (*buf->data != '\0'))
+- {
+- /* Expand and subscribe */
+- if (imap_subscribe(mutt_expand_path(buf->data, buf->dsize), true) == 0)
+- {
+- mutt_message(_("Subscribed to %s"), buf->data);
+- return MUTT_CMD_SUCCESS;
+- }
+-
+- mutt_buffer_printf(err, _("Could not subscribe to %s"), buf->data);
+- return MUTT_CMD_ERROR;
+- }
+-
+- mutt_debug(LL_DEBUG1, "Corrupted buffer");
+- return MUTT_CMD_ERROR;
+- }
+-
+- mutt_buffer_addstr(err, _("No folder specified"));
+- return MUTT_CMD_WARNING;
+-}
+-#endif
+-
+-/**
+- * parse_tag_formats - Parse the 'tag-formats' command - Implements ::command_t
+- */
+-static enum CommandResult parse_tag_formats(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (!buf || !s)
+- return MUTT_CMD_ERROR;
+-
+- char *tmp = NULL;
+-
+- while (MoreArgs(s))
+- {
+- char *tag = NULL, *format = NULL;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (buf->data && (*buf->data != '\0'))
+- tag = mutt_str_strdup(buf->data);
+- else
+- continue;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- format = mutt_str_strdup(buf->data);
+-
+- /* avoid duplicates */
+- tmp = mutt_hash_find(TagFormats, format);
+- if (tmp)
+- {
+- mutt_debug(LL_DEBUG3, "tag format '%s' already registered as '%s'\n", format, tmp);
+- FREE(&tag);
+- FREE(&format);
+- continue;
+- }
+-
+- mutt_hash_insert(TagFormats, format, tag);
+- }
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_tag_transforms - Parse the 'tag-transforms' command - Implements ::command_t
+- */
+-static enum CommandResult parse_tag_transforms(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (!buf || !s)
+- return MUTT_CMD_ERROR;
+-
+- char *tmp = NULL;
+-
+- while (MoreArgs(s))
+- {
+- char *tag = NULL, *transform = NULL;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (buf->data && (*buf->data != '\0'))
+- tag = mutt_str_strdup(buf->data);
+- else
+- continue;
+-
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- transform = mutt_str_strdup(buf->data);
+-
+- /* avoid duplicates */
+- tmp = mutt_hash_find(TagTransforms, tag);
+- if (tmp)
+- {
+- mutt_debug(LL_DEBUG3, "tag transform '%s' already registered as '%s'\n", tag, tmp);
+- FREE(&tag);
+- FREE(&transform);
+- continue;
+- }
+-
+- mutt_hash_insert(TagTransforms, tag, transform);
+- }
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_unalias - Parse the 'unalias' command - Implements ::command_t
+- */
+-static enum CommandResult parse_unalias(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- struct Alias *a = NULL;
+-
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (mutt_str_strcmp("*", buf->data) == 0)
+- {
+- if (CurrentMenu == MENU_ALIAS)
+- {
+- TAILQ_FOREACH(a, &Aliases, entries)
+- {
+- a->del = true;
+- }
+- mutt_menu_set_current_redraw_full();
+- }
+- else
+- mutt_aliaslist_free(&Aliases);
+- break;
+- }
+- else
+- {
+- TAILQ_FOREACH(a, &Aliases, entries)
+- {
+- if (mutt_str_strcasecmp(buf->data, a->name) == 0)
+- {
+- if (CurrentMenu == MENU_ALIAS)
+- {
+- a->del = true;
+- mutt_menu_set_current_redraw_full();
+- }
+- else
+- {
+- TAILQ_REMOVE(&Aliases, a, entries);
+- mutt_alias_free(&a);
+- }
+- break;
+- }
+- }
+- }
+- } while (MoreArgs(s));
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_unalternates - Parse the 'unalternates' command - Implements ::command_t
+- */
+-static enum CommandResult parse_unalternates(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- alternates_clean();
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- mutt_regexlist_remove(&Alternates, buf->data);
+-
+- if ((mutt_str_strcmp(buf->data, "*") != 0) &&
+- (mutt_regexlist_add(&UnAlternates, buf->data, REG_ICASE, err) != 0))
+- {
+- return MUTT_CMD_ERROR;
+- }
+-
+- } while (MoreArgs(s));
+-
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * mutt_attachmatch_free - Free an AttachMatch - Implements ::list_free_t
+- * @param ptr AttachMatch to free
+- *
+- * @note We don't free minor because it is either a pointer into major,
+- * or a static string.
+- */
+-static void mutt_attachmatch_free(struct AttachMatch **ptr)
+-{
+- if (!ptr || !*ptr)
+- return;
+-
+- struct AttachMatch *am = *ptr;
+- regfree(&am->minor_regex);
+- FREE(&am->major);
+- FREE(ptr);
+-}
+-
+-/**
+- * parse_unattachments - Parse the 'unattachments' command - Implements ::command_t
++ * @retval -1 Error
+ */
+-static enum CommandResult parse_unattachments(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
++static int complete_all_nm_tags(const char *pt)
+ {
+- char op;
+- char *p = NULL;
+- struct ListHead *head = NULL;
++ int tag_count_1 = 0;
++ int tag_count_2 = 0;
+
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (!buf->data || (*buf->data == '\0'))
+- {
+- mutt_buffer_strcpy(err, _("unattachments: no disposition"));
+- return MUTT_CMD_WARNING;
+- }
++ NumMatched = 0;
++ mutt_str_strfcpy(UserTyped, pt, sizeof(UserTyped));
++ memset(Matches, 0, MatchesListsize);
++ memset(Completed, 0, sizeof(Completed));
+
+- p = buf->data;
+- op = *p++;
++ nm_db_longrun_init(Context->mailbox, false);
+
+- if (op == '*')
+- {
+- mutt_list_free_type(&AttachAllow, (list_free_t) mutt_attachmatch_free);
+- mutt_list_free_type(&AttachExclude, (list_free_t) mutt_attachmatch_free);
+- mutt_list_free_type(&InlineAllow, (list_free_t) mutt_attachmatch_free);
+- mutt_list_free_type(&InlineExclude, (list_free_t) mutt_attachmatch_free);
+- attachments_clean();
+- return 0;
+- }
++ /* Work out how many tags there are. */
++ if (nm_get_all_tags(Context->mailbox, NULL, &tag_count_1) || (tag_count_1 == 0))
++ goto done;
+
+- if ((op != '+') && (op != '-'))
+- {
+- op = '+';
+- p--;
+- }
+- if (mutt_str_startswith("attachment", p, CASE_IGNORE))
+- {
+- if (op == '+')
+- head = &AttachAllow;
+- else
+- head = &AttachExclude;
+- }
+- else if (mutt_str_startswith("inline", p, CASE_IGNORE))
++ /* Free the old list, if any. */
++ if (nm_tags)
+ {
+- if (op == '+')
+- head = &InlineAllow;
+- else
+- head = &InlineExclude;
++ for (int i = 0; nm_tags[i]; i++)
++ FREE(&nm_tags[i]);
++ FREE(&nm_tags);
+ }
+- else
++ /* Allocate a new list, with sentinel. */
++ nm_tags = mutt_mem_malloc((tag_count_1 + 1) * sizeof(char *));
++ nm_tags[tag_count_1] = NULL;
++
++ /* Get all the tags. */
++ if (nm_get_all_tags(Context->mailbox, nm_tags, &tag_count_2) || (tag_count_1 != tag_count_2))
+ {
+- mutt_buffer_strcpy(err, _("unattachments: invalid disposition"));
+- return MUTT_CMD_ERROR;
++ FREE(&nm_tags);
++ nm_tags = NULL;
++ nm_db_longrun_done(Context->mailbox);
++ return -1;
+ }
+
+- return parse_unattach_list(buf, s, head, err);
+-}
+-
+-/**
+- * parse_unignore - Parse the 'unignore' command - Implements ::command_t
+- */
+-static enum CommandResult parse_unignore(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- do
++ /* Put them into the completion machinery. */
++ for (int num = 0; num < tag_count_1; num++)
+ {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- /* don't add "*" to the unignore list */
+- if (strcmp(buf->data, "*") != 0)
+- add_to_stailq(&UnIgnore, buf->data);
++ candidate(UserTyped, nm_tags[num], Completed, sizeof(Completed));
++ }
+
+- remove_from_stailq(&Ignore, buf->data);
+- } while (MoreArgs(s));
++ matches_ensure_morespace(NumMatched);
++ Matches[NumMatched++] = UserTyped;
+
+- return MUTT_CMD_SUCCESS;
++done:
++ nm_db_longrun_done(Context->mailbox);
++ return 0;
+ }
++#endif
+
+ /**
+- * parse_unlists - Parse the 'unlists' command - Implements ::command_t
++ * execute_commands - Execute a set of NeoMutt commands
++ * @param p List of command strings
++ * @retval 0 Success, all the commands succeeded
++ * @retval -1 Error
+ */
+-static enum CommandResult parse_unlists(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
++static int execute_commands(struct ListHead *p)
+ {
+- mutt_hash_free(&AutoSubscribeCache);
+- do
++ int rc = 0;
++ struct Buffer *err = mutt_buffer_pool_get();
++ struct Buffer *token = mutt_buffer_pool_get();
++
++ struct ListNode *np = NULL;
++ STAILQ_FOREACH(np, p, entries)
+ {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- mutt_regexlist_remove(&SubscribedLists, buf->data);
+- mutt_regexlist_remove(&MailLists, buf->data);
++ enum CommandResult rc2 = mutt_parse_rc_line(np->data, token, err);
++ if (rc2 == MUTT_CMD_ERROR)
++ mutt_error(_("Error in command line: %s"), mutt_b2s(err));
++ else if (rc2 == MUTT_CMD_WARNING)
++ mutt_warning(_("Warning in command line: %s"), mutt_b2s(err));
+
+- if ((mutt_str_strcmp(buf->data, "*") != 0) &&
+- (mutt_regexlist_add(&UnMailLists, buf->data, REG_ICASE, err) != 0))
++ if ((rc2 == MUTT_CMD_ERROR) || (rc2 == MUTT_CMD_WARNING))
+ {
+- return MUTT_CMD_ERROR;
++ mutt_buffer_pool_release(&token);
++ mutt_buffer_pool_release(&err);
++ return -1;
+ }
+- } while (MoreArgs(s));
++ }
++ mutt_buffer_pool_release(&token);
++ mutt_buffer_pool_release(&err);
+
+- return MUTT_CMD_SUCCESS;
++ return rc;
+ }
+
+ /**
+- * parse_unmailboxes - Parse the 'unmailboxes' command - Implements ::command_t
+- *
+- * This is also used by 'unvirtual-mailboxes'
++ * find_cfg - Find a config file
++ * @param home User's home directory
++ * @param xdg_cfg_home XDG home directory
++ * @retval ptr Success, first matching directory
++ * @retval NULL Error, no matching directories
+ */
+-static enum CommandResult parse_unmailboxes(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
++static char *find_cfg(const char *home, const char *xdg_cfg_home)
+ {
+- bool tmp_valid = false;
+- bool clear_all = false;
++ const char *names[] = {
++ "neomuttrc",
++ "muttrc",
++ NULL,
++ };
+
+- while (!clear_all && MoreArgs(s))
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
++ const char *locations[][2] = {
++ { xdg_cfg_home, "neomutt/" },
++ { xdg_cfg_home, "mutt/" },
++ { home, ".neomutt/" },
++ { home, ".mutt/" },
++ { home, "." },
++ { NULL, NULL },
++ };
+
+- if (mutt_str_strcmp(buf->data, "*") == 0)
+- {
+- clear_all = true;
+- tmp_valid = false;
+- }
+- else
+- {
+- mutt_buffer_expand_path(buf);
+- tmp_valid = true;
+- }
++ for (int i = 0; locations[i][0] || locations[i][1]; i++)
++ {
++ if (!locations[i][0])
++ continue;
+
+- struct MailboxList ml = neomutt_mailboxlist_get_all(NeoMutt, MUTT_MAILBOX_ANY);
+- struct MailboxNode *np = NULL;
+- struct MailboxNode *nptmp = NULL;
+- STAILQ_FOREACH_SAFE(np, &ml, entries, nptmp)
++ for (int j = 0; names[j]; j++)
+ {
+- /* Decide whether to delete all normal mailboxes or all virtual */
+- bool virt = ((np->mailbox->magic == MUTT_NOTMUCH) && (data & MUTT_VIRTUAL));
+- bool norm = ((np->mailbox->magic != MUTT_NOTMUCH) && !(data & MUTT_VIRTUAL));
+- bool clear_this = clear_all && (virt || norm);
+-
+- /* Compare against path or desc? Ensure 'buf' is valid */
+- if (!clear_this && tmp_valid)
+- {
+- clear_this =
+- (mutt_str_strcasecmp(mutt_b2s(buf), mailbox_path(np->mailbox)) == 0) ||
+- (mutt_str_strcasecmp(mutt_b2s(buf), np->mailbox->name) == 0);
+- }
++ char buf[256];
+
+- if (clear_this)
+- {
+-#ifdef USE_SIDEBAR
+- mutt_sb_notify_mailbox(np->mailbox, false);
+-#endif
+-#ifdef USE_INOTIFY
+- mutt_monitor_remove(np->mailbox);
+-#endif
+- if (Context && (Context->mailbox == np->mailbox))
+- {
+- np->mailbox->flags |= MB_HIDDEN;
+- }
+- else
+- {
+- account_mailbox_remove(np->mailbox->account, np->mailbox);
+- mailbox_free(&np->mailbox);
+- }
+- }
++ snprintf(buf, sizeof(buf), "%s/%s%s", locations[i][0], locations[i][1], names[j]);
++ if (access(buf, F_OK) == 0)
++ return mutt_str_strdup(buf);
+ }
+- neomutt_mailboxlist_clear(&ml);
+ }
+- return MUTT_CMD_SUCCESS;
++
++ return NULL;
+ }
+
++#ifndef DOMAIN
+ /**
+- * parse_unmy_hdr - Parse the 'unmy_hdr' command - Implements ::command_t
++ * getmailname - Try to retrieve the FQDN from mailname files
++ * @retval ptr Heap allocated string with the FQDN
++ * @retval NULL if no valid mailname file could be read
+ */
+-static enum CommandResult parse_unmy_hdr(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
++static char *getmailname(void)
+ {
+- struct ListNode *np = NULL, *tmp = NULL;
+- size_t l;
++ char *mailname = NULL;
++ static const char *mn_files[] = { "/etc/mailname", "/etc/mail/mailname" };
+
+- do
++ for (size_t i = 0; i < mutt_array_size(mn_files); i++)
+ {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- if (mutt_str_strcmp("*", buf->data) == 0)
+- {
+- mutt_list_free(&UserHeader);
++ FILE *fp = mutt_file_fopen(mn_files[i], "r");
++ if (!fp)
+ continue;
+- }
+-
+- l = mutt_str_strlen(buf->data);
+- if (buf->data[l - 1] == ':')
+- l--;
+-
+- STAILQ_FOREACH_SAFE(np, &UserHeader, entries, tmp)
+- {
+- if ((mutt_str_strncasecmp(buf->data, np->data, l) == 0) && (np->data[l] == ':'))
+- {
+- STAILQ_REMOVE(&UserHeader, np, ListNode, entries);
+- FREE(&np->data);
+- FREE(&np);
+- }
+- }
+- } while (MoreArgs(s));
+- return MUTT_CMD_SUCCESS;
+-}
+
+-/**
+- * parse_unstailq - Parse an unlist command - Implements ::command_t
+- *
+- * This is used by 'unalternative_order', 'unauto_view' and several others.
+- */
+-static enum CommandResult parse_unstailq(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- /* Check for deletion of entire list */
+- if (mutt_str_strcmp(buf->data, "*") == 0)
+- {
+- mutt_list_free((struct ListHead *) data);
++ size_t len = 0;
++ mailname = mutt_file_read_line(NULL, &len, fp, NULL, 0);
++ mutt_file_fclose(&fp);
++ if (mailname && *mailname)
+ break;
+- }
+- remove_from_stailq((struct ListHead *) data, buf->data);
+- } while (MoreArgs(s));
+
+- return MUTT_CMD_SUCCESS;
+-}
+-
+-/**
+- * parse_unsubjectrx_list - Parse the 'unsubjectrx' command - Implements ::command_t
+- */
+-static enum CommandResult parse_unsubjectrx_list(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- enum CommandResult rc;
++ FREE(&mailname);
++ }
+
+- rc = parse_unreplace_list(buf, s, data, err);
+- if (rc == MUTT_CMD_SUCCESS)
+- clear_subject_mods();
+- return rc;
++ return mailname;
+ }
++#endif
+
+ /**
+- * parse_unsubscribe - Parse the 'unsubscribe' command - Implements ::command_t
++ * get_hostname - Find the Fully-Qualified Domain Name
++ * @retval true Success
++ * @retval false Error, failed to find any name
++ *
++ * Use several methods to try to find the Fully-Qualified domain name of this host.
++ * If the user has already configured a hostname, this function will use it.
+ */
+-static enum CommandResult parse_unsubscribe(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
++static bool get_hostname(struct ConfigSet *cs)
+ {
+- mutt_hash_free(&AutoSubscribeCache);
+- do
+- {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+- mutt_regexlist_remove(&SubscribedLists, buf->data);
++ char *str = NULL;
++ struct utsname utsname;
+
+- if ((mutt_str_strcmp(buf->data, "*") != 0) &&
+- (mutt_regexlist_add(&UnSubscribedLists, buf->data, REG_ICASE, err) != 0))
++ if (C_Hostname)
++ {
++ str = C_Hostname;
++ }
++ else
++ {
++ /* The call to uname() shouldn't fail, but if it does, the system is horribly
++ * broken, and the system's networking configuration is in an unreliable
++ * state. We should bail. */
++ if ((uname(&utsname)) == -1)
+ {
+- return MUTT_CMD_ERROR;
++ mutt_perror(_("unable to determine nodename via uname()"));
++ return false; // TEST09: can't test
+ }
+- } while (MoreArgs(s));
+
+- return MUTT_CMD_SUCCESS;
+-}
++ str = utsname.nodename;
++ }
+
+-#ifdef USE_IMAP
+-/**
+- * parse_unsubscribe_from - Parse the 'unsubscribe-from' command - Implements ::command_t
+- *
+- * The 'unsubscribe-from' command allows to unsubscribe from an IMAP-Mailbox.
+- * Patterns are not supported.
+- * Use it as follows: unsubscribe-from =folder
+- */
+-static enum CommandResult parse_unsubscribe_from(struct Buffer *buf, struct Buffer *s,
+- unsigned long data, struct Buffer *err)
+-{
+- if (!buf || !s || !err)
+- return MUTT_CMD_ERROR;
++ /* some systems report the FQDN instead of just the hostname */
++ char *dot = strchr(str, '.');
++ if (dot)
++ ShortHostname = mutt_str_substr_dup(str, dot);
++ else
++ ShortHostname = mutt_str_strdup(str);
+
+- if (MoreArgs(s))
++ if (!C_Hostname)
+ {
+- mutt_extract_token(buf, s, MUTT_TOKEN_NO_FLAGS);
+-
+- if (MoreArgs(s))
+- {
+- mutt_buffer_printf(err, _("%s: too many arguments"), "unsubscribe-from");
+- return MUTT_CMD_WARNING;
+- }
+-
+- if (buf->data && (*buf->data != '\0'))
++ /* now get FQDN. Use configured domain first, DNS next, then uname */
++#ifdef DOMAIN
++ /* we have a compile-time domain name, use that for C_Hostname */
++ C_Hostname =
++ mutt_mem_malloc(mutt_str_strlen(DOMAIN) + mutt_str_strlen(ShortHostname) + 2);
++ sprintf((char *) C_Hostname, "%s.%s", NONULL(ShortHostname), DOMAIN);
++#else
++ C_Hostname = getmailname();
++ if (!C_Hostname)
+ {
+- /* Expand and subscribe */
+- if (imap_subscribe(mutt_expand_path(buf->data, buf->dsize), false) == 0)
++ char buffer[1024];
++ if (getdnsdomainname(buffer, sizeof(buffer)) == 0)
+ {
+- mutt_message(_("Unsubscribed from %s"), buf->data);
+- return MUTT_CMD_SUCCESS;
++ C_Hostname = mutt_mem_malloc(mutt_str_strlen(buffer) +
++ mutt_str_strlen(ShortHostname) + 2);
++ sprintf((char *) C_Hostname, "%s.%s", NONULL(ShortHostname), buffer);
++ }
++ else
++ {
++ /* DNS failed, use the nodename. Whether or not the nodename had a '.'
++ * in it, we can use the nodename as the FQDN. On hosts where DNS is
++ * not being used, e.g. small network that relies on hosts files, a
++ * short host name is all that is required for SMTP to work correctly.
++ * It could be wrong, but we've done the best we can, at this point the
++ * onus is on the user to provide the correct hostname if the nodename
++ * won't work in their network. */
++ C_Hostname = mutt_str_strdup(utsname.nodename);
+ }
+-
+- mutt_buffer_printf(err, _("Could not unsubscribe from %s"), buf->data);
+- return MUTT_CMD_ERROR;
+ }
+-
+- mutt_debug(LL_DEBUG1, "Corrupted buffer");
+- return MUTT_CMD_ERROR;
++#endif
+ }
++ if (C_Hostname)
++ cs_str_initial_set(cs, "hostname", C_Hostname, NULL);
+
+- mutt_buffer_addstr(err, _("No folder specified"));
+- return MUTT_CMD_WARNING;
++ return true;
+ }
+-#endif
+
+ /**
+ * mutt_command_get - Get a Command by its name
+@@ -2797,7 +536,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ cmd.data = mutt_str_strdup(tok->dptr);
+ }
+ *pc = '`';
+- pid = mutt_create_filter(cmd.data, NULL, &fp, NULL);
++ pid = filter_create(cmd.data, NULL, &fp, NULL);
+ if (pid < 0)
+ {
+ mutt_debug(LL_DEBUG1, "unable to fork command: %s\n", cmd.data);
+@@ -2812,7 +551,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ struct Buffer expn = mutt_buffer_make(0);
+ expn.data = mutt_file_read_line(NULL, &expn.dsize, fp, &line, 0);
+ mutt_file_fclose(&fp);
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ /* if we got output, make a new string consisting of the shell output
+ * plus whatever else was left on the original line */
+@@ -2872,7 +611,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ {
+ struct Buffer result;
+ mutt_buffer_init(&result);
+- int rc = cs_str_string_get(Config, var, &result);
++ int rc = cs_subset_str_string_get(NeoMutt->sub, var, &result);
+
+ if (CSR_RESULT(rc) == CSR_SUCCESS)
+ {
+@@ -2908,9 +647,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ */
+ void mutt_opts_free(void)
+ {
+- mutt_list_free(&MuttrcStack);
+-
+- FREE(&Matches);
++ clear_source_stack();
+
+ mutt_aliaslist_free(&Aliases);
+
+@@ -2935,7 +672,6 @@ void mutt_opts_free(void)
+ mutt_list_free(&MailToAllow);
+ mutt_list_free(&MimeLookupList);
+ mutt_list_free(&Muttrc);
+- mutt_list_free(&MuttrcStack);
+ #ifdef USE_SIDEBAR
+ mutt_list_free(&SidebarWhitelist);
+ #endif
+@@ -2977,7 +713,7 @@ HookFlags mutt_get_hook_type(const char *name)
+ {
+ for (const struct Command *c = Commands; c->name; c++)
+ {
+- if (((c->func == mutt_parse_hook) || (c->func == mutt_parse_idxfmt_hook)) &&
++ if (((c->parse == mutt_parse_hook) || (c->parse == mutt_parse_idxfmt_hook)) &&
+ (mutt_str_strcasecmp(c->name, name) == 0))
+ {
+ return c->data;
+@@ -2988,12 +724,13 @@ HookFlags mutt_get_hook_type(const char *name)
+
+ /**
+ * mutt_init - Initialise NeoMutt
++ * @param cs Config Set
+ * @param skip_sys_rc If true, don't read the system config file
+ * @param commands List of config commands to execute
+ * @retval 0 Success
+ * @retval 1 Error
+ */
+-int mutt_init(bool skip_sys_rc, struct ListHead *commands)
++int mutt_init(struct ConfigSet *cs, bool skip_sys_rc, struct ListHead *commands)
+ {
+ char buf[1024];
+ int need_pause = 0;
+@@ -3028,8 +765,8 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ #endif
+ p = buf;
+ }
+- cs_str_initial_set(Config, "spoolfile", p, NULL);
+- cs_str_reset(Config, "spoolfile", NULL);
++ cs_str_initial_set(cs, "spoolfile", p, NULL);
++ cs_str_reset(cs, "spoolfile", NULL);
+
+ p = mutt_str_getenv("REPLYTO");
+ if (p)
+@@ -3051,19 +788,19 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ p = mutt_str_getenv("EMAIL");
+ if (p)
+ {
+- cs_str_initial_set(Config, "from", p, NULL);
+- cs_str_reset(Config, "from", NULL);
++ cs_str_initial_set(cs, "from", p, NULL);
++ cs_str_reset(cs, "from", NULL);
+ }
+
+ /* "$mailcap_path" precedence: config file, environment, code */
+ const char *env_mc = mutt_str_getenv("MAILCAPS");
+ if (env_mc)
+- cs_str_string_set(Config, "mailcap_path", env_mc, NULL);
++ cs_str_string_set(cs, "mailcap_path", env_mc, NULL);
+
+ /* "$tmpdir" precedence: config file, environment, code */
+ const char *env_tmp = mutt_str_getenv("TMPDIR");
+ if (env_tmp)
+- cs_str_string_set(Config, "tmpdir", env_tmp, NULL);
++ cs_str_string_set(cs, "tmpdir", env_tmp, NULL);
+
+ /* "$visual", "$editor" precedence: config file, environment, code */
+ const char *env_ed = mutt_str_getenv("VISUAL");
+@@ -3071,12 +808,12 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ env_ed = mutt_str_getenv("EDITOR");
+ if (env_ed)
+ {
+- cs_str_string_set(Config, "editor", env_ed, NULL);
+- cs_str_string_set(Config, "visual", env_ed, NULL);
++ cs_str_string_set(cs, "editor", env_ed, NULL);
++ cs_str_string_set(cs, "visual", env_ed, NULL);
+ }
+
+ C_Charset = mutt_ch_get_langinfo_charset();
+- cs_str_initial_set(Config, "charset", C_Charset, NULL);
++ cs_str_initial_set(cs, "charset", C_Charset, NULL);
+ mutt_ch_set_charset(C_Charset);
+
+ Matches = mutt_mem_calloc(MatchesListsize, sizeof(char *));
+@@ -3138,7 +875,7 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+
+ if (!STAILQ_EMPTY(&Muttrc))
+ {
+- cs_str_string_set(Config, "alias_file", STAILQ_FIRST(&Muttrc)->data, NULL);
++ cs_str_string_set(cs, "alias_file", STAILQ_FIRST(&Muttrc)->data, NULL);
+ }
+
+ /* Process the global rc file if it exists and the user hasn't explicitly
+@@ -3192,7 +929,7 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ if (execute_commands(commands) != 0)
+ need_pause = 1; // TEST13: neomutt -e broken
+
+- if (!get_hostname())
++ if (!get_hostname(cs))
+ goto done;
+
+ if (!C_Realname)
+@@ -3204,7 +941,7 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ C_Realname = mutt_str_strdup(mutt_gecos_name(name, sizeof(name), pw));
+ }
+ }
+- cs_str_initial_set(Config, "realname", C_Realname, NULL);
++ cs_str_initial_set(cs, "realname", C_Realname, NULL);
+
+ if (need_pause && !OptNoCurses)
+ {
+@@ -3225,7 +962,7 @@ int mutt_init(bool skip_sys_rc, struct ListHead *commands)
+ struct MailboxList ml = neomutt_mailboxlist_get_all(NeoMutt, MUTT_NOTMUCH);
+ struct MailboxNode *mp = STAILQ_FIRST(&ml);
+ if (mp)
+- cs_str_string_set(Config, "spoolfile", mailbox_path(mp->mailbox), NULL);
++ cs_str_string_set(cs, "spoolfile", mailbox_path(mp->mailbox), NULL);
+ neomutt_mailboxlist_clear(&ml);
+ }
+ #endif
+@@ -3278,12 +1015,12 @@ enum CommandResult mutt_parse_rc_line(/* const */ char *line,
+ {
+ if (mutt_str_strcmp(token->data, Commands[i].name) == 0)
+ {
+- rc = Commands[i].func(token, &expn, Commands[i].data, err);
++ rc = Commands[i].parse(token, &expn, Commands[i].data, err);
+ if (rc != MUTT_CMD_SUCCESS)
+ { /* -1 Error, +1 Finish */
+ goto finish; /* Propagate return code */
+ }
+- notify_send(NeoMutt->notify, NT_COMMAND, i, 0);
++ notify_send(NeoMutt->notify, NT_COMMAND, i, (void *) &Commands[i]);
+ break; /* Continue with next command */
+ }
+ }
+@@ -3316,14 +1053,14 @@ int mutt_query_variables(struct ListHead *queries)
+ {
+ mutt_buffer_reset(&value);
+
+- struct HashElem *he = cs_get_elem(Config, np->data);
++ struct HashElem *he = cs_subset_lookup(NeoMutt->sub, np->data);
+ if (!he)
+ {
+ rc = 1;
+ continue;
+ }
+
+- int rv = cs_he_string_get(Config, he, &value);
++ int rv = cs_subset_he_string_get(NeoMutt->sub, he, &value);
+ if (CSR_RESULT(rv) != CSR_SUCCESS)
+ {
+ rc = 1;
+@@ -3331,7 +1068,7 @@ int mutt_query_variables(struct ListHead *queries)
+ }
+
+ int type = DTYPE(he->type);
+- if (IS_PATH(he) && !(he->type & DT_MAILBOX))
++ if (type == DT_PATH)
+ mutt_pretty_mailbox(value.data, value.dsize);
+
+ if ((type != DT_BOOL) && (type != DT_NUMBER) && (type != DT_LONG) && (type != DT_QUAD))
+@@ -3341,7 +1078,7 @@ int mutt_query_variables(struct ListHead *queries)
+ mutt_buffer_strcpy(&value, tmp.data);
+ }
+
+- dump_config_neo(Config, he, &value, NULL, CS_DUMP_NO_FLAGS, stdout);
++ dump_config_neo(NeoMutt->sub->cs, he, &value, NULL, CS_DUMP_NO_FLAGS, stdout);
+ }
+
+ mutt_buffer_dealloc(&value);
+@@ -3755,7 +1492,7 @@ int mutt_var_value_complete(char *buf, size_t buflen, int pos)
+
+ var[vlen - 1] = '\0';
+
+- struct HashElem *he = cs_get_elem(Config, var);
++ struct HashElem *he = cs_subset_lookup(NeoMutt->sub, var);
+ if (!he)
+ {
+ myvarval = myvar_get(var);
+@@ -3773,7 +1510,7 @@ int mutt_var_value_complete(char *buf, size_t buflen, int pos)
+ {
+ struct Buffer value = mutt_buffer_make(256);
+ struct Buffer pretty = mutt_buffer_make(256);
+- int rc = cs_he_string_get(Config, he, &value);
++ int rc = cs_subset_he_string_get(NeoMutt->sub, he, &value);
+ if (CSR_RESULT(rc) == CSR_SUCCESS)
+ {
+ pretty_var(value.data, &pretty);
+@@ -3792,6 +1529,7 @@ int mutt_var_value_complete(char *buf, size_t buflen, int pos)
+
+ /**
+ * init_config - Initialise the config system
++ * @param size Size for Config Hash Table
+ * @retval ptr New Config Set
+ */
+ struct ConfigSet *init_config(size_t size)
+@@ -3804,6 +1542,7 @@ struct ConfigSet *init_config(size_t size)
+ long_init(cs);
+ mbtable_init(cs);
+ number_init(cs);
++ path_init(cs);
+ quad_init(cs);
+ regex_init(cs);
+ slist_init(cs);
+@@ -3821,7 +1560,7 @@ struct ConfigSet *init_config(size_t size)
+ }
+
+ /**
+- * charset_validator - Validate the "charset" config variable - Implements ::cs_validator()
++ * charset_validator - Validate the "charset" config variable - Implements ConfigDef::validator()
+ */
+ int charset_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+@@ -3861,7 +1600,7 @@ int charset_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+
+ #ifdef USE_HCACHE
+ /**
+- * hcache_validator - Validate the "header_cache_backend" config variable - Implements ::cs_validator()
++ * hcache_validator - Validate the "header_cache_backend" config variable - Implements ConfigDef::validator()
+ */
+ int hcache_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+@@ -3877,10 +1616,30 @@ int hcache_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ mutt_buffer_printf(err, _("Invalid value for option %s: %s"), cdef->name, str);
+ return CSR_ERR_INVALID;
+ }
+-#endif
++
++#ifdef USE_HCACHE_COMPRESSION
++/**
++ * compress_validator - Validate the "header_cache_compress_method" config variable - Implements ConfigDef::validator()
++ */
++int compress_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
++ intptr_t value, struct Buffer *err)
++{
++ if (value == 0)
++ return CSR_SUCCESS;
++
++ const char *str = (const char *) value;
++
++ if (mutt_hcache_is_valid_compression(str))
++ return CSR_SUCCESS;
++
++ mutt_buffer_printf(err, _("Invalid value for option %s: %s"), cdef->name, str);
++ return CSR_ERR_INVALID;
++}
++#endif /* USE_HCACHE_COMPRESSION */
++#endif /* USE_HCACHE */
+
+ /**
+- * pager_validator - Check for config variables that can't be set from the pager - Implements ::cs_validator()
++ * pager_validator - Check for config variables that can't be set from the pager - Implements ConfigDef::validator()
+ */
+ int pager_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+@@ -3896,7 +1655,7 @@ int pager_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ }
+
+ /**
+- * multipart_validator - Validate the "show_multipart_alternative" config variable - Implements ::cs_validator()
++ * multipart_validator - Validate the "show_multipart_alternative" config variable - Implements ConfigDef::validator()
+ */
+ int multipart_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+@@ -3914,7 +1673,7 @@ int multipart_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef
+ }
+
+ /**
+- * reply_validator - Validate the "reply_regex" config variable - Implements ::cs_validator()
++ * reply_validator - Validate the "reply_regex" config variable - Implements ConfigDef::validator()
+ */
+ int reply_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+@@ -3931,7 +1690,7 @@ int reply_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ }
+
+ /**
+- * wrapheaders_validator - Validate the "wrap_headers" config variable - Implements ::cs_validator()
++ * wrapheaders_validator - Validate the "wrap_headers" config variable - Implements ConfigDef::validator()
+ */
+ int wrapheaders_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ intptr_t value, struct Buffer *err)
+diff --git a/init.h b/init.h
+index 188bc73d4..c74e1b782 100644
+--- a/init.h
++++ b/init.h
+@@ -1,6 +1,6 @@
+ /**
+ * @file
+- * Definitions of user variables, sort methods and commands
++ * Config/command parsing
+ *
+ * @authors
+ * Copyright (C) 1996-2002,2007,2010,2012-2013,2016 Michael R. Elkins <me@mutt.org>
+@@ -25,105 +25,21 @@
+ #define MUTT_INIT_H
+
+ #include "config.h"
+-#ifdef _MAKEDOC
+-#include "config.h"
+-#include "doc/makedoc_defs.h"
+-#else
+ #include <stddef.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
+-#include "address/lib.h"
+ #include "config/lib.h"
+-#include "email/lib.h"
+-#include "core/lib.h"
+-#include "conn/conn.h"
+ #include "mutt.h"
+-#include "addrbook.h"
+-#include "bcache.h"
+-#include "browser.h"
+-#include "color.h"
+-#include "commands.h"
+-#include "compose.h"
+-#include "curs_lib.h"
+-#include "edit.h"
+-#include "globals.h"
+-#include "handler.h"
+-#include "hdrline.h"
+ #include "hook.h"
+-#include "imap/imap.h"
+-#include "index.h"
+-#include "keymap.h"
+-#include "maildir/lib.h"
+-#include "main.h"
+-#include "mutt_account.h"
+ #include "mutt_commands.h"
+-#include "mutt_logging.h"
+-#include "mutt_mailbox.h"
+-#include "mutt_menu.h"
+-#include "mutt_thread.h"
+-#include "muttlib.h"
+-#include "mx.h"
+-#include "ncrypt/ncrypt.h"
+-#include "nntp/nntp.h"
+-#include "pager.h"
+-#include "pattern.h"
+-#include "pop/pop.h"
+-#include "progress.h"
+-#include "query.h"
+-#include "recvattach.h"
+-#include "recvcmd.h"
+-#include "mailcap.h"
+-#include "rfc3676.h"
+-#include "score.h"
+-#include "send.h"
+-#include "sendlib.h"
+-#include "sidebar.h"
+-#include "smtp.h"
+-#include "sort.h"
+-#include "status.h"
+-#ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
+-#endif
+-#ifdef USE_HCACHE
+-#include "hcache/hcache.h"
+-#endif
+-#ifdef MIXMASTER
+-#include "remailer.h"
+-#endif
+-#ifdef USE_LUA
+-#include "mutt_lua.h"
+-#endif
+-#endif
+-
+-// clang-format off
+-#ifndef _MAKEDOC
+-/**
+- * enum MuttSetCommand - Flags for parse_set()
+- */
+-enum MuttSetCommand
+-{
+- MUTT_SET_SET, ///< default is to set all vars
+- MUTT_SET_INV, ///< default is to invert all vars
+- MUTT_SET_UNSET, ///< default is to unset all vars
+- MUTT_SET_RESET, ///< default is to reset all vars to default
+-};
+
+-/* parameter to parse_mailboxes */
+-#define MUTT_NAMED (1 << 0)
+-#define MUTT_VIRTUAL (1 << 1)
+-
+-#define IP (intptr_t)
+-#endif /* _MAKEDOC */
+-
+-#ifndef ISPELL
+-#define ISPELL "ispell"
+-#endif
+-
+-/* This option is deprecated */
+-bool C_IgnoreLinearWhiteSpace = false;
++struct Buffer;
++struct ListHead;
+
+ int charset_validator (const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
++#ifdef USE_HCACHE_COMPRESSION
++int compress_validator (const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
++#endif
+ #ifdef USE_HCACHE
+ int hcache_validator (const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+ #endif
+@@ -132,4988 +48,20 @@ int pager_validator (const struct ConfigSet *cs, const struct ConfigDef *cd
+ int reply_validator (const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+ int wrapheaders_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef, intptr_t value, struct Buffer *err);
+
+-struct ConfigDef MuttVars[] = {
+- /*++*/
+-
+- { "abort_noattach", DT_QUAD, &C_AbortNoattach, MUTT_NO },
+- /*
+- ** .pp
+- ** If set to \fIyes\fP, when composing messages containing the regular
+- ** expression specified by $$abort_noattach_regex and no attachments are
+- ** given, composition will be aborted. If set to \fIno\fP, composing messages
+- ** as such will never be aborted.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set abort_noattach_regex = "\\<attach(|ed|ments?)\\>"
+- ** .te
+- */
+- { "abort_noattach_regex", DT_REGEX, &C_AbortNoattachRegex, IP "\\<(attach|attached|attachments?)\\>" },
+- /*
+- ** .pp
+- ** Specifies a regular expression to match against the body of the message, to
+- ** determine if an attachment was mentioned but mistakenly forgotten. If it
+- ** matches, $$abort_noattach will be consulted to determine if message sending
+- ** will be aborted.
+- ** .pp
+- ** Like other regular expressions in NeoMutt, the search is case sensitive
+- ** if the pattern contains at least one upper case letter, and case
+- ** insensitive otherwise.
+- */
+- { "abort_nosubject", DT_QUAD, &C_AbortNosubject, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** If set to \fIyes\fP, when composing messages and no subject is given
+- ** at the subject prompt, composition will be aborted. If set to
+- ** \fIno\fP, composing messages with no subject given at the subject
+- ** prompt will never be aborted.
+- */
+- { "abort_unmodified", DT_QUAD, &C_AbortUnmodified, MUTT_YES },
+- /*
+- ** .pp
+- ** If set to \fIyes\fP, composition will automatically abort after
+- ** editing the message body if no changes are made to the file (this
+- ** check only happens after the \fIfirst\fP edit of the file). When set
+- ** to \fIno\fP, composition will never be aborted.
+- */
+- { "alias_file", DT_STRING|DT_PATH, &C_AliasFile, IP "~/.neomuttrc" },
+- /*
+- ** .pp
+- ** The default file in which to save aliases created by the
+- ** \fC$<create-alias>\fP function. Entries added to this file are
+- ** encoded in the character set specified by $$config_charset if it
+- ** is \fIset\fP or the current character set otherwise.
+- ** .pp
+- ** \fBNote:\fP NeoMutt will not automatically source this file; you must
+- ** explicitly use the "$source" command for it to be executed in case
+- ** this option points to a dedicated alias file.
+- ** .pp
+- ** The default for this option is the currently used neomuttrc file, or
+- ** "~/.neomuttrc" if no user neomuttrc was found.
+- */
+- { "alias_format", DT_STRING|DT_NOT_EMPTY, &C_AliasFormat, IP "%4n %2f %t %-10a %r" },
+- /*
+- ** .pp
+- ** Specifies the format of the data displayed for the "$alias" menu. The
+- ** following \fCprintf(3)\fP-style sequences are available:
+- ** .dl
+- ** .dt %a .dd Alias name
+- ** .dt %f .dd Flags - currently, a "d" for an alias marked for deletion
+- ** .dt %n .dd Index number
+- ** .dt %r .dd Address which alias expands to
+- ** .dt %t .dd Character which indicates if the alias is tagged for inclusion
+- ** .de
+- */
+- { "allow_8bit", DT_BOOL, &C_Allow8bit, true },
+- /*
+- ** .pp
+- ** Controls whether 8-bit data is converted to 7-bit using either Quoted-
+- ** Printable or Base64 encoding when sending mail.
+- */
+- { "allow_ansi", DT_BOOL, &C_AllowAnsi, false },
+- /*
+- ** .pp
+- ** Controls whether ANSI color codes in messages (and color tags in
+- ** rich text messages) are to be interpreted.
+- ** Messages containing these codes are rare, but if this option is \fIset\fP,
+- ** their text will be colored accordingly. Note that this may override
+- ** your color choices, and even present a security problem, since a
+- ** message could include a line like
+- ** .ts
+- ** [-- PGP output follows ...
+- ** .te
+- ** .pp
+- ** and give it the same color as your attachment color (see also
+- ** $$crypt_timestamp).
+- */
+- { "arrow_cursor", DT_BOOL|R_MENU, &C_ArrowCursor, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, an arrow ("->") will be used to indicate the current entry
+- ** in menus instead of highlighting the whole line. On slow network or modem
+- ** links this will make response faster because there is less that has to
+- ** be redrawn on the screen when moving to the next or previous entries
+- ** in the menu.
+- */
+- { "ascii_chars", DT_BOOL|R_INDEX|R_PAGER, &C_AsciiChars, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will use plain ASCII characters when displaying thread
+- ** and attachment trees, instead of the default \fIACS\fP characters.
+- */
+-#ifdef USE_NNTP
+- { "ask_follow_up", DT_BOOL, &C_AskFollowUp, false },
+- /*
+- ** .pp
+- ** If set, NeoMutt will prompt you for follow-up groups before editing
+- ** the body of an outgoing message.
+- */
+- { "ask_x_comment_to", DT_BOOL, &C_AskXCommentTo, false },
+- /*
+- ** .pp
+- ** If set, NeoMutt will prompt you for x-comment-to field before editing
+- ** the body of an outgoing message.
+- */
+-#endif
+- { "askbcc", DT_BOOL, &C_Askbcc, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will prompt you for blind-carbon-copy (Bcc) recipients
+- ** before editing an outgoing message.
+- */
+- { "askcc", DT_BOOL, &C_Askcc, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will prompt you for carbon-copy (Cc) recipients before
+- ** editing the body of an outgoing message.
+- */
+- { "assumed_charset", DT_STRING, &C_AssumedCharset, 0, 0, charset_validator },
+- /*
+- ** .pp
+- ** This variable is a colon-separated list of character encoding
+- ** schemes for messages without character encoding indication.
+- ** Header field values and message body content without character encoding
+- ** indication would be assumed that they are written in one of this list.
+- ** By default, all the header fields and message body without any charset
+- ** indication are assumed to be in "us-ascii".
+- ** .pp
+- ** For example, Japanese users might prefer this:
+- ** .ts
+- ** set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+- ** .te
+- ** .pp
+- ** However, only the first content is valid for the message body.
+- */
+- { "attach_charset", DT_STRING, &C_AttachCharset, 0, 0, charset_validator },
+- /*
+- ** .pp
+- ** This variable is a colon-separated list of character encoding
+- ** schemes for text file attachments. NeoMutt uses this setting to guess
+- ** which encoding files being attached are encoded in to convert them to
+- ** a proper character set given in $$send_charset.
+- ** .pp
+- ** If \fIunset\fP, the value of $$charset will be used instead.
+- ** For example, the following configuration would work for Japanese
+- ** text handling:
+- ** .ts
+- ** set attach_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+- ** .te
+- ** .pp
+- ** Note: for Japanese users, "iso-2022-*" must be put at the head
+- ** of the value as shown above if included.
+- */
+- { "attach_format", DT_STRING|DT_NOT_EMPTY, &C_AttachFormat, IP "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " },
+- /*
+- ** .pp
+- ** This variable describes the format of the "attachment" menu. The
+- ** following \fCprintf(3)\fP-style sequences are understood:
+- ** .dl
+- ** .dt %C .dd Charset
+- ** .dt %c .dd Requires charset conversion ("n" or "c")
+- ** .dt %D .dd Deleted flag
+- ** .dt %d .dd Description (if none, falls back to %F)
+- ** .dt %e .dd MIME content-transfer-encoding
+- ** .dt %f .dd Filename
+- ** .dt %F .dd Filename in content-disposition header (if none, falls back to %f)
+- ** .dt %I .dd Disposition ("I" for inline, "A" for attachment)
+- ** .dt %m .dd Major MIME type
+- ** .dt %M .dd MIME subtype
+- ** .dt %n .dd Attachment number
+- ** .dt %Q .dd "Q", if MIME part qualifies for attachment counting
+- ** .dt %s .dd Size (see $formatstrings-size)
+- ** .dt %T .dd Graphic tree characters
+- ** .dt %t .dd Tagged flag
+- ** .dt %u .dd Unlink (=to delete) flag
+- ** .dt %X .dd Number of qualifying MIME parts in this part and its children
+- ** (please see the "$attachments" section for possible speed effects)
+- ** .dt %>X .dd Right justify the rest of the string and pad with character "X"
+- ** .dt %|X .dd Pad to the end of the line with character "X"
+- ** .dt %*X .dd Soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** For an explanation of "soft-fill", see the $$index_format documentation.
+- */
+- { "attach_save_dir", DT_STRING|DT_PATH, &C_AttachSaveDir, IP "./" },
+- /*
+- ** .pp
+- ** The directory where attachments are saved.
+- */
+- { "attach_save_without_prompting", DT_BOOL, &C_AttachSaveWithoutPrompting, false },
+- /*
+- ** .pp
+- ** This variable, when set to true, will cause attachments to be saved to
+- ** the 'attach_save_dir' location without prompting the user for the filename.
+- ** .pp
+- */
+- { "attach_sep", DT_STRING, &C_AttachSep, IP "\n" },
+- /*
+- ** .pp
+- ** The separator to add between attachments when operating (saving,
+- ** printing, piping, etc) on a list of tagged attachments.
+- */
+- { "attach_split", DT_BOOL, &C_AttachSplit, true },
+- /*
+- ** .pp
+- ** If this variable is \fIunset\fP, when operating (saving, printing, piping,
+- ** etc) on a list of tagged attachments, NeoMutt will concatenate the
+- ** attachments and will operate on them as a single attachment. The
+- ** $$attach_sep separator is added after each attachment. When \fIset\fP,
+- ** NeoMutt will operate on the attachments one by one.
+- */
+- { "attribution", DT_STRING, &C_Attribution, IP "On %d, %n wrote:" },
+- /*
+- ** .pp
+- ** This is the string that will precede a message which has been included
+- ** in a reply. For a full listing of defined \fCprintf(3)\fP-like sequences see
+- ** the section on $$index_format.
+- */
+- { "attribution_locale", DT_STRING, &C_AttributionLocale, 0 },
+- /*
+- ** .pp
+- ** The locale used by \fCstrftime(3)\fP to format dates in the
+- ** $attribution string. Legal values are the strings your system
+- ** accepts for the locale environment variable \fC$$$LC_TIME\fP.
+- ** .pp
+- ** This variable is to allow the attribution date format to be
+- ** customized by recipient or folder using hooks. By default, NeoMutt
+- ** will use your locale environment, so there is no need to set
+- ** this except to override that default.
+- */
+- { "auto_subscribe", DT_BOOL, &C_AutoSubscribe, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt assumes the presence of a List-Post header
+- ** means the recipient is subscribed to the list. Unless the mailing list
+- ** is in the "unsubscribe" or "unlist" lists, it will be added
+- ** to the "$subscribe" list. Parsing and checking these things slows
+- ** header reading down, so this option is disabled by default.
+- */
+- { "auto_tag", DT_BOOL, &C_AutoTag, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, functions in the \fIindex\fP menu which affect a message
+- ** will be applied to all tagged messages (if there are any). When
+- ** unset, you must first use the \fC<tag-prefix>\fP function (bound to ";"
+- ** by default) to make the next function apply to all tagged messages.
+- */
+-#ifdef USE_AUTOCRYPT
+- { "autocrypt", DT_BOOL, &C_Autocrypt, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, enables autocrypt, which provides
+- ** passive encryption protection with keys exchanged via headers.
+- ** See ``$autocryptdoc'' for more details.
+- ** (Autocrypt only)
+- */
+- { "autocrypt_acct_format", DT_STRING|R_MENU, &C_AutocryptAcctFormat, IP "%4n %-30a %20p %10s" },
+- /*
+- ** .pp
+- ** This variable describes the format of the ``autocrypt account'' menu.
+- ** The following \fCprintf(3)\fP-style sequences are understood
+- ** .dl
+- ** .dt %a .dd email address
+- ** .dt %k .dd gpg keyid
+- ** .dt %n .dd current entry number
+- ** .dt %p .dd prefer-encrypt flag
+- ** .dt %s .dd status flag (active/inactive)
+- ** .de
+- ** .pp
+- ** (Autocrypt only)
+- */
+- { "autocrypt_dir", DT_STRING|DT_PATH, &C_AutocryptDir, IP "~/.mutt/autocrypt" },
+- /*
+- ** .pp
+- ** This variable sets where autocrypt files are stored, including the GPG
+- ** keyring and sqlite database. See ``$autocryptdoc'' for more details.
+- ** (Autocrypt only)
+- */
+- { "autocrypt_reply", DT_BOOL, &C_AutocryptReply, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, replying to an autocrypt email automatically
+- ** enables autocrypt in the reply. You may want to unset this if you're using
+- ** the same key for autocrypt as normal web-of-trust, so that autocrypt
+- ** isn't forced on for all encrypted replies.
+- ** (Autocrypt only)
+- */
+-#endif
+- { "autoedit", DT_BOOL, &C_Autoedit, false },
+- /*
+- ** .pp
+- ** When \fIset\fP along with $$edit_headers, NeoMutt will skip the initial
+- ** send-menu (prompting for subject and recipients) and allow you to
+- ** immediately begin editing the body of your
+- ** message. The send-menu may still be accessed once you have finished
+- ** editing the body of your message.
+- ** .pp
+- ** \fBNote:\fP when this option is \fIset\fP, you can't use send-hooks that depend
+- ** on the recipients when composing a new (non-reply) message, as the initial
+- ** list of recipients is empty.
+- ** .pp
+- ** Also see $$fast_reply.
+- */
+- { "beep", DT_BOOL, &C_Beep, true },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will beep when an error occurs.
+- */
+- { "beep_new", DT_BOOL, &C_BeepNew, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will beep whenever it prints a message
+- ** notifying you of new mail. This is independent of the setting of the
+- ** $$beep variable.
+- */
+- { "bounce", DT_QUAD, &C_Bounce, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether you will be asked to confirm bouncing messages.
+- ** If set to \fIyes\fP you don't get asked if you want to bounce a
+- ** message. Setting this variable to \fIno\fP is not generally useful,
+- ** and thus not recommended, because you are unable to bounce messages.
+- */
+- { "bounce_delivered", DT_BOOL, &C_BounceDelivered, true },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will include Delivered-To headers when
+- ** bouncing messages. Postfix users may wish to \fIunset\fP this variable.
+- */
+- { "braille_friendly", DT_BOOL, &C_BrailleFriendly, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will place the cursor at the beginning
+- ** of the current line in menus, even when the $$arrow_cursor variable
+- ** is \fIunset\fP, making it easier for blind persons using Braille displays to
+- ** follow these menus. The option is \fIunset\fP by default because many
+- ** visual terminals don't permit making the cursor invisible.
+- */
+- { "browser_abbreviate_mailboxes", DT_BOOL, &C_BrowserAbbreviateMailboxes, true },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will abbreviate mailbox
+- ** names in the browser mailbox list, using '~' and '='
+- ** shortcuts.
+- ** .pp
+- ** The default \fC"alpha"\fP setting of $$sort_browser uses
+- ** locale-based sorting (using \fCstrcoll(3)\fP), which ignores some
+- ** punctuation. This can lead to some situations where the order
+- ** doesn't make intuitive sense. In those cases, it may be
+- ** desirable to \fIunset\fP this variable.
+- */
+-#ifdef USE_NNTP
+- { "catchup_newsgroup", DT_QUAD, &C_CatchupNewsgroup, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** If this variable is \fIset\fP, NeoMutt will mark all articles in newsgroup
+- ** as read when you quit the newsgroup (catchup newsgroup).
+- */
+-#endif
+-#ifdef USE_SSL
+- { "certificate_file", DT_STRING|DT_PATH, &C_CertificateFile, IP "~/.mutt_certificates" },
+- /*
+- ** .pp
+- ** This variable specifies the file where the certificates you trust
+- ** are saved. When an unknown certificate is encountered, you are asked
+- ** if you accept it or not. If you accept it, the certificate can also
+- ** be saved in this file and further connections are automatically
+- ** accepted.
+- ** .pp
+- ** You can also manually add CA certificates in this file. Any server
+- ** certificate that is signed with one of these CA certificates is
+- ** also automatically accepted.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set certificate_file=~/.neomutt/certificates
+- ** .te
+- */
+-#endif
+- { "change_folder_next", DT_BOOL, &C_ChangeFolderNext, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, the \fC<change-folder>\fP function
+- ** mailbox suggestion will start at the next folder in your "$mailboxes"
+- ** list, instead of starting at the first folder in the list.
+- */
+- { "charset", DT_STRING|DT_NOT_EMPTY, &C_Charset, 0, 0, charset_validator },
+- /*
+- ** .pp
+- ** Character set your terminal uses to display and enter textual data.
+- ** It is also the fallback for $$send_charset.
+- ** .pp
+- ** Upon startup NeoMutt tries to derive this value from environment variables
+- ** such as \fC$$$LC_CTYPE\fP or \fC$$$LANG\fP.
+- ** .pp
+- ** \fBNote:\fP It should only be set in case NeoMutt isn't able to determine the
+- ** character set used correctly.
+- */
+- { "check_mbox_size", DT_BOOL, &C_CheckMboxSize, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will use file size attribute instead of
+- ** access time when checking for new mail in mbox and mmdf folders.
+- ** .pp
+- ** This variable is \fIunset\fP by default and should only be enabled when
+- ** new mail detection for these folder types is unreliable or doesn't work.
+- ** .pp
+- ** Note that enabling this variable should happen before any "$mailboxes"
+- ** directives occur in configuration files regarding mbox or mmdf folders
+- ** because NeoMutt needs to determine the initial new mail status of such a
+- ** mailbox by performing a fast mailbox scan when it is defined.
+- ** Afterwards the new mail status is tracked by file size changes.
+- */
+- { "check_new", DT_BOOL, &C_CheckNew, true },
+- /*
+- ** .pp
+- ** \fBNote:\fP this option only affects \fImaildir\fP and \fIMH\fP style
+- ** mailboxes.
+- ** .pp
+- ** When \fIset\fP, NeoMutt will check for new mail delivered while the
+- ** mailbox is open. Especially with MH mailboxes, this operation can
+- ** take quite some time since it involves scanning the directory and
+- ** checking each file to see if it has already been looked at. If
+- ** this variable is \fIunset\fP, no check for new mail is performed
+- ** while the mailbox is open.
+- */
+- { "collapse_all", DT_BOOL, &C_CollapseAll, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will collapse all threads when entering a folder.
+- */
+- { "collapse_flagged", DT_BOOL, &C_CollapseFlagged, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
+- ** flagged messages.
+- */
+- { "collapse_unread", DT_BOOL, &C_CollapseUnread, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
+- ** unread messages.
+- */
+- { "compose_format", DT_STRING|R_MENU, &C_ComposeFormat, IP "-- NeoMutt: Compose [Approx. msg size: %l Atts: %a]%>-" },
+- /*
+- ** .pp
+- ** Controls the format of the status line displayed in the "compose"
+- ** menu. This string is similar to $$status_format, but has its own
+- ** set of \fCprintf(3)\fP-like sequences:
+- ** .dl
+- ** .dt %a .dd Total number of attachments
+- ** .dt %h .dd Local hostname
+- ** .dt %l .dd Approximate size (in bytes) of the current message (see $formatstrings-size)
+- ** .dt %v .dd NeoMutt version string
+- ** .de
+- ** .pp
+- ** See the text describing the $$status_format option for more
+- ** information on how to set $$compose_format.
+- */
+- { "config_charset", DT_STRING, &C_ConfigCharset, 0, 0, charset_validator },
+- /*
+- ** .pp
+- ** When defined, NeoMutt will recode commands in rc files from this
+- ** encoding to the current character set as specified by $$charset
+- ** and aliases written to $$alias_file from the current character set.
+- ** .pp
+- ** Please note that if setting $$charset it must be done before
+- ** setting $$config_charset.
+- ** .pp
+- ** Recoding should be avoided as it may render unconvertable
+- ** characters as question marks which can lead to undesired
+- ** side effects (for example in regular expressions).
+- */
+- { "confirmappend", DT_BOOL, &C_Confirmappend, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will prompt for confirmation when appending messages to
+- ** an existing mailbox.
+- */
+- { "confirmcreate", DT_BOOL, &C_Confirmcreate, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will prompt for confirmation when saving messages to a
+- ** mailbox which does not yet exist before creating it.
+- */
+- { "connect_timeout", DT_NUMBER, &C_ConnectTimeout, 30 },
+- /*
+- ** .pp
+- ** Causes NeoMutt to timeout a network connection (for IMAP, POP or SMTP) after this
+- ** many seconds if the connection is not able to be established. A negative
+- ** value causes NeoMutt to wait indefinitely for the connection attempt to succeed.
+- */
+- { "content_type", DT_STRING, &C_ContentType, IP "text/plain" },
+- /*
+- ** .pp
+- ** Sets the default Content-Type for the body of newly composed messages.
+- */
+- { "copy", DT_QUAD, &C_Copy, MUTT_YES },
+- /*
+- ** .pp
+- ** This variable controls whether or not copies of your outgoing messages
+- ** will be saved for later references. Also see $$record,
+- ** $$save_name, $$force_name and "$fcc-hook".
+- */
+- { "crypt_autoencrypt", DT_BOOL, &C_CryptAutoencrypt, false },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to always attempt to PGP
+- ** encrypt outgoing messages. This is probably only useful in
+- ** connection to the "$send-hook" command. It can be overridden
+- ** by use of the pgp menu, when encryption is not required or
+- ** signing is requested as well. If $$smime_is_default is \fIset\fP,
+- ** then OpenSSL is used instead to create S/MIME messages and
+- ** settings can be overridden by use of the smime menu instead.
+- ** (Crypto only)
+- */
+- { "crypt_autopgp", DT_BOOL, &C_CryptAutopgp, true },
+- /*
+- ** .pp
+- ** This variable controls whether or not NeoMutt may automatically enable
+- ** PGP encryption/signing for messages. See also $$crypt_autoencrypt,
+- ** $$crypt_replyencrypt,
+- ** $$crypt_autosign, $$crypt_replysign and $$smime_is_default.
+- */
+- { "crypt_autosign", DT_BOOL, &C_CryptAutosign, false },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to always attempt to
+- ** cryptographically sign outgoing messages. This can be overridden
+- ** by use of the pgp menu, when signing is not required or
+- ** encryption is requested as well. If $$smime_is_default is \fIset\fP,
+- ** then OpenSSL is used instead to create S/MIME messages and settings can
+- ** be overridden by use of the smime menu instead of the pgp menu.
+- ** (Crypto only)
+- */
+- { "crypt_autosmime", DT_BOOL, &C_CryptAutosmime, true },
+- /*
+- ** .pp
+- ** This variable controls whether or not NeoMutt may automatically enable
+- ** S/MIME encryption/signing for messages. See also $$crypt_autoencrypt,
+- ** $$crypt_replyencrypt,
+- ** $$crypt_autosign, $$crypt_replysign and $$smime_is_default.
+- */
+- { "crypt_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_CryptChars, IP "SPsK " },
+- /*
+- ** .pp
+- ** Controls the characters used in cryptography flags.
+- ** .dl
+- ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
+- ** .dt 1 .dd S .dd The mail is signed, and the signature is successfully verified.
+- ** .dt 2 .dd P .dd The mail is PGP encrypted.
+- ** .dt 3 .dd s .dd The mail is signed.
+- ** .dt 4 .dd K .dd The mail contains a PGP public key.
+- ** .dt 5 .dd <space> .dd The mail has no crypto info.
+- ** .de
+- */
+- { "crypt_confirmhook", DT_BOOL, &C_CryptConfirmhook, true },
+- /*
+- ** .pp
+- ** If set, then you will be prompted for confirmation of keys when using
+- ** the \fIcrypt-hook\fP command. If unset, no such confirmation prompt will
+- ** be presented. This is generally considered unsafe, especially where
+- ** typos are concerned.
+- */
+- { "crypt_opportunistic_encrypt", DT_BOOL, &C_CryptOpportunisticEncrypt, false },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to automatically enable and
+- ** disable encryption, based on whether all message recipient keys
+- ** can be located by NeoMutt.
+- ** .pp
+- ** When this option is enabled, NeoMutt will enable/disable encryption
+- ** each time the TO, CC, and BCC lists are edited. If
+- ** $$edit_headers is set, NeoMutt will also do so each time the message
+- ** is edited.
+- ** .pp
+- ** While this is set, encryption can't be manually enabled/disabled.
+- ** The pgp or smime menus provide a selection to temporarily disable
+- ** this option for the current message.
+- ** .pp
+- ** If $$crypt_autoencrypt or $$crypt_replyencrypt enable encryption for
+- ** a message, this option will be disabled for that message. It can
+- ** be manually re-enabled in the pgp or smime menus.
+- ** (Crypto only)
+- */
+- { "crypt_protected_headers_read", DT_BOOL, &C_CryptProtectedHeadersRead, true },
+- /*
+- ** .pp
+- ** When set, NeoMutt will display protected headers ("Memory Hole") in the pager,
+- ** and will update the index and header cache with revised headers.
+- **
+- ** Protected headers are stored inside the encrypted or signed part of an
+- ** an email, to prevent disclosure or tampering.
+- ** For more information see https://github.com/autocrypt/memoryhole.
+- ** Currently NeoMutt only supports the Subject header.
+- ** .pp
+- ** Encrypted messages using protected headers often substitute the exposed
+- ** Subject header with a dummy value (see $$crypt_protected_headers_subject).
+- ** NeoMutt will update its concept of the correct subject \fBafter\fP the
+- ** message is opened, i.e. via the \fC<display-message>\fP function.
+- ** If you reply to a message before opening it, NeoMutt will end up using
+- ** the dummy Subject header, so be sure to open such a message first.
+- ** (Crypto only)
+- */
+- { "crypt_protected_headers_save", DT_BOOL, &C_CryptProtectedHeadersSave, false },
+- /*
+- ** .pp
+- ** When $$crypt_protected_headers_read is set, and a message with a
+- ** protected Subject is opened, NeoMutt will save the updated Subject
+- ** into the header cache by default. This allows searching/limiting
+- ** based on the protected Subject header if the mailbox is
+- ** re-opened, without having to re-open the message each time.
+- ** However, for mbox/mh mailbox types, or if header caching is not
+- ** set up, you would need to re-open the message each time the
+- ** mailbox was reopened before you could see or search/limit on the
+- ** protected subject again.
+- ** .pp
+- ** When this variable is set, NeoMutt additionally saves the protected
+- ** Subject back \fBin the clear-text message headers\fP. This
+- ** provides better usability, but with the tradeoff of reduced
+- ** security. The protected Subject header, which may have
+- ** previously been encrypted, is now stored in clear-text in the
+- ** message headers. Copying the message elsewhere, via NeoMutt or
+- ** external tools, could expose this previously encrypted data.
+- ** Please make sure you understand the consequences of this before
+- ** you enable this variable.
+- ** (Crypto only)
+- */
+- { "crypt_protected_headers_subject", DT_STRING, &C_CryptProtectedHeadersSubject, IP "Encrypted subject" },
+- /*
+- ** .pp
+- ** When $$crypt_protected_headers_write is set, and the message is marked
+- ** for encryption, this will be substituted into the Subject field in the
+- ** message headers.
+- **
+- ** To prevent a subject from being substituted, unset this variable, or set it
+- ** to the empty string.
+- ** (Crypto only)
+- */
+- { "crypt_protected_headers_write", DT_BOOL, &C_CryptProtectedHeadersWrite, false },
+- /*
+- ** .pp
+- ** When set, NeoMutt will generate protected headers ("Memory Hole") for
+- ** signed and encrypted emails.
+- **
+- ** Protected headers are stored inside the encrypted or signed part of an
+- ** an email, to prevent disclosure or tampering.
+- ** For more information see https://github.com/autocrypt/memoryhole.
+- **
+- ** Currently NeoMutt only supports the Subject header.
+- ** (Crypto only)
+- */
+- { "crypt_replyencrypt", DT_BOOL, &C_CryptReplyencrypt, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, automatically PGP or OpenSSL encrypt replies to messages which are
+- ** encrypted.
+- ** (Crypto only)
+- */
+- { "crypt_replysign", DT_BOOL, &C_CryptReplysign, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, automatically PGP or OpenSSL sign replies to messages which are
+- ** signed.
+- ** .pp
+- ** \fBNote:\fP this does not work on messages that are encrypted
+- ** \fIand\fP signed!
+- ** (Crypto only)
+- */
+- { "crypt_replysignencrypted", DT_BOOL, &C_CryptReplysignencrypted, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, automatically PGP or OpenSSL sign replies to messages
+- ** which are encrypted. This makes sense in combination with
+- ** $$crypt_replyencrypt, because it allows you to sign all
+- ** messages which are automatically encrypted. This works around
+- ** the problem noted in $$crypt_replysign, that NeoMutt is not able
+- ** to find out whether an encrypted message is also signed.
+- ** (Crypto only)
+- */
+- { "crypt_timestamp", DT_BOOL, &C_CryptTimestamp, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will include a time stamp in the lines surrounding
+- ** PGP or S/MIME output, so spoofing such lines is more difficult.
+- ** If you are using colors to mark these lines, and rely on these,
+- ** you may \fIunset\fP this setting.
+- ** (Crypto only)
+- */
+- { "crypt_use_gpgme", DT_BOOL, &C_CryptUseGpgme, false },
+- /*
+- ** .pp
+- ** This variable controls the use of the GPGME-enabled crypto backends.
+- ** If it is \fIset\fP and NeoMutt was built with gpgme support, the gpgme code for
+- ** S/MIME and PGP will be used instead of the classic code. Note that
+- ** you need to set this option in .neomuttrc; it won't have any effect when
+- ** used interactively.
+- ** .pp
+- ** Note that the GPGME backend does not support creating old-style inline
+- ** (traditional) PGP encrypted or signed messages (see $$pgp_autoinline).
+- */
+- { "crypt_use_pka", DT_BOOL, &C_CryptUsePka, false },
+- /*
+- ** .pp
+- ** Controls whether NeoMutt uses PKA
+- ** (see http://www.g10code.de/docs/pka-intro.de.pdf) during signature
+- ** verification (only supported by the GPGME backend).
+- */
+- { "crypt_verify_sig", DT_QUAD, &C_CryptVerifySig, MUTT_YES },
+- /*
+- ** .pp
+- ** If \fI"yes"\fP, always attempt to verify PGP or S/MIME signatures.
+- ** If \fI"ask-*"\fP, ask whether or not to verify the signature.
+- ** If \fI"no"\fP, never attempt to verify cryptographic signatures.
+- ** (Crypto only)
+- */
+- { "date_format", DT_STRING|DT_NOT_EMPTY|R_MENU, &C_DateFormat, IP "!%a, %b %d, %Y at %I:%M:%S%p %Z" },
+- /*
+- ** .pp
+- ** This variable controls the format of the date printed by the "%d"
+- ** sequence in $$index_format. This is passed to the \fCstrftime(3)\fP
+- ** function to process the date, see the man page for the proper syntax.
+- ** .pp
+- ** Unless the first character in the string is a bang ("!"), the month
+- ** and week day names are expanded according to the locale.
+- ** If the first character in the string is a
+- ** bang, the bang is discarded, and the month and week day names in the
+- ** rest of the string are expanded in the \fIC\fP locale (that is in US
+- ** English).
+- */
+- { "debug_file", DT_STRING|DT_PATH, &C_DebugFile, IP "~/.neomuttdebug" },
+- /*
+- ** .pp
+- ** Debug logging is controlled by the variables \fC$$debug_file\fP and \fC$$debug_level\fP.
+- ** \fC$$debug_file\fP specifies the root of the filename. NeoMutt will add "0" to the end.
+- ** Each time NeoMutt is run with logging enabled, the log files are rotated.
+- ** A maximum of five log files are kept, numbered 0 (most recent) to 4 (oldest).
+- ** .pp
+- ** This option can be enabled on the command line, "neomutt -l mylog"
+- ** .pp
+- ** See also: \fC$$debug_level\fP
+- */
+- { "debug_level", DT_NUMBER, &C_DebugLevel, 0, 0, level_validator },
+- /*
+- ** .pp
+- ** Debug logging is controlled by the variables \fC$$debug_file\fP and \fC$$debug_level\fP.
+- ** .pp
+- ** The debug level controls how much information is saved to the log file.
+- ** If you have a problem with NeoMutt, then enabling logging may help find the cause.
+- ** Levels 1-3 will usually provide enough information for writing a bug report.
+- ** Levels 4,5 will be extremely verbose.
+- ** .pp
+- ** Warning: Logging at high levels may save private information to the file.
+- ** .pp
+- ** This option can be enabled on the command line, "neomutt -d 2"
+- ** .pp
+- ** See also: \fC$$debug_file\fP
+- */
+- { "default_hook", DT_STRING, &C_DefaultHook, IP "~f %s !~P | (~P ~C %s)" },
+- /*
+- ** .pp
+- ** This variable controls how "$message-hook", "$reply-hook", "$send-hook",
+- ** "$send2-hook", "$save-hook", and "$fcc-hook" will
+- ** be interpreted if they are specified with only a simple regex,
+- ** instead of a matching pattern. The hooks are expanded when they are
+- ** declared, so a hook will be interpreted according to the value of this
+- ** variable at the time the hook is declared.
+- ** .pp
+- ** The default value matches
+- ** if the message is either from a user matching the regular expression
+- ** given, or if it is from you (if the from address matches
+- ** "$alternates") and is to or cc'ed to a user matching the given
+- ** regular expression.
+- */
+- { "delete", DT_QUAD, &C_Delete, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether or not messages are really deleted when closing or
+- ** synchronizing a mailbox. If set to \fIyes\fP, messages marked for
+- ** deleting will automatically be purged without prompting. If set to
+- ** \fIno\fP, messages marked for deletion will be kept in the mailbox.
+- */
+- { "delete_untag", DT_BOOL, &C_DeleteUntag, true },
+- /*
+- ** .pp
+- ** If this option is \fIset\fP, NeoMutt will untag messages when marking them
+- ** for deletion. This applies when you either explicitly delete a message,
+- ** or when you save it to another folder.
+- */
+- { "digest_collapse", DT_BOOL, &C_DigestCollapse, true },
+- /*
+- ** .pp
+- ** If this option is \fIset\fP, NeoMutt's received-attachments menu will not show the subparts of
+- ** individual messages in a multipart/digest. To see these subparts, press "v" on that menu.
+- */
+- { "display_filter", DT_STRING|DT_COMMAND|R_PAGER, &C_DisplayFilter, 0 },
+- /*
+- ** .pp
+- ** When set, specifies a command used to filter messages. When a message
+- ** is viewed it is passed as standard input to $$display_filter, and the
+- ** filtered message is read from the standard output.
+- ** .pp
+- ** When preparing the message, NeoMutt inserts some escape sequences into the
+- ** text. They are of the form: \fC<esc>]9;XXX<bel>\fP where "XXX" is a random
+- ** 64-bit number.
+- ** .pp
+- ** If these escape sequences interfere with your filter, they can be removed
+- ** using a tool like \fCansifilter\fP or \fCsed 's/^\x1b]9;[0-9]\+\x7//'\fP
+- ** .pp
+- ** If they are removed, then PGP and MIME headers will no longer be coloured.
+- ** This can be fixed by adding this to your config:
+- ** \fCcolor body magenta default '^\[-- .* --\]$$$'\fP.
+- */
+- { "dsn_notify", DT_STRING, &C_DsnNotify, 0 },
+- /*
+- ** .pp
+- ** This variable sets the request for when notification is returned. The
+- ** string consists of a comma separated list (no spaces!) of one or more
+- ** of the following: \fInever\fP, to never request notification,
+- ** \fIfailure\fP, to request notification on transmission failure,
+- ** \fIdelay\fP, to be notified of message delays, \fIsuccess\fP, to be
+- ** notified of successful transmission.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set dsn_notify="failure,delay"
+- ** .te
+- ** .pp
+- ** \fBNote:\fP when using $$sendmail for delivery, you should not enable
+- ** this unless you are either using Sendmail 8.8.x or greater or a MTA
+- ** providing a \fCsendmail(1)\fP-compatible interface supporting the \fC-N\fP option
+- ** for DSN. For SMTP delivery, DSN support is auto-detected so that it
+- ** depends on the server whether DSN will be used or not.
+- */
+- { "dsn_return", DT_STRING, &C_DsnReturn, 0 },
+- /*
+- ** .pp
+- ** This variable controls how much of your message is returned in DSN
+- ** messages. It may be set to either \fIhdrs\fP to return just the
+- ** message header, or \fIfull\fP to return the full message.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set dsn_return=hdrs
+- ** .te
+- ** .pp
+- ** \fBNote:\fP when using $$sendmail for delivery, you should not enable
+- ** this unless you are either using Sendmail 8.8.x or greater or a MTA
+- ** providing a \fCsendmail(1)\fP-compatible interface supporting the \fC-R\fP option
+- ** for DSN. For SMTP delivery, DSN support is auto-detected so that it
+- ** depends on the server whether DSN will be used or not.
+- */
+- { "duplicate_threads", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_DuplicateThreads, true, 0, pager_validator },
+- /*
+- ** .pp
+- ** This variable controls whether NeoMutt, when $$sort is set to \fIthreads\fP, threads
+- ** messages with the same Message-Id together. If it is \fIset\fP, it will indicate
+- ** that it thinks they are duplicates of each other with an equals sign
+- ** in the thread tree.
+- */
+- { "edit_headers", DT_BOOL, &C_EditHeaders, false },
+- /*
+- ** .pp
+- ** This option allows you to edit the header of your outgoing messages
+- ** along with the body of your message.
+- ** .pp
+- ** Although the compose menu may have localized header labels, the
+- ** labels passed to your editor will be standard RFC2822 headers,
+- ** (e.g. To:, Cc:, Subject:). Headers added in your editor must
+- ** also be RFC2822 headers, or one of the pseudo headers listed in
+- ** "$edit-header". NeoMutt will not understand localized header
+- ** labels, just as it would not when parsing an actual email.
+- ** .pp
+- ** \fBNote\fP that changes made to the References: and Date: headers are
+- ** ignored for interoperability reasons.
+- */
+- { "editor", DT_STRING|DT_COMMAND, &C_Editor, IP "vi" },
+- /*
+- ** .pp
+- ** This variable specifies which editor is used by NeoMutt.
+- ** It defaults to the value of the \fC$$$VISUAL\fP, or \fC$$$EDITOR\fP, environment
+- ** variable, or to the string "vi" if neither of those are set.
+- ** .pp
+- ** The \fC$$editor\fP string may contain a \fI%s\fP escape, which will be replaced by the name
+- ** of the file to be edited. If the \fI%s\fP escape does not appear in \fC$$editor\fP, a
+- ** space and the name to be edited are appended.
+- ** .pp
+- ** The resulting string is then executed by running
+- ** .ts
+- ** sh -c 'string'
+- ** .te
+- ** .pp
+- ** where \fIstring\fP is the expansion of \fC$$editor\fP described above.
+- */
+- { "empty_subject", DT_STRING, &C_EmptySubject, IP "Re: your mail" },
+- /*
+- ** .pp
+- ** This variable specifies the subject to be used when replying to an email
+- ** with an empty subject. It defaults to "Re: your mail".
+- */
+- { "encode_from", DT_BOOL, &C_EncodeFrom, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will quoted-printable encode messages when
+- ** they contain the string "From " (note the trailing space) in the beginning of a line.
+- ** This is useful to avoid the tampering certain mail delivery and transport
+- ** agents tend to do with messages (in order to prevent tools from
+- ** misinterpreting the line as a mbox message separator).
+- */
+-#ifdef USE_SSL_OPENSSL
+- { "entropy_file", DT_STRING|DT_PATH, &C_EntropyFile, 0 },
+- /*
+- ** .pp
+- ** The file which includes random data that is used to initialize SSL
+- ** library functions.
+- */
+-#endif
+- { "envelope_from_address", DT_ADDRESS, &C_EnvelopeFromAddress, 0 },
+- /*
+- ** .pp
+- ** Manually sets the \fIenvelope\fP sender for outgoing messages.
+- ** This value is ignored if $$use_envelope_from is \fIunset\fP.
+- */
+- { "escape", DT_STRING, &C_Escape, IP "~" },
+- /*
+- ** .pp
+- ** Escape character to use for functions in the built-in editor.
+- */
+- { "external_search_command", DT_STRING|DT_COMMAND, &C_ExternalSearchCommand, 0 },
+- /*
+- ** .pp
+- ** If set, contains the name of the external program used by "~I" patterns.
+- ** This will usually be a wrapper script around mairix, mu, or similar
+- ** indexers other than notmuch (for which there is optional special support).
+- ** .pp
+- ** Here is an example how it works. Let's assume $$external_search_command
+- ** is set to "mairix_filter", and mairix_filter is a script which
+- ** runs the old but well loved mairix indexer with the arguments
+- ** given to mairix_filter, in the "raw" mode of mairix, producing
+- ** on the standard output a list of Message-IDs, one per line.
+- ** .pp
+- ** If possible, it also filters down the results coming from mairix
+- ** such that only messages in the current folder remain. It can do
+- ** this because it gets a hidden first argument which is the path
+- ** to the folder.
+- ** (This can be the type of clean and simple script called a \fIone-liner\fP.)
+- ** .pp
+- ** Now if NeoMutt gets a limit or tag command followed by the pattern
+- ** "~I '-t s:bleeping='", mairix_filter runs mairix with the
+- ** arguments from inside the quotes (the quotes are needed because
+- ** of the space after "-t"), mairix finds all messages with
+- ** "bleeping" in the Subject plus all messages sharing threads
+- ** with these and outputs their file names, and mairix_filter
+- ** translates the file names into Message-IDs. Finally, NeoMutt
+- ** reads the Message-IDs and targets the matching messages with the
+- ** command given to it.
+- ** .pp
+- ** You, the user, still have to rewrite the mairix_filter script to
+- ** match the behavior of your indexer, but this should help users
+- ** of indexers other than notmuch to integrate them cleanly with NeoMutt.
+- */
+- { "fast_reply", DT_BOOL, &C_FastReply, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, the initial prompt for recipients and subject are skipped
+- ** when replying to messages, and the initial prompt for subject is
+- ** skipped when forwarding messages.
+- ** .pp
+- ** \fBNote:\fP this variable has no effect when the $$autoedit
+- ** variable is \fIset\fP.
+- */
+- { "fcc_attach", DT_QUAD, &C_FccAttach, MUTT_YES },
+- /*
+- ** .pp
+- ** This variable controls whether or not attachments on outgoing messages
+- ** are saved along with the main body of your message.
+- */
+- { "fcc_before_send", DT_BOOL, &C_FccBeforeSend, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, FCCs will occur before sending
+- ** the message. Before sending, the message cannot be manipulated,
+- ** so it will be stored the exact same as sent:
+- ** $$fcc_attach and $$fcc_clear will be ignored (using their default
+- ** values).
+- ** .pp
+- ** When \fIunset\fP, the default, FCCs will occur after sending.
+- ** Variables $$fcc_attach and $$fcc_clear will be respected, allowing
+- ** it to be stored without attachments or encryption/signing if
+- ** desired.
+- */
+- { "fcc_clear", DT_BOOL, &C_FccClear, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, FCCs will be stored unencrypted and
+- ** unsigned, even when the actual message is encrypted and/or
+- ** signed.
+- ** (PGP only)
+- */
+- { "flag_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_FlagChars, IP "*!DdrONon- " },
+- /*
+- ** .pp
+- ** Controls the characters used in several flags.
+- ** .dl
+- ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
+- ** .dt 1 .dd * .dd The mail is tagged.
+- ** .dt 2 .dd ! .dd The mail is flagged as important.
+- ** .dt 3 .dd D .dd The mail is marked for deletion.
+- ** .dt 4 .dd d .dd The mail has attachments marked for deletion.
+- ** .dt 5 .dd r .dd The mail has been replied to.
+- ** .dt 6 .dd O .dd The mail is Old (Unread but seen).
+- ** .dt 7 .dd N .dd The mail is New (Unread but not seen).
+- ** .dt 8 .dd o .dd The mail thread is Old (Unread but seen).
+- ** .dt 9 .dd n .dd The mail thread is New (Unread but not seen).
+- ** .dt 10 .dd - .dd The mail is read - %S expando.
+- ** .dt 11 .dd <space> .dd The mail is read - %Z expando.
+- ** .de
+- */
+- { "flag_safe", DT_BOOL, &C_FlagSafe, false },
+- /*
+- ** .pp
+- ** If set, flagged messages can't be deleted.
+- */
+- { "folder", DT_STRING|DT_PATH|DT_MAILBOX, &C_Folder, IP "~/Mail" },
+- /*
+- ** .pp
+- ** Specifies the default location of your mailboxes. A "+" or "=" at the
+- ** beginning of a pathname will be expanded to the value of this
+- ** variable. Note that if you change this variable (from the default)
+- ** value you need to make sure that the assignment occurs \fIbefore\fP
+- ** you use "+" or "=" for any other variables since expansion takes place
+- ** when handling the "$mailboxes" command.
+- */
+- { "folder_format", DT_STRING|DT_NOT_EMPTY|R_MENU, &C_FolderFormat, IP "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %i" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the file browser display to your
+- ** personal taste. This string is similar to $$index_format, but has
+- ** its own set of \fCprintf(3)\fP-like sequences:
+- ** .dl
+- ** .dt %C .dd Current file number
+- ** .dt %d .dd Date/time folder was last modified
+- ** .dt %D .dd Date/time folder was last modified using $$date_format.
+- ** .dt %f .dd Filename ("/" is appended to directory names,
+- ** "@" to symbolic links and "*" to executable files)
+- ** .dt %F .dd File permissions
+- ** .dt %g .dd Group name (or numeric gid, if missing)
+- ** .dt %i .dd Description of the folder
+- ** .dt %l .dd Number of hard links
+- ** .dt %m .dd Number of messages in the mailbox *
+- ** .dt %n .dd Number of unread messages in the mailbox *
+- ** .dt %N .dd "N" if mailbox has new mail, blank otherwise
+- ** .dt %s .dd Size in bytes (see $formatstrings-size)
+- ** .dt %t .dd "*" if the file is tagged, blank otherwise
+- ** .dt %u .dd Owner name (or numeric uid, if missing)
+- ** .dt %>X .dd Right justify the rest of the string and pad with character "X"
+- ** .dt %|X .dd Pad to the end of the line with character "X"
+- ** .dt %*X .dd Soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** For an explanation of "soft-fill", see the $$index_format documentation.
+- ** .pp
+- ** * = can be optionally printed if nonzero
+- ** .pp
+- ** %m, %n, and %N only work for monitored mailboxes.
+- ** %m requires $$mail_check_stats to be set.
+- ** %n requires $$mail_check_stats to be set (except for IMAP mailboxes).
+- */
+- { "followup_to", DT_BOOL, &C_FollowupTo, true },
+- /*
+- ** .pp
+- ** Controls whether or not the "Mail-Followup-To:" header field is
+- ** generated when sending mail. When \fIset\fP, NeoMutt will generate this
+- ** field when you are replying to a known mailing list, specified with
+- ** the "$subscribe" or "$lists" commands.
+- ** .pp
+- ** This field has two purposes. First, preventing you from
+- ** receiving duplicate copies of replies to messages which you send
+- ** to mailing lists, and second, ensuring that you do get a reply
+- ** separately for any messages sent to known lists to which you are
+- ** not subscribed.
+- ** .pp
+- ** The header will contain only the list's address
+- ** for subscribed lists, and both the list address and your own
+- ** email address for unsubscribed lists. Without this header, a
+- ** group reply to your message sent to a subscribed list will be
+- ** sent to both the list and your address, resulting in two copies
+- ** of the same email for you.
+- */
+-#ifdef USE_NNTP
+- { "followup_to_poster", DT_QUAD, &C_FollowupToPoster, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** If this variable is \fIset\fP and the keyword "poster" is present in
+- ** \fIFollowup-To\fP header, follow-up to newsgroup function is not
+- ** permitted. The message will be mailed to the submitter of the
+- ** message via mail.
+- */
+-#endif
+- { "force_name", DT_BOOL, &C_ForceName, false },
+- /*
+- ** .pp
+- ** This variable is similar to $$save_name, except that NeoMutt will
+- ** store a copy of your outgoing message by the username of the address
+- ** you are sending to even if that mailbox does not exist.
+- ** .pp
+- ** Also see the $$record variable.
+- */
+- { "forward_attachments", DT_QUAD, &C_ForwardAttachments, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** When forwarding inline (i.e. $$mime_forward \fIunset\fP or
+- ** answered with ``no'' and $$forward_decode \fIset\fP), attachments
+- ** which cannot be decoded in a reasonable manner will be attached
+- ** to the newly composed message if this quadoption is \fIset\fP or
+- ** answered with ``yes''.
+- */
+- { "forward_attribution_intro", DT_STRING, &C_ForwardAttributionIntro, IP "----- Forwarded message from %f -----" },
+- /*
+- ** .pp
+- ** This is the string that will precede a message which has been forwarded
+- ** in the main body of a message (when $$mime_forward is unset).
+- ** For a full listing of defined \fCprintf(3)\fP-like sequences see
+- ** the section on $$index_format. See also $$attribution_locale.
+- */
+- { "forward_attribution_trailer", DT_STRING, &C_ForwardAttributionTrailer, IP "----- End forwarded message -----" },
+- /*
+- ** .pp
+- ** This is the string that will follow a message which has been forwarded
+- ** in the main body of a message (when $$mime_forward is unset).
+- ** For a full listing of defined \fCprintf(3)\fP-like sequences see
+- ** the section on $$index_format. See also $$attribution_locale.
+- */
+- { "forward_decode", DT_BOOL, &C_ForwardDecode, true },
+- /*
+- ** .pp
+- ** Controls the decoding of complex MIME messages into \fCtext/plain\fP when
+- ** forwarding a message. The message header is also RFC2047 decoded.
+- ** This variable is only used, if $$mime_forward is \fIunset\fP,
+- ** otherwise $$mime_forward_decode is used instead.
+- */
+- { "forward_decrypt", DT_BOOL, &C_ForwardDecrypt, true },
+- /*
+- ** .pp
+- ** Controls the handling of encrypted messages when forwarding a message.
+- ** When \fIset\fP, the outer layer of encryption is stripped off. This
+- ** variable is only used if $$mime_forward is \fIset\fP and
+- ** $$mime_forward_decode is \fIunset\fP.
+- ** (PGP only)
+- */
+- { "forward_edit", DT_QUAD, &C_ForwardEdit, MUTT_YES },
+- /*
+- ** .pp
+- ** This quadoption controls whether or not the user is automatically
+- ** placed in the editor when forwarding messages. For those who always want
+- ** to forward with no modification, use a setting of "no".
+- */
+- { "forward_format", DT_STRING|DT_NOT_EMPTY, &C_ForwardFormat, IP "[%a: %s]" },
+- /*
+- ** .pp
+- ** This variable controls the default subject when forwarding a message.
+- ** It uses the same format sequences as the $$index_format variable.
+- */
+- { "forward_quote", DT_BOOL, &C_ForwardQuote, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, forwarded messages included in the main body of the
+- ** message (when $$mime_forward is \fIunset\fP) will be quoted using
+- ** $$indent_string.
+- */
+- { "forward_references", DT_BOOL, &C_ForwardReferences, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, forwarded messages set the "In-Reply-To:" and
+- ** "References:" headers in the same way as normal replies would. Hence the
+- ** forwarded message becomes part of the original thread instead of starting
+- ** a new one.
+- */
+- { "from", DT_ADDRESS, &C_From, 0 },
+- /*
+- ** .pp
+- ** When \fIset\fP, this variable contains a default "from" address. It
+- ** can be overridden using "$my_hdr" (including from a "$send-hook") and
+- ** $$reverse_name. This variable is ignored if $$use_from is \fIunset\fP.
+- ** .pp
+- ** If not specified, then it may be read from the environment variable \fC$$$EMAIL\fP.
+- */
+- { "from_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_FromChars, 0 },
+- /*
+- ** .pp
+- ** Controls the character used to prefix the %F and %L fields in the
+- ** index.
+- ** .dl
+- ** .dt \fBCharacter\fP .dd \fBDescription\fP
+- ** .dt 1 .dd Mail is written by you and has a To address, or has a known mailing list in the To address.
+- ** .dt 2 .dd Mail is written by you and has a Cc address, or has a known mailing list in the Cc address.
+- ** .dt 3 .dd Mail is written by you and has a Bcc address.
+- ** .dt 4 .dd All remaining cases.
+- ** .de
+- ** .pp
+- ** If this is empty or unset (default), the traditional long "To ",
+- ** "Cc " and "Bcc " prefixes are used. If set but too short to
+- ** include a character for a particular case, a single space will be
+- ** prepended to the field. To prevent any prefix at all from being
+- ** added in a particular case, use the special value CR (aka ^M)
+- ** for the corresponding character.
+- ** .pp
+- ** This slightly odd interface is necessitated by NeoMutt's handling of
+- ** string variables; one can't tell a variable that is unset from one
+- ** that is set to the empty string.
+- */
+- { "gecos_mask", DT_REGEX, &C_GecosMask, IP "^[^,]*" },
+- /*
+- ** .pp
+- ** A regular expression used by NeoMutt to parse the GECOS field of a password
+- ** entry when expanding the alias. The default value
+- ** will return the string up to the first "," encountered.
+- ** If the GECOS field contains a string like "lastname, firstname" then you
+- ** should set it to "\fC.*\fP".
+- ** .pp
+- ** This can be useful if you see the following behavior: you address an e-mail
+- ** to user ID "stevef" whose full name is "Steve Franklin". If NeoMutt expands
+- ** "stevef" to '"Franklin" stevef@foo.bar' then you should set the $$gecos_mask to
+- ** a regular expression that will match the whole name so NeoMutt will expand
+- ** "Franklin" to "Franklin, Steve".
+- */
+-#ifdef USE_NNTP
+- { "group_index_format", DT_STRING|DT_NOT_EMPTY|R_INDEX|R_PAGER, &C_GroupIndexFormat, IP "%4C %M%N %5s %-45.45f %d" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the newsgroup browser display to
+- ** your personal taste. This string is similar to "$index_format", but
+- ** has its own set of printf()-like sequences:
+- ** .dl
+- ** .dt %C .dd Current newsgroup number
+- ** .dt %d .dd Description of newsgroup (becomes from server)
+- ** .dt %f .dd Newsgroup name
+- ** .dt %M .dd - if newsgroup not allowed for direct post (moderated for example)
+- ** .dt %N .dd N if newsgroup is new, u if unsubscribed, blank otherwise
+- ** .dt %n .dd Number of new articles in newsgroup
+- ** .dt %s .dd Number of unread articles in newsgroup
+- ** .dt %>X .dd Right justify the rest of the string and pad with character "X"
+- ** .dt %|X .dd Pad to the end of the line with character "X"
+- ** .de
+- */
+-#endif
+- { "hdrs", DT_BOOL, &C_Hdrs, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, the header fields normally added by the "$my_hdr"
+- ** command are not created. This variable \fImust\fP be unset before
+- ** composing a new message or replying in order to take effect. If \fIset\fP,
+- ** the user defined header fields are added to every new message.
+- */
+- { "header", DT_BOOL, &C_Header, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, this variable causes NeoMutt to include the header
+- ** of the message you are replying to into the edit buffer.
+- ** The $$weed setting applies.
+- */
+-#ifdef USE_HCACHE
+- { "header_cache", DT_STRING|DT_PATH, &C_HeaderCache, 0 },
+- /*
+- ** .pp
+- ** This variable points to the header cache database. If the path points to
+- ** an existing directory, NeoMutt will create a dedicated header cache
+- ** database per folder. Otherwise, the path points to a regular file, which
+- ** will be created as needed and used as a shared global header cache for
+- ** all folders.
+- ** By default it is \fIunset\fP so no header caching will be used.
+- ** .pp
+- ** Header caching can greatly improve speed when opening POP, IMAP
+- ** MH or Maildir folders, see "$caching" for details.
+- */
+- { "header_cache_backend", DT_STRING, &C_HeaderCacheBackend, 0, 0, hcache_validator },
+- /*
+- ** .pp
+- ** This variable specifies the header cache backend.
+- */
+-#if defined(HAVE_QDBM) || defined(HAVE_TC) || defined(HAVE_KC)
+- { "header_cache_compress", DT_BOOL, &C_HeaderCacheCompress, true },
+- /*
+- ** .pp
+- ** When NeoMutt is compiled with qdbm, tokyocabinet or kyotocabinet
+- ** as header cache backend, this option determines whether the
+- ** database will be compressed. Compression results in database
+- ** files roughly being one fifth of the usual diskspace, but the
+- ** decompression can result in a slower opening of cached folder(s)
+- ** which in general is still much faster than opening non header
+- ** cached folders.
+- */
+-#endif /* HAVE_QDBM */
+-#if defined(HAVE_GDBM) || defined(HAVE_BDB)
+- { "header_cache_pagesize", DT_LONG|DT_NOT_NEGATIVE, &C_HeaderCachePagesize, 16384 },
+- /*
+- ** .pp
+- ** When NeoMutt is compiled with either gdbm or bdb4 as the header cache backend,
+- ** this option changes the database page size. Too large or too small
+- ** values can waste space, memory, or CPU time. The default should be more
+- ** or less optimal for most use cases.
+- */
+-#endif /* HAVE_GDBM || HAVE_BDB */
+-#endif /* USE_HCACHE */
+- { "header_color_partial", DT_BOOL|R_PAGER_FLOW, &C_HeaderColorPartial, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, color header regexes behave like color body regexes:
+- ** color is applied to the exact text matched by the regex. When
+- ** \fIunset\fP, color is applied to the entire header.
+- ** .pp
+- ** One use of this option might be to apply color to just the header labels.
+- ** .pp
+- ** See "$color" for more details.
+- */
+- { "help", DT_BOOL|R_REFLOW, &C_Help, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, help lines describing the bindings for the major functions
+- ** provided by each menu are displayed on the first line of the screen.
+- ** .pp
+- ** \fBNote:\fP The binding will not be displayed correctly if the
+- ** function is bound to a sequence rather than a single keystroke. Also,
+- ** the help line may not be updated if a binding is changed while NeoMutt is
+- ** running. Since this variable is primarily aimed at new users, neither
+- ** of these should present a major problem.
+- */
+- { "hidden_host", DT_BOOL, &C_HiddenHost, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will skip the host name part of $$hostname variable
+- ** when adding the domain part to addresses. This variable does not
+- ** affect the generation of Message-IDs, and it will not lead to the
+- ** cut-off of first-level domains.
+- */
+- { "hidden_tags", DT_SLIST|SLIST_SEP_COMMA, &C_HiddenTags, IP "unread,draft,flagged,passed,replied,attachment,signed,encrypted" },
+- /*
+- ** .pp
+- ** This variable specifies private notmuch/imap tags which should not be printed
+- ** on screen.
+- */
+- { "hide_limited", DT_BOOL|R_TREE|R_INDEX, &C_HideLimited, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
+- ** by limiting, in the thread tree.
+- */
+- { "hide_missing", DT_BOOL|R_TREE|R_INDEX, &C_HideMissing, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not show the presence of missing messages in the
+- ** thread tree.
+- */
+- { "hide_thread_subject", DT_BOOL|R_TREE|R_INDEX, &C_HideThreadSubject, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not show the subject of messages in the thread
+- ** tree that have the same subject as their parent or closest previously
+- ** displayed sibling.
+- */
+- { "hide_top_limited", DT_BOOL|R_TREE|R_INDEX, &C_HideTopLimited, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
+- ** by limiting, at the top of threads in the thread tree. Note that when
+- ** $$hide_limited is \fIset\fP, this option will have no effect.
+- */
+- { "hide_top_missing", DT_BOOL|R_TREE|R_INDEX, &C_HideTopMissing, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not show the presence of missing messages at the
+- ** top of threads in the thread tree. Note that when $$hide_missing is
+- ** \fIset\fP, this option will have no effect.
+- */
+- { "history", DT_NUMBER|DT_NOT_NEGATIVE, &C_History, 10 },
+- /*
+- ** .pp
+- ** This variable controls the size (in number of strings remembered) of
+- ** the string history buffer per category. The buffer is cleared each time the
+- ** variable is set.
+- */
+- { "history_file", DT_STRING|DT_PATH, &C_HistoryFile, IP "~/.mutthistory" },
+- /*
+- ** .pp
+- ** The file in which NeoMutt will save its history.
+- ** .pp
+- ** Also see $$save_history.
+- */
+- { "history_remove_dups", DT_BOOL, &C_HistoryRemoveDups, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, all of the string history will be scanned for duplicates
+- ** when a new entry is added. Duplicate entries in the $$history_file will
+- ** also be removed when it is periodically compacted.
+- */
+- { "honor_disposition", DT_BOOL, &C_HonorDisposition, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not display attachments with a
+- ** disposition of "attachment" inline even if it could
+- ** render the part to plain text. These MIME parts can only
+- ** be viewed from the attachment menu.
+- ** .pp
+- ** If \fIunset\fP, NeoMutt will render all MIME parts it can
+- ** properly transform to plain text.
+- */
+- { "honor_followup_to", DT_QUAD, &C_HonorFollowupTo, MUTT_YES },
+- /*
+- ** .pp
+- ** This variable controls whether or not a Mail-Followup-To header is
+- ** honored when group-replying to a message.
+- */
+- { "hostname", DT_STRING, &C_Hostname, 0 },
+- /*
+- ** .pp
+- ** Specifies the fully-qualified hostname of the system NeoMutt is running on
+- ** containing the host's name and the DNS domain it belongs to. It is used
+- ** as the domain part (after "@") for local email addresses as well as
+- ** Message-Id headers.
+- ** .pp
+- ** If not specified in a config file, then NeoMutt will try to determine the hostname itself.
+- ** .pp
+- ** Optionally, NeoMutt can be compiled with a fixed domain name.
+- ** .pp
+- ** Also see $$use_domain and $$hidden_host.
+- */
+-#ifdef HAVE_LIBIDN
+- { "idn_decode", DT_BOOL|R_MENU, &C_IdnDecode, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will show you international domain names decoded.
+- ** Note: You can use IDNs for addresses even if this is \fIunset\fP.
+- ** This variable only affects decoding. (IDN only)
+- */
+- { "idn_encode", DT_BOOL|R_MENU, &C_IdnEncode, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will encode international domain names using
+- ** IDN. Unset this if your SMTP server can handle newer (RFC6531)
+- ** UTF-8 encoded domains. (IDN only)
+- */
+-#endif /* HAVE_LIBIDN */
+- { "ignore_list_reply_to", DT_BOOL, &C_IgnoreListReplyTo, false },
+- /*
+- ** .pp
+- ** Affects the behavior of the \fC<reply>\fP function when replying to
+- ** messages from mailing lists (as defined by the "$subscribe" or
+- ** "$lists" commands). When \fIset\fP, if the "Reply-To:" field is
+- ** set to the same value as the "To:" field, NeoMutt assumes that the
+- ** "Reply-To:" field was set by the mailing list to automate responses
+- ** to the list, and will ignore this field. To direct a response to the
+- ** mailing list when this option is \fIset\fP, use the \fC$<list-reply>\fP
+- ** function; \fC<group-reply>\fP will reply to both the sender and the
+- ** list.
+- */
+-#ifdef USE_IMAP
+- { "imap_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_ImapAuthenticators, 0 },
+- /*
+- ** .pp
+- ** This is a colon-delimited list of authentication methods NeoMutt may
+- ** attempt to use to log in to an IMAP server, in the order NeoMutt should
+- ** try them. Authentication methods are either "login" or the right
+- ** side of an IMAP "AUTH=xxx" capability string, e.g. "digest-md5", "gssapi"
+- ** or "cram-md5". This option is case-insensitive. If it's
+- ** \fIunset\fP (the default) NeoMutt will try all available methods,
+- ** in order from most-secure to least-secure.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set imap_authenticators="gssapi:cram-md5:login"
+- ** .te
+- ** .pp
+- ** \fBNote:\fP NeoMutt will only fall back to other authentication methods if
+- ** the previous methods are unavailable. If a method is available but
+- ** authentication fails, NeoMutt will not connect to the IMAP server.
+- */
+- { "imap_check_subscribed", DT_BOOL, &C_ImapCheckSubscribed, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will fetch the set of subscribed folders from
+- ** your server whenever a mailbox is \fBselected\fP, and add them to the set
+- ** of mailboxes it polls for new mail just as if you had issued individual
+- ** "$mailboxes" commands.
+- */
+- { "imap_condstore", DT_BOOL, &C_ImapCondstore, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will use the CONDSTORE extension (RFC 7162)
+- ** if advertised by the server. NeoMutt's current implementation is basic,
+- ** used only for initial message fetching and flag updates.
+- ** .pp
+- ** For some IMAP servers, enabling this will slightly speed up
+- ** downloading initial messages. Unfortunately, Gmail is not one
+- ** those, and displays worse performance when enabled. Your
+- ** mileage may vary.
+- */
+- { "imap_delim_chars", DT_STRING, &C_ImapDelimChars, IP "/." },
+- /*
+- ** .pp
+- ** This contains the list of characters which you would like to treat
+- ** as folder separators for displaying IMAP paths. In particular it
+- ** helps in using the "=" shortcut for your \fIfolder\fP variable.
+- */
+- { "imap_fetch_chunk_size", DT_LONG|DT_NOT_NEGATIVE, &C_ImapFetchChunkSize, 0 },
+- /*
+- ** .pp
+- ** When set to a value greater than 0, new headers will be downloaded
+- ** in sets of this size. If you have a very large mailbox, this might
+- ** prevent a timeout and disconnect when opening the mailbox, by sending
+- ** a FETCH per set of this size instead of a single FETCH for all new
+- ** headers.
+- */
+- { "imap_headers", DT_STRING|R_INDEX, &C_ImapHeaders, 0 },
+- /*
+- ** .pp
+- ** NeoMutt requests these header fields in addition to the default headers
+- ** ("Date:", "From:", "Sender:", "Subject:", "To:", "Cc:", "Message-Id:",
+- ** "References:", "Content-Type:", "Content-Description:", "In-Reply-To:",
+- ** "Reply-To:", "Lines:", "List-Post:", "X-Label:") from IMAP
+- ** servers before displaying the index menu. You may want to add more
+- ** headers for spam detection.
+- ** .pp
+- ** \fBNote:\fP This is a space separated list, items should be uppercase
+- ** and not contain the colon, e.g. "X-BOGOSITY X-SPAM-STATUS" for the
+- ** "X-Bogosity:" and "X-Spam-Status:" header fields.
+- */
+- { "imap_idle", DT_BOOL, &C_ImapIdle, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will attempt to use the IMAP IDLE extension
+- ** to check for new mail in the current mailbox. Some servers
+- ** (dovecot was the inspiration for this option) react badly
+- ** to NeoMutt's implementation. If your connection seems to freeze
+- ** up periodically, try unsetting this.
+- */
+- { "imap_keepalive", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapKeepalive, 300 },
+- /*
+- ** .pp
+- ** This variable specifies the maximum amount of time in seconds that NeoMutt
+- ** will wait before polling open IMAP connections, to prevent the server
+- ** from closing them before NeoMutt has finished with them. The default is
+- ** well within the RFC-specified minimum amount of time (30 minutes) before
+- ** a server is allowed to do this, but in practice the RFC does get
+- ** violated every now and then. Reduce this number if you find yourself
+- ** getting disconnected from your IMAP server due to inactivity.
+- */
+- { "imap_list_subscribed", DT_BOOL, &C_ImapListSubscribed, false },
+- /*
+- ** .pp
+- ** This variable configures whether IMAP folder browsing will look for
+- ** only subscribed folders or all folders. This can be toggled in the
+- ** IMAP browser with the \fC<toggle-subscribed>\fP function.
+- */
+- { "imap_login", DT_STRING|DT_SENSITIVE, &C_ImapLogin, 0 },
+- /*
+- ** .pp
+- ** Your login name on the IMAP server.
+- ** .pp
+- ** This variable defaults to the value of $$imap_user.
+- */
+- { "imap_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_ImapOauthRefreshCommand, 0 },
+- /*
+- ** .pp
+- ** The command to run to generate an OAUTH refresh token for
+- ** authorizing your connection to your IMAP server. This command will be
+- ** run on every connection attempt that uses the OAUTHBEARER authentication
+- ** mechanism. See "$oauth" for details.
+- */
+- { "imap_pass", DT_STRING|DT_SENSITIVE, &C_ImapPass, 0 },
+- /*
+- ** .pp
+- ** Specifies the password for your IMAP account. If \fIunset\fP, NeoMutt will
+- ** prompt you for your password when you invoke the \fC<imap-fetch-mail>\fP function
+- ** or try to open an IMAP folder.
+- ** .pp
+- ** \fBWarning\fP: you should only use this option when you are on a
+- ** fairly secure machine, because the superuser can read your neomuttrc even
+- ** if you are the only one who can read the file.
+- */
+- { "imap_passive", DT_BOOL, &C_ImapPassive, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will not open new IMAP connections to check for new
+- ** mail. NeoMutt will only check for new mail over existing IMAP
+- ** connections. This is useful if you don't want to be prompted for
+- ** user/password pairs on NeoMutt invocation, or if opening the connection
+- ** is slow.
+- */
+- { "imap_peek", DT_BOOL, &C_ImapPeek, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will avoid implicitly marking your mail as read whenever
+- ** you fetch a message from the server. This is generally a good thing,
+- ** but can make closing an IMAP folder somewhat slower. This option
+- ** exists to appease speed freaks.
+- */
+- { "imap_pipeline_depth", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapPipelineDepth, 15 },
+- /*
+- ** .pp
+- ** Controls the number of IMAP commands that may be queued up before they
+- ** are sent to the server. A deeper pipeline reduces the amount of time
+- ** NeoMutt must wait for the server, and can make IMAP servers feel much
+- ** more responsive. But not all servers correctly handle pipelined commands,
+- ** so if you have problems you might want to try setting this variable to 0.
+- ** .pp
+- ** \fBNote:\fP Changes to this variable have no effect on open connections.
+- */
+- { "imap_poll_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapPollTimeout, 15 },
+- /*
+- ** .pp
+- ** This variable specifies the maximum amount of time in seconds
+- ** that NeoMutt will wait for a response when polling IMAP connections
+- ** for new mail, before timing out and closing the connection. Set
+- ** to 0 to disable timing out.
+- */
+- { "imap_qresync", DT_BOOL, &C_ImapQresync, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will use the QRESYNC extension (RFC 7162)
+- ** if advertised by the server. NeoMutt's current implementation is basic,
+- ** used only for initial message fetching and flag updates.
+- ** .pp
+- ** Note: this feature is currently experimental. If you experience
+- ** strange behavior, such as duplicate or missing messages please
+- ** file a bug report to let us know.
+- */
+- { "imap_rfc5161", DT_BOOL, &C_ImapRfc5161, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will use the IMAP ENABLE extension (RFC 5161) to
+- ** select CAPABILITIES. Some servers (notably Coremail System IMap Server) do
+- ** not properly respond to ENABLE commands, which might cause NeoMutt to hang.
+- ** If your connection seems to freeze at login, try unsetting this. See also
+- ** https://github.com/neomutt/neomutt/issues/1689
+- */
+- { "imap_servernoise", DT_BOOL, &C_ImapServernoise, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will display warning messages from the IMAP
+- ** server as error messages. Since these messages are often
+- ** harmless, or generated due to configuration problems on the
+- ** server which are out of the users' hands, you may wish to suppress
+- ** them at some point.
+- */
+- { "imap_user", DT_STRING|DT_SENSITIVE, &C_ImapUser, 0 },
+- /*
+- ** .pp
+- ** The name of the user whose mail you intend to access on the IMAP
+- ** server.
+- ** .pp
+- ** This variable defaults to your user name on the local machine.
+- */
+-#endif
+- { "implicit_autoview", DT_BOOL, &C_ImplicitAutoview, false },
+- /*
+- ** .pp
+- ** If set to "yes", NeoMutt will look for a mailcap entry with the
+- ** "\fCcopiousoutput\fP" flag set for \fIevery\fP MIME attachment it doesn't have
+- ** an internal viewer defined for. If such an entry is found, NeoMutt will
+- ** use the viewer defined in that entry to convert the body part to text
+- ** form.
+- */
+- { "include", DT_QUAD, &C_Include, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether or not a copy of the message(s) you are replying to
+- ** is included in your reply.
+- */
+- { "include_encrypted", DT_BOOL, &C_IncludeEncrypted, false },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt includes separately encrypted attachment
+- ** contents when replying.
+- ** .pp
+- ** This variable was added to prevent accidental exposure of encrypted
+- ** contents when replying to an attacker. If a previously encrypted message
+- ** were attached by the attacker, they could trick an unwary recipient into
+- ** decrypting and including the message in their reply.
+- */
+- { "include_onlyfirst", DT_BOOL, &C_IncludeOnlyfirst, false },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt includes only the first attachment
+- ** of the message you are replying.
+- */
+- { "indent_string", DT_STRING, &C_IndentString, IP "> " },
+- /*
+- ** .pp
+- ** Specifies the string to prepend to each line of text quoted in a
+- ** message to which you are replying. You are strongly encouraged not to
+- ** change this value, as it tends to agitate the more fanatical netizens.
+- ** .pp
+- ** The value of this option is ignored if $$text_flowed is set, because
+- ** the quoting mechanism is strictly defined for format=flowed.
+- ** .pp
+- ** This option is a format string, please see the description of
+- ** $$index_format for supported \fCprintf(3)\fP-style sequences.
+- */
+- { "index_format", DT_STRING|DT_NOT_EMPTY|R_INDEX|R_PAGER, &C_IndexFormat, IP "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the message index display to
+- ** your personal taste.
+- ** .pp
+- ** "Format strings" are similar to the strings used in the C
+- ** function \fCprintf(3)\fP to format output (see the man page for more details).
+- ** For an explanation of the %? construct, see the $status_format description.
+- ** The following sequences are defined in NeoMutt:
+- ** .dl
+- ** .dt %a .dd Address of the author
+- ** .dt %A .dd Reply-to address (if present; otherwise: address of author)
+- ** .dt %b .dd Filename of the original message folder (think mailbox)
+- ** .dt %B .dd The list to which the letter was sent, or else the folder name (%b).
+- ** .dt %C .dd Current message number
+- ** .dt %c .dd Number of characters (bytes) in the body of the message (see $formatstrings-size)
+- ** .dt %cr .dd Number of characters (bytes) in the raw message, including the header (see $formatstrings-size)
+- ** .dt %D .dd Date and time of message using $date_format and local timezone
+- ** .dt %d .dd Date and time of message using $date_format and sender's timezone
+- ** .dt %e .dd Current message number in thread
+- ** .dt %E .dd Number of messages in current thread
+- ** .dt %F .dd Author name, or recipient name if the message is from you
+- ** .dt %Fp .dd Like %F, but plain. No contextual formatting is applied to recipient name
+- ** .dt %f .dd Sender (address + real name), either From: or Return-Path:
+- ** .dt %g .dd Newsgroup name (if compiled with NNTP support)
+- ** .dt %g .dd Message tags (e.g. notmuch tags/imap flags)
+- ** .dt %Gx .dd Individual message tag (e.g. notmuch tags/imap flags)
+- ** .dt %H .dd Spam attribute(s) of this message
+- ** .dt %I .dd Initials of author
+- ** .dt %i .dd Message-id of the current message
+- ** .dt %J .dd Message tags (if present, tree unfolded, and != parent's tags)
+- ** .dt %K .dd The list to which the letter was sent (if any; otherwise: empty)
+- ** .dt %L .dd If an address in the "To:" or "Cc:" header field matches an address
+- ** Defined by the users "$subscribe" command, this displays
+- ** "To <list-name>", otherwise the same as %F
+- ** .dt %l .dd number of lines in the unprocessed message (may not work with
+- ** maildir, mh, and IMAP folders)
+- ** .dt %M .dd Number of hidden messages if the thread is collapsed
+- ** .dt %m .dd Total number of message in the mailbox
+- ** .dt %N .dd Message score
+- ** .dt %n .dd Author's real name (or address if missing)
+- ** .dt %O .dd Original save folder where NeoMutt would formerly have
+- ** Stashed the message: list name or recipient name
+- ** If not sent to a list
+- ** .dt %P .dd Progress indicator for the built-in pager (how much of the file has been displayed)
+- ** .dt %q .dd Newsgroup name (if compiled with NNTP support)
+- ** .dt %R .dd Comma separated list of "Cc:" recipients
+- ** .dt %r .dd Comma separated list of "To:" recipients
+- ** .dt %S .dd Single character status of the message ("N"/"O"/"D"/"d"/"!"/"r"/"\(as")
+- ** .dt %s .dd Subject of the message
+- ** .dt %T .dd The appropriate character from the $$to_chars string
+- ** .dt %t .dd "To:" field (recipients)
+- ** .dt %u .dd User (login) name of the author
+- ** .dt %v .dd First name of the author, or the recipient if the message is from you
+- ** .dt %W .dd Name of organization of author ("Organization:" field)
+- ** .dt %x .dd "X-Comment-To:" field (if present and compiled with NNTP support)
+- ** .dt %X .dd Number of MIME attachments
+- ** (please see the "$attachments" section for possible speed effects)
+- ** .dt %Y .dd "X-Label:" field, if present, and \fI(1)\fP not at part of a thread tree,
+- ** \fI(2)\fP at the top of a thread, or \fI(3)\fP "X-Label:" is different from
+- ** Preceding message's "X-Label:"
+- ** .dt %y .dd "X-Label:" field, if present
+- ** .dt %Z .dd A three character set of message status flags.
+- ** The first character is new/read/replied flags ("n"/"o"/"r"/"O"/"N").
+- ** The second is deleted or encryption flags ("D"/"d"/"S"/"P"/"s"/"K").
+- ** The third is either tagged/flagged ("\(as"/"!"), or one of the characters
+- ** Listed in $$to_chars.
+- ** .dt %zc .dd Message crypto flags
+- ** .dt %zs .dd Message status flags
+- ** .dt %zt .dd Message tag flags
+- ** .dt %@name@ .dd insert and evaluate format-string from the matching
+- ** ``$index-format-hook'' command
+- ** .dt %{fmt} .dd the date and time of the message is converted to sender's
+- ** time zone, and "fmt" is expanded by the library function
+- ** \fCstrftime(3)\fP; a leading bang disables locales
+- ** .dt %[fmt] .dd the date and time of the message is converted to the local
+- ** time zone, and "fmt" is expanded by the library function
+- ** \fCstrftime(3)\fP; a leading bang disables locales
+- ** .dt %(fmt) .dd the local date and time when the message was received.
+- ** "fmt" is expanded by the library function \fCstrftime(3)\fP;
+- ** a leading bang disables locales
+- ** .dt %>X .dd right justify the rest of the string and pad with character "X"
+- ** .dt %|X .dd pad to the end of the line with character "X"
+- ** .dt %*X .dd soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** Date format expressions can be constructed based on relative dates. Using
+- ** the date formatting operators along with nested conditionals, the date
+- ** format can be modified based on how old a message is. See the section on
+- ** "Conditional Dates" for an explanation and examples
+- ** .pp
+- ** Note that for mbox/mmdf, ``%l'' applies to the unprocessed message, and
+- ** for maildir/mh, the value comes from the ``Lines:'' header field when
+- ** present (the meaning is normally the same). Thus the value depends on
+- ** the encodings used in the different parts of the message and has little
+- ** meaning in practice.
+- ** .pp
+- ** "Soft-fill" deserves some explanation: Normal right-justification
+- ** will print everything to the left of the "%>", displaying padding and
+- ** whatever lies to the right only if there's room. By contrast,
+- ** soft-fill gives priority to the right-hand side, guaranteeing space
+- ** to display it and showing padding only if there's still room. If
+- ** necessary, soft-fill will eat text leftwards to make room for
+- ** rightward text.
+- ** .pp
+- ** Note that these expandos are supported in
+- ** ``$save-hook'', ``$fcc-hook'' and ``$fcc-save-hook'', too.
+- */
+-#ifdef USE_NNTP
+- { "inews", DT_STRING|DT_COMMAND, &C_Inews, 0 },
+- /*
+- ** .pp
+- ** If set, specifies the program and arguments used to deliver news posted
+- ** by NeoMutt. Otherwise, NeoMutt posts article using current connection to
+- ** news server. The following printf-style sequence is understood:
+- ** .dl
+- ** .dt %a .dd account url
+- ** .dt %p .dd port
+- ** .dt %P .dd port if specified
+- ** .dt %s .dd news server name
+- ** .dt %S .dd url schema
+- ** .dt %u .dd username
+- ** .de
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set inews="/usr/local/bin/inews -hS"
+- ** .te
+- */
+-#endif
+- { "ispell", DT_STRING|DT_COMMAND, &C_Ispell, IP ISPELL },
+- /*
+- ** .pp
+- ** How to invoke ispell (GNU's spell-checking software).
+- */
+- { "keep_flagged", DT_BOOL, &C_KeepFlagged, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, read messages marked as flagged will not be moved
+- ** from your spool mailbox to your $$mbox mailbox, or as a result of
+- ** a "$mbox-hook" command.
+- */
+- { "mail_check", DT_NUMBER|DT_NOT_NEGATIVE, &C_MailCheck, 5 },
+- /*
+- ** .pp
+- ** This variable configures how often (in seconds) NeoMutt should look for
+- ** new mail. Also see the $$timeout variable.
+- */
+- { "mail_check_recent", DT_BOOL, &C_MailCheckRecent, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will only notify you about new mail that has been received
+- ** since the last time you opened the mailbox. When \fIunset\fP, NeoMutt will notify you
+- ** if any new mail exists in the mailbox, regardless of whether you have visited it
+- ** recently.
+- ** .pp
+- ** When \fI$$mark_old\fP is set, NeoMutt does not consider the mailbox to contain new
+- ** mail if only old messages exist.
+- */
+- { "mail_check_stats", DT_BOOL, &C_MailCheckStats, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will periodically calculate message
+- ** statistics of a mailbox while polling for new mail. It will
+- ** check for unread, flagged, and total message counts. Because
+- ** this operation is more performance intensive, it defaults to
+- ** \fIunset\fP, and has a separate option, $$mail_check_stats_interval, to
+- ** control how often to update these counts.
+- ** .pp
+- ** Message statistics can also be explicitly calculated by invoking the
+- ** \fC<check-stats>\fP function.
+- */
+- { "mail_check_stats_interval", DT_NUMBER|DT_NOT_NEGATIVE, &C_MailCheckStatsInterval, 60 },
+- /*
+- ** .pp
+- ** When $$mail_check_stats is \fIset\fP, this variable configures
+- ** how often (in seconds) NeoMutt will update message counts.
+- */
+- { "mailcap_path", DT_SLIST|SLIST_SEP_COLON, &C_MailcapPath, IP "~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap" },
+- /*
+- ** .pp
+- ** This variable specifies which files to consult when attempting to
+- ** display MIME bodies not directly supported by NeoMutt. The default value
+- ** is generated during startup: see the ``$mailcap'' section of the manual.
+- ** .pp
+- ** $$mailcap_path is overridden by the environment variable \fC$$$MAILCAPS\fP.
+- ** .pp
+- ** The default search path is from RFC1524.
+- */
+- { "mailcap_sanitize", DT_BOOL, &C_MailcapSanitize, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will restrict possible characters in mailcap % expandos
+- ** to a well-defined set of safe characters. This is the safe setting,
+- ** but we are not sure it doesn't break some more advanced MIME stuff.
+- ** .pp
+- ** \fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
+- ** DOING!\fP
+- */
+- { "maildir_check_cur", DT_BOOL, &C_MaildirCheckCur, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will poll both the new and cur directories of
+- ** a maildir folder for new messages. This might be useful if other
+- ** programs interacting with the folder (e.g. dovecot) are moving new
+- ** messages to the cur directory. Note that setting this option may
+- ** slow down polling for new messages in large folders, since NeoMutt has
+- ** to scan all cur messages.
+- */
+-#ifdef USE_HCACHE
+- { "maildir_header_cache_verify", DT_BOOL, &C_MaildirHeaderCacheVerify, true },
+- /*
+- ** .pp
+- ** Check for Maildir unaware programs other than NeoMutt having modified maildir
+- ** files when the header cache is in use. This incurs one \fCstat(2)\fP per
+- ** message every time the folder is opened (which can be very slow for NFS
+- ** folders).
+- */
+-#endif
+- { "maildir_trash", DT_BOOL, &C_MaildirTrash, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, messages marked as deleted will be saved with the maildir
+- ** trashed flag instead of unlinked. \fBNote:\fP this only applies
+- ** to maildir-style mailboxes. Setting it will have no effect on other
+- ** mailbox types.
+- */
+- { "mark_macro_prefix", DT_STRING, &C_MarkMacroPrefix, IP "'" },
+- /*
+- ** .pp
+- ** Prefix for macros created using mark-message. A new macro
+- ** automatically generated with \fI<mark-message>a\fP will be composed
+- ** from this prefix and the letter \fIa\fP.
+- */
+- { "mark_old", DT_BOOL|R_INDEX|R_PAGER, &C_MarkOld, true },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt marks \fInew\fP \fBunread\fP
+- ** messages as \fIold\fP if you exit a mailbox without reading them.
+- ** With this option \fIset\fP, the next time you start NeoMutt, the messages
+- ** will show up with an "O" next to them in the index menu,
+- ** indicating that they are old.
+- */
+- { "markers", DT_BOOL|R_PAGER_FLOW, &C_Markers, true },
+- /*
+- ** .pp
+- ** Controls the display of wrapped lines in the internal pager. If set, a
+- ** "+" marker is displayed at the beginning of wrapped lines.
+- ** .pp
+- ** Also see the $$smart_wrap variable.
+- */
+- { "mask", DT_REGEX|DT_REGEX_MATCH_CASE|DT_REGEX_ALLOW_NOT|DT_REGEX_NOSUB, &C_Mask, IP "!^\\.[^.]" },
+- /*
+- ** .pp
+- ** A regular expression used in the file browser, optionally preceded by
+- ** the \fInot\fP operator "!". Only files whose names match this mask
+- ** will be shown. The match is always case-sensitive.
+- */
+- { "mbox", DT_STRING|DT_PATH|DT_MAILBOX|R_INDEX|R_PAGER, &C_Mbox, IP "~/mbox" },
+- /*
+- ** .pp
+- ** This specifies the folder into which read mail in your $$spoolfile
+- ** folder will be appended.
+- ** .pp
+- ** Also see the $$move variable.
+- */
+- { "mbox_type", DT_ENUM, &C_MboxType, MUTT_MBOX, IP &MagicDef },
+- /*
+- ** .pp
+- ** The default mailbox type used when creating new folders. May be any of
+- ** "mbox", "MMDF", "MH" or "Maildir".
+- ** .pp
+- ** This can also be set using the \fC-m\fP command-line option.
+- */
+- { "menu_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_MenuContext, 0 },
+- /*
+- ** .pp
+- ** This variable controls the number of lines of context that are given
+- ** when scrolling through menus. (Similar to $$pager_context.)
+- */
+- { "menu_move_off", DT_BOOL, &C_MenuMoveOff, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, the bottom entry of menus will never scroll up past
+- ** the bottom of the screen, unless there are less entries than lines.
+- ** When \fIset\fP, the bottom entry may move off the bottom.
+- */
+- { "menu_scroll", DT_BOOL, &C_MenuScroll, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, menus will be scrolled up or down one line when you
+- ** attempt to move across a screen boundary. If \fIunset\fP, the screen
+- ** is cleared and the next or previous page of the menu is displayed
+- ** (useful for slow links to avoid many redraws).
+- */
+-#if defined(USE_IMAP) || defined(USE_POP)
+- { "message_cache_clean", DT_BOOL, &C_MessageCacheClean, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will clean out obsolete entries from the message cache when
+- ** the mailbox is synchronized. You probably only want to set it
+- ** every once in a while, since it can be a little slow
+- ** (especially for large folders).
+- */
+- { "message_cachedir", DT_STRING|DT_PATH, &C_MessageCachedir, 0 },
+- /*
+- ** .pp
+- ** Set this to a directory and NeoMutt will cache copies of messages from
+- ** your IMAP and POP servers here. You are free to remove entries at any
+- ** time.
+- ** .pp
+- ** When setting this variable to a directory, NeoMutt needs to fetch every
+- ** remote message only once and can perform regular expression searches
+- ** as fast as for local folders.
+- ** .pp
+- ** Also see the $$message_cache_clean variable.
+- */
+-#endif
+- { "message_format", DT_STRING|DT_NOT_EMPTY, &C_MessageFormat, IP "%s" },
+- /*
+- ** .pp
+- ** This is the string displayed in the "attachment" menu for
+- ** attachments of type \fCmessage/rfc822\fP. For a full listing of defined
+- ** \fCprintf(3)\fP-like sequences see the section on $$index_format.
+- */
+- { "meta_key", DT_BOOL, &C_MetaKey, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, forces NeoMutt to interpret keystrokes with the high bit (bit 8)
+- ** set as if the user had pressed the Esc key and whatever key remains
+- ** after having the high bit removed. For example, if the key pressed
+- ** has an ASCII value of \fC0xf8\fP, then this is treated as if the user had
+- ** pressed Esc then "x". This is because the result of removing the
+- ** high bit from \fC0xf8\fP is \fC0x78\fP, which is the ASCII character
+- ** "x".
+- */
+- { "metoo", DT_BOOL, &C_Metoo, false },
+- /*
+- ** .pp
+- ** If \fIunset\fP, NeoMutt will remove your address (see the "$alternates"
+- ** command) from the list of recipients when replying to a message.
+- */
+- { "mh_purge", DT_BOOL, &C_MhPurge, false },
+- /*
+- ** .pp
+- ** When \fIunset\fP, NeoMutt will mimic mh's behavior and rename deleted messages
+- ** to \fI,<old file name>\fP in mh folders instead of really deleting
+- ** them. This leaves the message on disk but makes programs reading the folder
+- ** ignore it. If the variable is \fIset\fP, the message files will simply be
+- ** deleted.
+- ** .pp
+- ** This option is similar to $$maildir_trash for Maildir folders.
+- */
+- { "mh_seq_flagged", DT_STRING, &C_MhSeqFlagged, IP "flagged" },
+- /*
+- ** .pp
+- ** The name of the MH sequence used for flagged messages.
+- */
+- { "mh_seq_replied", DT_STRING, &C_MhSeqReplied, IP "replied" },
+- /*
+- ** .pp
+- ** The name of the MH sequence used to tag replied messages.
+- */
+- { "mh_seq_unseen", DT_STRING, &C_MhSeqUnseen, IP "unseen" },
+- /*
+- ** .pp
+- ** The name of the MH sequence used for unseen messages.
+- */
+- { "mime_forward", DT_QUAD, &C_MimeForward, MUTT_NO },
+- /*
+- ** .pp
+- ** When \fIset\fP, the message you are forwarding will be attached as a
+- ** separate \fCmessage/rfc822\fP MIME part instead of included in the main body of the
+- ** message. This is useful for forwarding MIME messages so the receiver
+- ** can properly view the message as it was delivered to you. If you like
+- ** to switch between MIME and not MIME from mail to mail, set this
+- ** variable to "ask-no" or "ask-yes".
+- ** .pp
+- ** Also see $$forward_decode and $$mime_forward_decode.
+- */
+- { "mime_forward_decode", DT_BOOL, &C_MimeForwardDecode, false },
+- /*
+- ** .pp
+- ** Controls the decoding of complex MIME messages into \fCtext/plain\fP when
+- ** forwarding a message while $$mime_forward is \fIset\fP. Otherwise
+- ** $$forward_decode is used instead.
+- */
+- { "mime_forward_rest", DT_QUAD, &C_MimeForwardRest, MUTT_YES },
+- /*
+- ** .pp
+- ** When forwarding multiple attachments of a MIME message from the attachment
+- ** menu, attachments which can't be decoded in a reasonable manner will
+- ** be attached to the newly composed message if this option is \fIset\fP.
+- */
+-#ifdef USE_NNTP
+- { "mime_subject", DT_BOOL, &C_MimeSubject, true },
+- /*
+- ** .pp
+- ** If \fIunset\fP, 8-bit "subject:" line in article header will not be
+- ** encoded according to RFC2047 to base64. This is useful when message
+- ** is Usenet article, because MIME for news is nonstandard feature.
+- */
+-#endif
+- { "mime_type_query_command", DT_STRING|DT_COMMAND, &C_MimeTypeQueryCommand, 0 },
+- /*
+- ** .pp
+- ** This specifies a command to run, to determine the mime type of a
+- ** new attachment when composing a message. Unless
+- ** $$mime_type_query_first is set, this will only be run if the
+- ** attachment's extension is not found in the mime.types file.
+- ** .pp
+- ** The string may contain a "%s", which will be substituted with the
+- ** attachment filename. NeoMutt will add quotes around the string substituted
+- ** for "%s" automatically according to shell quoting rules, so you should
+- ** avoid adding your own. If no "%s" is found in the string, NeoMutt will
+- ** append the attachment filename to the end of the string.
+- ** .pp
+- ** The command should output a single line containing the
+- ** attachment's mime type.
+- ** .pp
+- ** Suggested values are "xdg-mime query filetype" or
+- ** "file -bi".
+- */
+- { "mime_type_query_first", DT_BOOL, &C_MimeTypeQueryFirst, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, the $$mime_type_query_command will be run before the
+- ** mime.types lookup.
+- */
+-#ifdef MIXMASTER
+- { "mix_entry_format", DT_STRING|DT_NOT_EMPTY, &C_MixEntryFormat, IP "%4n %c %-16s %a" },
+- /*
+- ** .pp
+- ** This variable describes the format of a remailer line on the mixmaster
+- ** chain selection screen. The following \fCprintf(3)\fP-like sequences are
+- ** supported:
+- ** .dl
+- ** .dt %a .dd The remailer's e-mail address
+- ** .dt %c .dd Remailer capabilities
+- ** .dt %n .dd The running number on the menu
+- ** .dt %s .dd The remailer's short name
+- ** .de
+- */
+- { "mixmaster", DT_STRING|DT_COMMAND, &C_Mixmaster, IP MIXMASTER },
+- /*
+- ** .pp
+- ** This variable contains the path to the Mixmaster binary on your
+- ** system. It is used with various sets of parameters to gather the
+- ** list of known remailers, and to finally send a message through the
+- ** mixmaster chain.
+- */
+-#endif
+- { "move", DT_QUAD, &C_Move, MUTT_NO },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt will move read messages
+- ** from your spool mailbox to your $$mbox mailbox, or as a result of
+- ** a "$mbox-hook" command.
+- */
+- { "narrow_tree", DT_BOOL|R_TREE|R_INDEX, &C_NarrowTree, false },
+- /*
+- ** .pp
+- ** This variable, when \fIset\fP, makes the thread tree narrower, allowing
+- ** deeper threads to fit on the screen.
+- */
+-#ifdef USE_SOCKET
+- { "net_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_NetInc, 10 },
+- /*
+- ** .pp
+- ** Operations that expect to transfer a large amount of data over the
+- ** network will update their progress every $$net_inc kilobytes.
+- ** If set to 0, no progress messages will be displayed.
+- ** .pp
+- ** See also $$read_inc, $$write_inc and $$net_inc.
+- */
+-#endif
+- { "new_mail_command", DT_STRING|DT_COMMAND, &C_NewMailCommand, 0 },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will call this command after a new message is received.
+- ** See the $$status_format documentation for the values that can be formatted
+- ** into this command.
+- */
+-#ifdef USE_NNTP
+- { "news_cache_dir", DT_STRING|DT_PATH, &C_NewsCacheDir, IP "~/.neomutt" },
+- /*
+- ** .pp
+- ** This variable pointing to directory where NeoMutt will save cached news
+- ** articles and headers in. If \fIunset\fP, articles and headers will not be
+- ** saved at all and will be reloaded from the server each time.
+- */
+- { "news_server", DT_STRING, &C_NewsServer, 0 },
+- /*
+- ** .pp
+- ** This variable specifies domain name or address of NNTP server.
+- ** .pp
+- ** You can also specify username and an alternative port for each news server,
+- ** e.g. \fC[[s]news://][username[:password]@]server[:port]\fP
+- ** .pp
+- ** This option can also be set using the command line option "-g", the
+- ** environment variable \fC$$$NNTPSERVER\fP, or putting the server name in the
+- ** file "/etc/nntpserver".
+- */
+- { "newsgroups_charset", DT_STRING, &C_NewsgroupsCharset, IP "utf-8", 0, charset_validator },
+- /*
+- ** .pp
+- ** Character set of newsgroups descriptions.
+- */
+- { "newsrc", DT_STRING|DT_PATH, &C_Newsrc, IP "~/.newsrc" },
+- /*
+- ** .pp
+- ** The file, containing info about subscribed newsgroups - names and
+- ** indexes of read articles. The following printf-style sequence
+- ** is understood:
+- ** .dl
+- ** .dt \fBExpando\fP .dd \fBDescription\fP .dd \fBExample\fP
+- ** .dt %a .dd Account url .dd \fCnews:news.gmane.org\fP
+- ** .dt %p .dd Port .dd \fC119\fP
+- ** .dt %P .dd Port if specified .dd \fC10119\fP
+- ** .dt %s .dd News server name .dd \fCnews.gmane.org\fP
+- ** .dt %S .dd Url schema .dd \fCnews\fP
+- ** .dt %u .dd Username .dd \fCusername\fP
+- ** .de
+- */
+-#endif
+-#ifdef USE_NOTMUCH
+- { "nm_db_limit", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmDbLimit, 0 },
+- /*
+- ** .pp
+- ** This variable specifies the default limit used in notmuch queries.
+- */
+- { "nm_default_uri", DT_STRING, &C_NmDefaultUri, 0 },
+- /*
+- ** .pp
+- ** This variable specifies the default Notmuch database in format
+- ** notmuch://<absolute path>.
+- */
+- { "nm_exclude_tags", DT_STRING, &C_NmExcludeTags, 0 },
+- /*
+- ** .pp
+- ** The messages tagged with these tags are excluded and not loaded
+- ** from notmuch DB to NeoMutt unless specified explicitly.
+- */
+- { "nm_flagged_tag", DT_STRING, &C_NmFlaggedTag, IP "flagged" },
+- /*
+- ** .pp
+- ** This variable specifies notmuch tag which is used for flagged messages. The
+- ** variable is used to count flagged messages in DB and set the flagged flag when
+- ** modifying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
+- */
+- { "nm_open_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmOpenTimeout, 5 },
+- /*
+- ** .pp
+- ** This variable specifies the timeout for database open in seconds.
+- */
+- { "nm_query_type", DT_STRING, &C_NmQueryType, IP "messages" },
+- /*
+- ** .pp
+- ** This variable specifies the default query type (threads or messages) used in notmuch queries.
+- */
+- { "nm_query_window_current_position", DT_NUMBER, &C_NmQueryWindowCurrentPosition, 0 },
+- /*
+- ** .pp
+- ** This variable contains the position of the current search for window based vfolder.
+- */
+- { "nm_query_window_current_search", DT_STRING, &C_NmQueryWindowCurrentSearch, 0 },
+- /*
+- ** .pp
+- ** This variable contains the currently setup notmuch search for window based vfolder.
+- */
+- { "nm_query_window_duration", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmQueryWindowDuration, 0 },
+- /*
+- ** .pp
+- ** This variable sets the time duration of a windowed notmuch query.
+- ** Accepted values all non negative integers. A value of 0 disables the feature.
+- */
+- { "nm_query_window_timebase", DT_STRING, &C_NmQueryWindowTimebase, IP "week" },
+- /*
+- ** .pp
+- ** This variable sets the time base of a windowed notmuch query.
+- ** Accepted values are 'minute', 'hour', 'day', 'week', 'month', 'year'
+- */
+- { "nm_record", DT_BOOL, &C_NmRecord, false },
+- /*
+- ** .pp
+- ** This variable specifies if the NeoMutt record should indexed by notmuch.
+- */
+- { "nm_record_tags", DT_STRING, &C_NmRecordTags, 0 },
+- /*
+- ** .pp
+- ** This variable specifies the default tags applied to messages stored to the NeoMutt record.
+- ** When set to 0 this variable disable the window feature.
+- */
+- { "nm_replied_tag", DT_STRING, &C_NmRepliedTag, IP "replied" },
+- /*
+- ** .pp
+- ** This variable specifies notmuch tag which is used for replied messages. The
+- ** variable is used to set the replied flag when modifiying tags. All other NeoMutt
+- ** commands use standard (e.g. maildir) flags.
+- */
+- { "nm_unread_tag", DT_STRING, &C_NmUnreadTag, IP "unread" },
+- /*
+- ** .pp
+- ** This variable specifies notmuch tag which is used for unread messages. The
+- ** variable is used to count unread messages in DB and set the unread flag when
+- ** modifiying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
+- */
+-#endif
+-#ifdef USE_NNTP
+- { "nntp_authenticators", DT_STRING, &C_NntpAuthenticators, 0 },
+- /*
+- ** .pp
+- ** This is a colon-delimited list of authentication methods NeoMutt may
+- ** attempt to use to log in to a news server, in the order NeoMutt should
+- ** try them. Authentication methods are either "user" or any
+- ** SASL mechanism, e.g. "digest-md5", "gssapi" or "cram-md5".
+- ** This option is case-insensitive. If it's \fIunset\fP (the default)
+- ** NeoMutt will try all available methods, in order from most-secure to
+- ** least-secure.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set nntp_authenticators="digest-md5:user"
+- ** .te
+- ** .pp
+- ** \fBNote:\fP NeoMutt will only fall back to other authentication methods if
+- ** the previous methods are unavailable. If a method is available but
+- ** authentication fails, NeoMutt will not connect to the IMAP server.
+- */
+- { "nntp_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_NntpContext, 1000 },
+- /*
+- ** .pp
+- ** This variable defines number of articles which will be in index when
+- ** newsgroup entered. If active newsgroup have more articles than this
+- ** number, oldest articles will be ignored. Also controls how many
+- ** articles headers will be saved in cache when you quit newsgroup.
+- */
+- { "nntp_listgroup", DT_BOOL, &C_NntpListgroup, true },
+- /*
+- ** .pp
+- ** This variable controls whether or not existence of each article is
+- ** checked when newsgroup is entered.
+- */
+- { "nntp_load_description", DT_BOOL, &C_NntpLoadDescription, true },
+- /*
+- ** .pp
+- ** This variable controls whether or not descriptions for each newsgroup
+- ** must be loaded when newsgroup is added to list (first time list
+- ** loading or new newsgroup adding).
+- */
+- { "nntp_pass", DT_STRING|DT_SENSITIVE, &C_NntpPass, 0 },
+- /*
+- ** .pp
+- ** Your password for NNTP account.
+- */
+- { "nntp_poll", DT_NUMBER|DT_NOT_NEGATIVE, &C_NntpPoll, 60 },
+- /*
+- ** .pp
+- ** The time in seconds until any operations on newsgroup except post new
+- ** article will cause recheck for new news. If set to 0, NeoMutt will
+- ** recheck newsgroup on each operation in index (stepping, read article,
+- ** etc.).
+- */
+- { "nntp_user", DT_STRING|DT_SENSITIVE, &C_NntpUser, 0 },
+- /*
+- ** .pp
+- ** Your login name on the NNTP server. If \fIunset\fP and NNTP server requires
+- ** authentication, NeoMutt will prompt you for your account name when you
+- ** connect to news server.
+- */
+-#endif
+- { "pager", DT_STRING|DT_COMMAND, &C_Pager, IP "builtin" },
+- /*
+- ** .pp
+- ** This variable specifies which pager you would like to use to view
+- ** messages. The value "builtin" means to use the built-in pager, otherwise this
+- ** variable should specify the pathname of the external pager you would
+- ** like to use.
+- ** .pp
+- ** Using an external pager may have some disadvantages: Additional
+- ** keystrokes are necessary because you can't call NeoMutt functions
+- ** directly from the pager, and screen resizes cause lines longer than
+- ** the screen width to be badly formatted in the help menu.
+- */
+- { "pager_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_PagerContext, 0 },
+- /*
+- ** .pp
+- ** This variable controls the number of lines of context that are given
+- ** when displaying the next or previous page in the internal pager. By
+- ** default, NeoMutt will display the line after the last one on the screen
+- ** at the top of the next page (0 lines of context).
+- ** .pp
+- ** This variable also specifies the amount of context given for search
+- ** results. If positive, this many lines will be given before a match,
+- ** if 0, the match will be top-aligned.
+- */
+- { "pager_format", DT_STRING|R_PAGER, &C_PagerFormat, IP "-%Z- %C/%m: %-20.20n %s%* -- (%P)" },
+- /*
+- ** .pp
+- ** This variable controls the format of the one-line message "status"
+- ** displayed before each message in either the internal or an external
+- ** pager. The valid sequences are listed in the $$index_format
+- ** section.
+- */
+- { "pager_index_lines", DT_NUMBER|DT_NOT_NEGATIVE|R_PAGER, &C_PagerIndexLines, 0 },
+- /*
+- ** .pp
+- ** Determines the number of lines of a mini-index which is shown when in
+- ** the pager. The current message, unless near the top or bottom of the
+- ** folder, will be roughly one third of the way down this mini-index,
+- ** giving the reader the context of a few messages before and after the
+- ** message. This is useful, for example, to determine how many messages
+- ** remain to be read in the current thread. One of the lines is reserved
+- ** for the status bar from the index, so a setting of 6
+- ** will only show 5 lines of the actual index. A value of 0 results in
+- ** no index being shown. If the number of messages in the current folder
+- ** is less than $$pager_index_lines, then the index will only use as
+- ** many lines as it needs.
+- */
+- { "pager_stop", DT_BOOL, &C_PagerStop, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, the internal-pager will \fBnot\fP move to the next message
+- ** when you are at the end of a message and invoke the \fC<next-page>\fP
+- ** function.
+- */
+- { "pgp_auto_decode", DT_BOOL, &C_PgpAutoDecode, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will automatically attempt to decrypt traditional PGP
+- ** messages whenever the user performs an operation which ordinarily would
+- ** result in the contents of the message being operated on. For example,
+- ** if the user displays a pgp-traditional message which has not been manually
+- ** checked with the \fC$<check-traditional-pgp>\fP function, NeoMutt will automatically
+- ** check the message for traditional pgp.
+- */
+- { "pgp_autoinline", DT_BOOL, &C_PgpAutoinline, false },
+- /*
+- ** .pp
+- ** This option controls whether NeoMutt generates old-style inline
+- ** (traditional) PGP encrypted or signed messages under certain
+- ** circumstances. This can be overridden by use of the pgp menu,
+- ** when inline is not required. The GPGME backend does not support
+- ** this option.
+- ** .pp
+- ** Note that NeoMutt might automatically use PGP/MIME for messages
+- ** which consist of more than a single MIME part. NeoMutt can be
+- ** configured to ask before sending PGP/MIME messages when inline
+- ** (traditional) would not work.
+- ** .pp
+- ** Also see the $$pgp_mime_auto variable.
+- ** .pp
+- ** Also note that using the old-style PGP message format is \fBstrongly\fP
+- ** \fBdeprecated\fP.
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_check_exit", DT_BOOL, &C_PgpCheckExit, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will check the exit code of the PGP subprocess when
+- ** signing or encrypting. A non-zero exit code means that the
+- ** subprocess failed.
+- ** (PGP only)
+- */
+- { "pgp_check_gpg_decrypt_status_fd", DT_BOOL, &C_PgpCheckGpgDecryptStatusFd, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will check the status file descriptor output
+- ** of $$pgp_decrypt_command and $$pgp_decode_command for GnuPG status codes
+- ** indicating successful decryption. This will check for the presence of
+- ** DECRYPTION_OKAY, absence of DECRYPTION_FAILED, and that all
+- ** PLAINTEXT occurs between the BEGIN_DECRYPTION and END_DECRYPTION
+- ** status codes.
+- ** .pp
+- ** If \fIunset\fP, NeoMutt will instead match the status fd output
+- ** against $$pgp_decryption_okay.
+- ** (PGP only)
+- */
+- { "pgp_clearsign_command", DT_STRING|DT_COMMAND, &C_PgpClearsignCommand, 0 },
+- /*
+- ** .pp
+- ** This format is used to create an old-style "clearsigned" PGP
+- ** message. Note that the use of this format is \fBstrongly\fP
+- ** \fBdeprecated\fP.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** Note that in this case, %r expands to the search string, which is a list of
+- ** one or more quoted values such as email address, name, or keyid.
+- ** (PGP only)
+- */
+- { "pgp_decode_command", DT_STRING|DT_COMMAND, &C_PgpDecodeCommand, 0 },
+- /*
+- ** .pp
+- ** This format strings specifies a command which is used to decode
+- ** application/pgp attachments.
+- ** .pp
+- ** The PGP command formats have their own set of \fCprintf(3)\fP-like sequences:
+- ** .dl
+- ** .dt %p .dd Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
+- ** string otherwise. Note: This may be used with a %? construct.
+- ** .dt %f .dd Expands to the name of a file containing a message.
+- ** .dt %s .dd Expands to the name of a file containing the signature part
+- ** . of a \fCmultipart/signed\fP attachment when verifying it.
+- ** .dt %a .dd The value of $$pgp_sign_as if set, otherwise the value
+- ** of $$pgp_default_key.
+- ** .dt %r .dd One or more key IDs (or fingerprints if available).
+- ** .de
+- ** .pp
+- ** For examples on how to configure these formats for the various versions
+- ** of PGP which are floating around, see the pgp and gpg sample configuration files in
+- ** the \fCsamples/\fP subdirectory which has been installed on your system
+- ** alongside the documentation.
+- ** (PGP only)
+- */
+- { "pgp_decrypt_command", DT_STRING|DT_COMMAND, &C_PgpDecryptCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to decrypt a PGP encrypted message.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- ** .pp
+- ** Note: When decrypting messages using \fCgpg\fP, a pinentry program needs to
+- ** be invoked unless the password is cached within \fCgpg-agent\fP.
+- ** Currently, the \fCpinentry-tty\fP program (usually distributed with
+- ** \fCgpg\fP) isn't suitable for being invoked by NeoMutt. You are encouraged
+- ** to use a different pinentry-program when running NeoMutt in order to avoid
+- ** problems.
+- ** .pp
+- ** See also: https://github.com/neomutt/neomutt/issues/1014
+- */
+- { "pgp_decryption_okay", DT_REGEX, &C_PgpDecryptionOkay, 0 },
+- /*
+- ** .pp
+- ** If you assign text to this variable, then an encrypted PGP
+- ** message is only considered successfully decrypted if the output
+- ** from $$pgp_decrypt_command contains the text. This is used to
+- ** protect against a spoofed encrypted message, with multipart/encrypted
+- ** headers but containing a block that is not actually encrypted.
+- ** (e.g. simply signed and ascii armored text).
+- ** .pp
+- ** Note that if $$pgp_check_gpg_decrypt_status_fd is set, this variable
+- ** is ignored.
+- ** (PGP only)
+- */
+-#endif
+- { "pgp_default_key", DT_STRING, &C_PgpDefaultKey, 0 },
+- /*
+- ** .pp
+- ** This is the default key-pair to use for PGP operations. It will be
+- ** used for encryption (see $$postpone_encrypt and $$pgp_self_encrypt).
+- ** .pp
+- ** It will also be used for signing unless $$pgp_sign_as is set.
+- ** .pp
+- ** The (now deprecated) \fIpgp_self_encrypt_as\fP is an alias for this
+- ** variable, and should no longer be used.
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_encrypt_only_command", DT_STRING|DT_COMMAND, &C_PgpEncryptOnlyCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to encrypt a body part without signing it.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** Note that in this case, %r expands to the search string, which is a list of
+- ** one or more quoted values such as email address, name, or keyid.
+- ** (PGP only)
+- */
+- { "pgp_encrypt_sign_command", DT_STRING|DT_COMMAND, &C_PgpEncryptSignCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to both sign and encrypt a body part.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+-#endif
+- { "pgp_entry_format", DT_STRING|DT_NOT_EMPTY, &C_PgpEntryFormat, IP "%4n %t%f %4l/0x%k %-4a %2c %u" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the PGP key selection menu to
+- ** your personal taste. This string is similar to $$index_format, but
+- ** has its own set of \fCprintf(3)\fP-like sequences:
+- ** .dl
+- ** .dt %a .dd Algorithm
+- ** .dt %c .dd Capabilities
+- ** .dt %f .dd Flags
+- ** .dt %k .dd Key id
+- ** .dt %l .dd Key length
+- ** .dt %n .dd Number
+- ** .dt %p .dd Protocol
+- ** .dt %t .dd Trust/validity of the key-uid association
+- ** .dt %u .dd User id
+- ** .dt %[<s>] .dd Date of the key where <s> is an \fCstrftime(3)\fP expression
+- ** .de
+- ** .pp
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_export_command", DT_STRING|DT_COMMAND, &C_PgpExportCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to export a public key from the user's
+- ** key ring.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+- { "pgp_getkeys_command", DT_STRING|DT_COMMAND, &C_PgpGetkeysCommand, 0 },
+- /*
+- ** .pp
+- ** This command is invoked whenever NeoMutt needs to fetch the public key associated with
+- ** an email address. Of the sequences supported by $$pgp_decode_command, %r is
+- ** the only \fCprintf(3)\fP-like sequence used with this format. Note that
+- ** in this case, %r expands to the email address, not the public key ID (the key ID is
+- ** unknown, which is why NeoMutt is invoking this command).
+- ** (PGP only)
+- */
+- { "pgp_good_sign", DT_REGEX, &C_PgpGoodSign, 0 },
+- /*
+- ** .pp
+- ** If you assign a text to this variable, then a PGP signature is only
+- ** considered verified if the output from $$pgp_verify_command contains
+- ** the text. Use this variable if the exit code from the command is 0
+- ** even for bad signatures.
+- ** (PGP only)
+- */
+-#endif
+- { "pgp_ignore_subkeys", DT_BOOL, &C_PgpIgnoreSubkeys, true },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to ignore OpenPGP subkeys. Instead,
+- ** the principal key will inherit the subkeys' capabilities. \fIUnset\fP this
+- ** if you want to play interesting key selection games.
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_import_command", DT_STRING|DT_COMMAND, &C_PgpImportCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to import a key from a message into
+- ** the user's public key ring.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+- { "pgp_list_pubring_command", DT_STRING|DT_COMMAND, &C_PgpListPubringCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to list the public key ring's contents. The
+- ** output format must be analogous to the one used by
+- ** .ts
+- ** gpg --list-keys --with-colons --with-fingerprint
+- ** .te
+- ** .pp
+- ** Note: gpg's \fCfixed-list-mode\fP option should not be used. It
+- ** produces a different date format which may result in NeoMutt showing
+- ** incorrect key generation dates.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+- { "pgp_list_secring_command", DT_STRING|DT_COMMAND, &C_PgpListSecringCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to list the secret key ring's contents. The
+- ** output format must be analogous to the one used by:
+- ** .ts
+- ** gpg --list-keys --with-colons --with-fingerprint
+- ** .te
+- ** .pp
+- ** Note: gpg's \fCfixed-list-mode\fP option should not be used. It
+- ** produces a different date format which may result in NeoMutt showing
+- ** incorrect key generation dates.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+-#endif
+- { "pgp_long_ids", DT_BOOL, &C_PgpLongIds, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, use 64 bit PGP key IDs, if \fIunset\fP use the normal 32 bit key IDs.
+- ** NOTE: Internally, NeoMutt has transitioned to using fingerprints (or long key IDs
+- ** as a fallback). This option now only controls the display of key IDs
+- ** in the key selection menu and a few other places.
+- ** (PGP only)
+- */
+- { "pgp_mime_auto", DT_QUAD, &C_PgpMimeAuto, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** This option controls whether NeoMutt will prompt you for
+- ** automatically sending a (signed/encrypted) message using
+- ** PGP/MIME when inline (traditional) fails (for any reason).
+- ** .pp
+- ** Also note that using the old-style PGP message format is \fBstrongly\fP
+- ** \fBdeprecated\fP.
+- ** (PGP only)
+- */
+- { "pgp_replyinline", DT_BOOL, &C_PgpReplyinline, false },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to always attempt to
+- ** create an inline (traditional) message when replying to a
+- ** message which is PGP encrypted/signed inline. This can be
+- ** overridden by use of the pgp menu, when inline is not
+- ** required. This option does not automatically detect if the
+- ** (replied-to) message is inline; instead it relies on NeoMutt
+- ** internals for previously checked/flagged messages.
+- ** .pp
+- ** Note that NeoMutt might automatically use PGP/MIME for messages
+- ** which consist of more than a single MIME part. NeoMutt can be
+- ** configured to ask before sending PGP/MIME messages when inline
+- ** (traditional) would not work.
+- ** .pp
+- ** Also see the $$pgp_mime_auto variable.
+- ** .pp
+- ** Also note that using the old-style PGP message format is \fBstrongly\fP
+- ** \fBdeprecated\fP.
+- ** (PGP only)
+- */
+- { "pgp_retainable_sigs", DT_BOOL, &C_PgpRetainableSigs, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, signed and encrypted messages will consist of nested
+- ** \fCmultipart/signed\fP and \fCmultipart/encrypted\fP body parts.
+- ** .pp
+- ** This is useful for applications like encrypted and signed mailing
+- ** lists, where the outer layer (\fCmultipart/encrypted\fP) can be easily
+- ** removed, while the inner \fCmultipart/signed\fP part is retained.
+- ** (PGP only)
+- */
+- { "pgp_self_encrypt", DT_BOOL, &C_PgpSelfEncrypt, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, PGP encrypted messages will also be encrypted
+- ** using the key in $$pgp_default_key.
+- ** (PGP only)
+- */
+- { "pgp_show_unusable", DT_BOOL, &C_PgpShowUnusable, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will display non-usable keys on the PGP key selection
+- ** menu. This includes keys which have been revoked, have expired, or
+- ** have been marked as "disabled" by the user.
+- ** (PGP only)
+- */
+- { "pgp_sign_as", DT_STRING, &C_PgpSignAs, 0 },
+- /*
+- ** .pp
+- ** If you have a different key pair to use for signing, you should
+- ** set this to the signing key. Most people will only need to set
+- ** $$pgp_default_key. It is recommended that you use the keyid form
+- ** to specify your key (e.g. \fC0x00112233\fP).
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_sign_command", DT_STRING|DT_COMMAND, &C_PgpSignCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to create the detached PGP signature for a
+- ** \fCmultipart/signed\fP PGP/MIME body part.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+-#endif
+- { "pgp_sort_keys", DT_SORT|DT_SORT_KEYS, &C_PgpSortKeys, SORT_ADDRESS },
+- /*
+- ** .pp
+- ** Specifies how the entries in the pgp menu are sorted. The
+- ** following are legal values:
+- ** .dl
+- ** .dt address .dd sort alphabetically by user id
+- ** .dt keyid .dd sort alphabetically by key id
+- ** .dt date .dd sort by key creation date
+- ** .dt trust .dd sort by the trust of the key
+- ** .de
+- ** .pp
+- ** If you prefer reverse order of the above values, prefix it with
+- ** "reverse-".
+- ** (PGP only)
+- */
+- { "pgp_strict_enc", DT_BOOL, &C_PgpStrictEnc, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will automatically encode PGP/MIME signed messages as
+- ** quoted-printable. Please note that unsetting this variable may
+- ** lead to problems with non-verifyable PGP signatures, so only change
+- ** this if you know what you are doing.
+- ** (PGP only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_PGP
+- { "pgp_timeout", DT_LONG|DT_NOT_NEGATIVE, &C_PgpTimeout, 300 },
+- /*
+- ** .pp
+- ** The number of seconds after which a cached passphrase will expire if
+- ** not used.
+- ** (PGP only)
+- */
+- { "pgp_use_gpg_agent", DT_BOOL, &C_PgpUseGpgAgent, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt expects a \fCgpg-agent(1)\fP process will handle
+- ** private key passphrase prompts. If \fIunset\fP, NeoMutt will prompt
+- ** for the passphrase and pass it via stdin to the pgp command.
+- ** .pp
+- ** Note that as of version 2.1, GnuPG automatically spawns an agent
+- ** and requires the agent be used for passphrase management. Since
+- ** that version is increasingly prevalent, this variable now
+- ** defaults \fIset\fP.
+- ** .pp
+- ** NeoMutt works with a GUI or curses pinentry program. A TTY pinentry
+- ** should not be used.
+- ** .pp
+- ** If you are using an older version of GnuPG without an agent running,
+- ** or another encryption program without an agent, you will need to
+- ** \fIunset\fP this variable.
+- ** (PGP only)
+- */
+- { "pgp_verify_command", DT_STRING|DT_COMMAND, &C_PgpVerifyCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to verify PGP signatures.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+- { "pgp_verify_key_command", DT_STRING|DT_COMMAND, &C_PgpVerifyKeyCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to verify key information from the key selection
+- ** menu.
+- ** .pp
+- ** This is a format string, see the $$pgp_decode_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (PGP only)
+- */
+-#endif
+- { "pipe_decode", DT_BOOL, &C_PipeDecode, false },
+- /*
+- ** .pp
+- ** Used in connection with the \fC<pipe-message>\fP command. When \fIunset\fP,
+- ** NeoMutt will pipe the messages without any preprocessing. When \fIset\fP, NeoMutt
+- ** will weed headers and will attempt to decode the messages
+- ** first.
+- */
+- { "pipe_sep", DT_STRING, &C_PipeSep, IP "\n" },
+- /*
+- ** .pp
+- ** The separator to add between messages when piping a list of tagged
+- ** messages to an external Unix command.
+- */
+- { "pipe_split", DT_BOOL, &C_PipeSplit, false },
+- /*
+- ** .pp
+- ** Used in connection with the \fC<pipe-message>\fP function following
+- ** \fC<tag-prefix>\fP. If this variable is \fIunset\fP, when piping a list of
+- ** tagged messages NeoMutt will concatenate the messages and will pipe them
+- ** all concatenated. When \fIset\fP, NeoMutt will pipe the messages one by one.
+- ** In both cases the messages are piped in the current sorted order,
+- ** and the $$pipe_sep separator is added after each message.
+- */
+-#ifdef USE_POP
+- { "pop_auth_try_all", DT_BOOL, &C_PopAuthTryAll, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will try all available authentication methods.
+- ** When \fIunset\fP, NeoMutt will only fall back to other authentication
+- ** methods if the previous methods are unavailable. If a method is
+- ** available but authentication fails, NeoMutt will not connect to the POP server.
+- */
+- { "pop_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_PopAuthenticators, 0 },
+- /*
+- ** .pp
+- ** This is a colon-delimited list of authentication methods NeoMutt may
+- ** attempt to use to log in to an POP server, in the order NeoMutt should
+- ** try them. Authentication methods are either "user", "apop" or any
+- ** SASL mechanism, e.g. "digest-md5", "gssapi" or "cram-md5".
+- ** This option is case-insensitive. If this option is \fIunset\fP
+- ** (the default) NeoMutt will try all available methods, in order from
+- ** most-secure to least-secure.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set pop_authenticators="digest-md5:apop:user"
+- ** .te
+- */
+- { "pop_checkinterval", DT_NUMBER|DT_NOT_NEGATIVE, &C_PopCheckinterval, 60 },
+- /*
+- ** .pp
+- ** This variable configures how often (in seconds) NeoMutt should look for
+- ** new mail in the currently selected mailbox if it is a POP mailbox.
+- */
+- { "pop_delete", DT_QUAD, &C_PopDelete, MUTT_ASKNO },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will delete successfully downloaded messages from the POP
+- ** server when using the \fC$<fetch-mail>\fP function. When \fIunset\fP, NeoMutt will
+- ** download messages but also leave them on the POP server.
+- */
+- { "pop_host", DT_STRING, &C_PopHost, 0 },
+- /*
+- ** .pp
+- ** The name of your POP server for the \fC$<fetch-mail>\fP function. You
+- ** can also specify an alternative port, username and password, i.e.:
+- ** .ts
+- ** [pop[s]://][username[:password]@]popserver[:port]
+- ** .te
+- ** .pp
+- ** where "[...]" denotes an optional part.
+- */
+- { "pop_last", DT_BOOL, &C_PopLast, false },
+- /*
+- ** .pp
+- ** If this variable is \fIset\fP, NeoMutt will try to use the "\fCLAST\fP" POP command
+- ** for retrieving only unread messages from the POP server when using
+- ** the \fC$<fetch-mail>\fP function.
+- */
+- { "pop_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_PopOauthRefreshCommand, 0 },
+- /*
+- ** .pp
+- ** The command to run to generate an OAUTH refresh token for
+- ** authorizing your connection to your POP server. This command will be
+- ** run on every connection attempt that uses the OAUTHBEARER authentication
+- ** mechanism. See "$oauth" for details.
+- */
+- { "pop_pass", DT_STRING|DT_SENSITIVE, &C_PopPass, 0 },
+- /*
+- ** .pp
+- ** Specifies the password for your POP account. If \fIunset\fP, NeoMutt will
+- ** prompt you for your password when you open a POP mailbox.
+- ** .pp
+- ** \fBWarning\fP: you should only use this option when you are on a
+- ** fairly secure machine, because the superuser can read your neomuttrc
+- ** even if you are the only one who can read the file.
+- */
+- { "pop_reconnect", DT_QUAD, &C_PopReconnect, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt will try to reconnect to the POP server if
+- ** the connection is lost.
+- */
+- { "pop_user", DT_STRING|DT_SENSITIVE, &C_PopUser, 0 },
+- /*
+- ** .pp
+- ** Your login name on the POP server.
+- ** .pp
+- ** This variable defaults to your user name on the local machine.
+- */
+-#endif /* USE_POP */
+- { "post_indent_string", DT_STRING, &C_PostIndentString, 0 },
+- /*
+- ** .pp
+- ** Similar to the $$attribution variable, NeoMutt will append this
+- ** string after the inclusion of a message which is being replied to.
+- */
+-#ifdef USE_NNTP
+- { "post_moderated", DT_QUAD, &C_PostModerated, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** If set to \fIyes\fP, NeoMutt will post article to newsgroup that have
+- ** not permissions to posting (e.g. moderated). \fBNote:\fP if news server
+- ** does not support posting to that newsgroup or totally read-only, that
+- ** posting will not have an effect.
+- */
+-#endif
+- { "postpone", DT_QUAD, &C_Postpone, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether or not messages are saved in the $$postponed
+- ** mailbox when you elect not to send immediately. If set to
+- ** \fIask-yes\fP or \fIask-no\fP, you will be prompted with "Save
+- ** (postpone) draft message?" when quitting from the "compose"
+- ** screen.
+- ** .pp
+- ** Also see the $$recall variable.
+- */
+- { "postpone_encrypt", DT_BOOL, &C_PostponeEncrypt, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, postponed messages that are marked for encryption will be
+- ** self-encrypted. NeoMutt will first try to encrypt using the value specified
+- ** in $$pgp_default_key or $$smime_default_key. If those are not
+- ** set, it will try the deprecated $$postpone_encrypt_as.
+- ** (Crypto only)
+- */
+- { "postpone_encrypt_as", DT_STRING, &C_PostponeEncryptAs, 0 },
+- /*
+- ** .pp
+- ** This is a deprecated fall-back variable for $$postpone_encrypt.
+- ** Please use $$pgp_default_key or $$smime_default_key.
+- ** (Crypto only)
+- */
+- { "postponed", DT_STRING|DT_PATH|DT_MAILBOX|R_INDEX, &C_Postponed, IP "~/postponed" },
+- /*
+- ** .pp
+- ** NeoMutt allows you to indefinitely "$postpone sending a message" which
+- ** you are editing. When you choose to postpone a message, NeoMutt saves it
+- ** in the mailbox specified by this variable.
+- ** .pp
+- ** Also see the $$postpone variable.
+- */
+-#ifdef USE_SOCKET
+- { "preconnect", DT_STRING, &C_Preconnect, 0 },
+- /*
+- ** .pp
+- ** If \fIset\fP, a shell command to be executed if NeoMutt fails to establish
+- ** a connection to the server. This is useful for setting up secure
+- ** connections, e.g. with \fCssh(1)\fP. If the command returns a nonzero
+- ** status, NeoMutt gives up opening the server. Example:
+- ** .ts
+- ** set preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net \(rs
+- ** sleep 20 < /dev/null > /dev/null"
+- ** .te
+- ** .pp
+- ** Mailbox "foo" on "mailhost.net" can now be reached
+- ** as "{localhost:1234}foo".
+- ** .pp
+- ** Note: For this example to work, you must be able to log in to the
+- ** remote machine without having to enter a password.
+- */
+-#endif /* USE_SOCKET */
+- { "preferred_languages", DT_SLIST|SLIST_SEP_COMMA, &C_PreferredLanguages, 0 },
+- /*
+- ** .pp
+- ** RFC8255 : user preferred languages to be search in parts and display
+- ** Ex. : set preferred_languages="en,fr,de"
+- */
+- { "print", DT_QUAD, &C_Print, MUTT_ASKNO },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt really prints messages.
+- ** This is set to "ask-no" by default, because some people
+- ** accidentally hit "p" often.
+- */
+- { "print_command", DT_STRING|DT_COMMAND, &C_PrintCommand, IP "lpr" },
+- /*
+- ** .pp
+- ** This specifies the command pipe that should be used to print messages.
+- */
+- { "print_decode", DT_BOOL, &C_PrintDecode, true },
+- /*
+- ** .pp
+- ** Used in connection with the \fC<print-message>\fP command. If this
+- ** option is \fIset\fP, the message is decoded before it is passed to the
+- ** external command specified by $$print_command. If this option
+- ** is \fIunset\fP, no processing will be applied to the message when
+- ** printing it. The latter setting may be useful if you are using
+- ** some advanced printer filter which is able to properly format
+- ** e-mail messages for printing.
+- */
+- { "print_split", DT_BOOL, &C_PrintSplit, false },
+- /*
+- ** .pp
+- ** Used in connection with the \fC<print-message>\fP command. If this option
+- ** is \fIset\fP, the command specified by $$print_command is executed once for
+- ** each message which is to be printed. If this option is \fIunset\fP,
+- ** the command specified by $$print_command is executed only once, and
+- ** all the messages are concatenated, with a form feed as the message
+- ** separator.
+- ** .pp
+- ** Those who use the \fCenscript\fP(1) program's mail-printing mode will
+- ** most likely want to \fIset\fP this option.
+- */
+- { "prompt_after", DT_BOOL, &C_PromptAfter, true },
+- /*
+- ** .pp
+- ** If you use an \fIexternal\fP $$pager, setting this variable will
+- ** cause NeoMutt to prompt you for a command when the pager exits rather
+- ** than returning to the index menu. If \fIunset\fP, NeoMutt will return to the
+- ** index menu when the external pager exits.
+- */
+- { "query_command", DT_STRING|DT_COMMAND, &C_QueryCommand, 0 },
+- /*
+- ** .pp
+- ** This specifies the command NeoMutt will use to make external address
+- ** queries. The string may contain a "%s", which will be substituted
+- ** with the query string the user types. NeoMutt will add quotes around the
+- ** string substituted for "%s" automatically according to shell quoting
+- ** rules, so you should avoid adding your own. If no "%s" is found in
+- ** the string, NeoMutt will append the user's query to the end of the string.
+- ** See "$query" for more information.
+- */
+- { "query_format", DT_STRING|DT_NOT_EMPTY, &C_QueryFormat, IP "%4c %t %-25.25a %-25.25n %?e?(%e)?" },
+- /*
+- ** .pp
+- ** This variable describes the format of the "query" menu. The
+- ** following \fCprintf(3)\fP-style sequences are understood:
+- ** .dl
+- ** .dt %a .dd Destination address
+- ** .dt %c .dd Current entry number
+- ** .dt %e .dd Extra information *
+- ** .dt %n .dd Destination name
+- ** .dt %t .dd "*" if current entry is tagged, a space otherwise
+- ** .dt %>X .dd Right justify the rest of the string and pad with "X"
+- ** .dt %|X .dd Pad to the end of the line with "X"
+- ** .dt %*X .dd Soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** For an explanation of "soft-fill", see the $$index_format documentation.
+- ** .pp
+- ** * = can be optionally printed if nonzero, see the $$status_format documentation.
+- */
+- { "quit", DT_QUAD, &C_Quit, MUTT_YES },
+- /*
+- ** .pp
+- ** This variable controls whether "quit" and "exit" actually quit
+- ** from NeoMutt. If this option is \fIset\fP, they do quit, if it is \fIunset\fP, they
+- ** have no effect, and if it is set to \fIask-yes\fP or \fIask-no\fP, you are
+- ** prompted for confirmation when you try to quit.
+- */
+- { "quote_regex", DT_REGEX|R_PAGER, &C_QuoteRegex, IP "^([ \t]*[|>:}#])+" },
+- /*
+- ** .pp
+- ** A regular expression used in the internal pager to determine quoted
+- ** sections of text in the body of a message. Quoted text may be filtered
+- ** out using the \fC<toggle-quoted>\fP command, or colored according to the
+- ** "color quoted" family of directives.
+- ** .pp
+- ** Higher levels of quoting may be colored differently ("color quoted1",
+- ** "color quoted2", etc.). The quoting level is determined by removing
+- ** the last character from the matched text and recursively reapplying
+- ** the regular expression until it fails to produce a match.
+- ** .pp
+- ** Match detection may be overridden by the $$smileys regular expression.
+- */
+- { "toggle_quoted_show_levels", DT_NUMBER|DT_NOT_NEGATIVE, &C_ToggleQuotedShowLevels, 0 },
+- /*
+- ** .pp
+- ** Quoted text may be filtered out using the \fC<toggle-quoted>\fP command.
+- ** If set to a number greater than 0, then the \fC<toggle-quoted>\fP
+- ** command will only filter out quote levels above this number.
+- */
+- { "read_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_ReadInc, 10 },
+- /*
+- ** .pp
+- ** If set to a value greater than 0, NeoMutt will display which message it
+- ** is currently on when reading a mailbox or when performing search actions
+- ** such as search and limit. The message is printed after
+- ** this many messages have been read or searched (e.g., if set to 25, NeoMutt will
+- ** print a message when it is at message 25, and then again when it gets
+- ** to message 50). This variable is meant to indicate progress when
+- ** reading or searching large mailboxes which may take some time.
+- ** When set to 0, only a single message will appear before the reading
+- ** the mailbox.
+- ** .pp
+- ** Also see the $$write_inc, $$net_inc and $$time_inc variables and the
+- ** "$tuning" section of the manual for performance considerations.
+- */
+- { "read_only", DT_BOOL, &C_ReadOnly, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, all folders are opened in read-only mode.
+- */
+- { "realname", DT_STRING|R_INDEX|R_PAGER, &C_Realname, 0 },
+- /*
+- ** .pp
+- ** This variable specifies what "real" or "personal" name should be used
+- ** when sending messages.
+- ** .pp
+- ** If not specified, then the user's "real name" will be read from \fC/etc/passwd\fP.
+- ** This option will not be used, if "$$from" is set.
+- */
+- { "recall", DT_QUAD, &C_Recall, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** Controls whether or not NeoMutt recalls postponed messages
+- ** when composing a new message.
+- ** .pp
+- ** Setting this variable to \fIyes\fP is not generally useful, and thus not
+- ** recommended. Note that the \fC<recall-message>\fP function can be used
+- ** to manually recall postponed messages.
+- ** .pp
+- ** Also see $$postponed variable.
+- */
+- { "record", DT_STRING|DT_PATH|DT_MAILBOX, &C_Record, IP "~/sent" },
+- /*
+- ** .pp
+- ** This specifies the file into which your outgoing messages should be
+- ** appended. (This is meant as the primary method for saving a copy of
+- ** your messages, but another way to do this is using the "$my_hdr"
+- ** command to create a "Bcc:" field with your email address in it.)
+- ** .pp
+- ** The value of \fI$$record\fP is overridden by the $$force_name and
+- ** $$save_name variables, and the "$fcc-hook" command. Also see $$copy
+- ** and $$write_bcc.
+- */
+- { "reflow_space_quotes", DT_BOOL, &C_ReflowSpaceQuotes, true },
+- /*
+- ** .pp
+- ** This option controls how quotes from format=flowed messages are displayed
+- ** in the pager and when replying (with $$text_flowed \fIunset\fP).
+- ** When set, this option adds spaces after each level of quote marks, turning
+- ** ">>>foo" into "> > > foo".
+- ** .pp
+- ** \fBNote:\fP If $$reflow_text is \fIunset\fP, this option has no effect.
+- ** Also, this option does not affect replies when $$text_flowed is \fIset\fP.
+- */
+- { "reflow_text", DT_BOOL, &C_ReflowText, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will reformat paragraphs in text/plain
+- ** parts marked format=flowed. If \fIunset\fP, NeoMutt will display paragraphs
+- ** unaltered from how they appear in the message body. See RFC3676 for
+- ** details on the \fIformat=flowed\fP format.
+- ** .pp
+- ** Also see $$reflow_wrap, and $$wrap.
+- */
+- { "reflow_wrap", DT_NUMBER, &C_ReflowWrap, 78 },
+- /*
+- ** .pp
+- ** This variable controls the maximum paragraph width when reformatting text/plain
+- ** parts when $$reflow_text is \fIset\fP. When the value is 0, paragraphs will
+- ** be wrapped at the terminal's right margin. A positive value sets the
+- ** paragraph width relative to the left margin. A negative value set the
+- ** paragraph width relative to the right margin.
+- ** .pp
+- ** Also see $$wrap.
+- */
+- { "reply_regex", DT_REGEX|R_INDEX|R_RESORT, &C_ReplyRegex, IP "^((re|aw|sv)(\\[[0-9]+\\])*:[ \t]*)*", 0, reply_validator },
+- /*
+- ** .pp
+- ** A regular expression used to recognize reply messages when threading
+- ** and replying. The default value corresponds to the English "Re:", the
+- ** German "Aw:" and the Swedish "Sv:".
+- */
+- { "reply_self", DT_BOOL, &C_ReplySelf, false },
+- /*
+- ** .pp
+- ** If \fIunset\fP and you are replying to a message sent by you, NeoMutt will
+- ** assume that you want to reply to the recipients of that message rather
+- ** than to yourself.
+- ** .pp
+- ** Also see the "$alternates" command.
+- */
+- { "reply_to", DT_QUAD, &C_ReplyTo, MUTT_ASKYES },
+- /*
+- ** .pp
+- ** If \fIset\fP, when replying to a message, NeoMutt will use the address listed
+- ** in the Reply-to: header as the recipient of the reply. If \fIunset\fP,
+- ** it will use the address in the From: header field instead. This
+- ** option is useful for reading a mailing list that sets the Reply-To:
+- ** header field to the list address and you want to send a private
+- ** message to the author of a message.
+- */
+- { "reply_with_xorig", DT_BOOL, &C_ReplyWithXorig, false },
+- /*
+- ** .pp
+- ** This variable provides a toggle. When active, the From: header will be
+- ** extracted from the current mail's 'X-Original-To:' header. This setting
+- ** does not have precedence over "$reverse_realname".
+- ** .pp
+- ** Assuming 'fast_reply' is disabled, this option will prompt the user with a
+- ** prefilled From: header.
+- */
+- { "resolve", DT_BOOL, &C_Resolve, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, the cursor will be automatically advanced to the next
+- ** (possibly undeleted) message whenever a command that modifies the
+- ** current message is executed.
+- */
+- { "resume_draft_files", DT_BOOL, &C_ResumeDraftFiles, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, draft files (specified by \fC-H\fP on the command
+- ** line) are processed similarly to when resuming a postponed
+- ** message. Recipients are not prompted for; send-hooks are not
+- ** evaluated; no alias expansion takes place; user-defined headers
+- ** and signatures are not added to the message.
+- */
+- { "resume_edited_draft_files", DT_BOOL, &C_ResumeEditedDraftFiles, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, draft files previously edited (via \fC-E -H\fP on
+- ** the command line) will have $$resume_draft_files automatically
+- ** set when they are used as a draft file again.
+- ** .pp
+- ** The first time a draft file is saved, NeoMutt will add a header,
+- ** X-Mutt-Resume-Draft to the saved file. The next time the draft
+- ** file is read in, if NeoMutt sees the header, it will set
+- ** $$resume_draft_files.
+- ** .pp
+- ** This option is designed to prevent multiple signatures,
+- ** user-defined headers, and other processing effects from being
+- ** made multiple times to the draft file.
+- */
+- { "reverse_alias", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseAlias, false },
+- /*
+- ** .pp
+- ** This variable controls whether or not NeoMutt will display the "personal"
+- ** name from your aliases in the index menu if it finds an alias that
+- ** matches the message's sender. For example, if you have the following
+- ** alias:
+- ** .ts
+- ** alias juser abd30425@somewhere.net (Joe User)
+- ** .te
+- ** .pp
+- ** and then you receive mail which contains the following header:
+- ** .ts
+- ** From: abd30425@somewhere.net
+- ** .te
+- ** .pp
+- ** It would be displayed in the index menu as "Joe User" instead of
+- ** "abd30425@somewhere.net." This is useful when the person's e-mail
+- ** address is not human friendly.
+- */
+- { "reverse_name", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseName, false },
+- /*
+- ** .pp
+- ** It may sometimes arrive that you receive mail to a certain machine,
+- ** move the messages to another machine, and reply to some the messages
+- ** from there. If this variable is \fIset\fP, the default \fIFrom:\fP line of
+- ** the reply messages is built using the address where you received the
+- ** messages you are replying to \fBif\fP that address matches your
+- ** "$alternates". If the variable is \fIunset\fP, or the address that would be
+- ** used doesn't match your "$alternates", the \fIFrom:\fP line will use
+- ** your address on the current machine.
+- ** .pp
+- ** Also see the "$alternates" command and $$reverse_realname.
+- */
+- { "reverse_realname", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseRealname, true },
+- /*
+- ** .pp
+- ** This variable fine-tunes the behavior of the $$reverse_name feature.
+- ** .pp
+- ** When it is \fIunset\fP, NeoMutt will remove the real name part of a
+- ** matching address. This allows the use of the email address
+- ** without having to also use what the sender put in the real name
+- ** field.
+- ** .pp
+- ** When it is \fIset\fP, NeoMutt will use the matching address as-is.
+- ** .pp
+- ** In either case, a missing real name will be filled in afterwards
+- ** using the value of $$realname.
+- */
+- { "rfc2047_parameters", DT_BOOL, &C_Rfc2047Parameters, false },
+- /*
+- ** .pp
+- ** When this variable is \fIset\fP, NeoMutt will decode RFC2047-encoded MIME
+- ** parameters. You want to set this variable when NeoMutt suggests you
+- ** to save attachments to files named like:
+- ** .ts
+- ** =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
+- ** .te
+- ** .pp
+- ** When this variable is \fIset\fP interactively, the change won't be
+- ** active until you change folders.
+- ** .pp
+- ** Note that this use of RFC2047's encoding is explicitly
+- ** prohibited by the standard, but nevertheless encountered in the
+- ** wild.
+- ** .pp
+- ** Also note that setting this parameter will \fInot\fP have the effect
+- ** that NeoMutt \fIgenerates\fP this kind of encoding. Instead, NeoMutt will
+- ** unconditionally use the encoding specified in RFC2231.
+- */
+- { "save_address", DT_BOOL, &C_SaveAddress, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will take the sender's full address when choosing a
+- ** default folder for saving a mail. If $$save_name or $$force_name
+- ** is \fIset\fP too, the selection of the Fcc folder will be changed as well.
+- */
+- { "save_empty", DT_BOOL, &C_SaveEmpty, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, mailboxes which contain no saved messages will be removed
+- ** when closed (the exception is $$spoolfile which is never removed).
+- ** If \fIset\fP, mailboxes are never removed.
+- ** .pp
+- ** \fBNote:\fP This only applies to mbox and MMDF folders, NeoMutt does not
+- ** delete MH and Maildir directories.
+- */
+- { "save_history", DT_NUMBER|DT_NOT_NEGATIVE, &C_SaveHistory, 0 },
+- /*
+- ** .pp
+- ** This variable controls the size of the history (per category) saved in the
+- ** $$history_file file.
+- */
+- { "save_name", DT_BOOL, &C_SaveName, false },
+- /*
+- ** .pp
+- ** This variable controls how copies of outgoing messages are saved.
+- ** When \fIset\fP, a check is made to see if a mailbox specified by the
+- ** recipient address exists (this is done by searching for a mailbox in
+- ** the $$folder directory with the \fIusername\fP part of the
+- ** recipient address). If the mailbox exists, the outgoing message will
+- ** be saved to that mailbox, otherwise the message is saved to the
+- ** $$record mailbox.
+- ** .pp
+- ** Also see the $$force_name variable.
+- */
+-#ifdef USE_NNTP
+- { "save_unsubscribed", DT_BOOL, &C_SaveUnsubscribed, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, info about unsubscribed newsgroups will be saved into
+- ** "newsrc" file and into cache.
+- */
+-#endif
+- { "score", DT_BOOL, &C_Score, true },
+- /*
+- ** .pp
+- ** When this variable is \fIunset\fP, scoring is turned off. This can
+- ** be useful to selectively disable scoring for certain folders when the
+- ** $$score_threshold_delete variable and related are used.
+- */
+- { "score_threshold_delete", DT_NUMBER, &C_ScoreThresholdDelete, -1 },
+- /*
+- ** .pp
+- ** Messages which have been assigned a score equal to or lower than the value
+- ** of this variable are automatically marked for deletion by NeoMutt. Since
+- ** NeoMutt scores are always greater than or equal to zero, the default setting
+- ** of this variable will never mark a message for deletion.
+- */
+- { "score_threshold_flag", DT_NUMBER, &C_ScoreThresholdFlag, 9999 },
+- /*
+- ** .pp
+- ** Messages which have been assigned a score greater than or equal to this
+- ** variable's value are automatically marked "flagged".
+- */
+- { "score_threshold_read", DT_NUMBER, &C_ScoreThresholdRead, -1 },
+- /*
+- ** .pp
+- ** Messages which have been assigned a score equal to or lower than the value
+- ** of this variable are automatically marked as read by NeoMutt. Since
+- ** NeoMutt scores are always greater than or equal to zero, the default setting
+- ** of this variable will never mark a message read.
+- */
+- { "search_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_SearchContext, 0 },
+- /*
+- ** .pp
+- ** For the pager, this variable specifies the number of lines shown
+- ** before search results. By default, search results will be top-aligned.
+- */
+- { "send_charset", DT_STRING, &C_SendCharset, IP "us-ascii:iso-8859-1:utf-8", 0, charset_validator },
+- /*
+- ** .pp
+- ** A colon-delimited list of character sets for outgoing messages. NeoMutt will use the
+- ** first character set into which the text can be converted exactly.
+- ** If your $$charset is not "iso-8859-1" and recipients may not
+- ** understand "UTF-8", it is advisable to include in the list an
+- ** appropriate widely used standard character set (such as
+- ** "iso-8859-2", "koi8-r" or "iso-2022-jp") either instead of or after
+- ** "iso-8859-1".
+- ** .pp
+- ** In case the text can't be converted into one of these exactly,
+- ** NeoMutt uses $$charset as a fallback.
+- */
+- { "sendmail", DT_STRING|DT_COMMAND, &C_Sendmail, IP SENDMAIL " -oem -oi" },
+- /*
+- ** .pp
+- ** Specifies the program and arguments used to deliver mail sent by NeoMutt.
+- ** NeoMutt expects that the specified program interprets additional
+- ** arguments as recipient addresses. NeoMutt appends all recipients after
+- ** adding a \fC--\fP delimiter (if not already present). Additional
+- ** flags, such as for $$use_8bitmime, $$use_envelope_from,
+- ** $$dsn_notify, or $$dsn_return will be added before the delimiter.
+- ** .pp
+- ** \fBSee also:\fP $$write_bcc.
+- */
+- { "sendmail_wait", DT_NUMBER, &C_SendmailWait, 0 },
+- /*
+- ** .pp
+- ** Specifies the number of seconds to wait for the $$sendmail process
+- ** to finish before giving up and putting delivery in the background.
+- ** .pp
+- ** NeoMutt interprets the value of this variable as follows:
+- ** .dl
+- ** .dt >0 .dd number of seconds to wait for sendmail to finish before continuing
+- ** .dt 0 .dd wait forever for sendmail to finish
+- ** .dt <0 .dd always put sendmail in the background without waiting
+- ** .de
+- ** .pp
+- ** Note that if you specify a value other than 0, the output of the child
+- ** process will be put in a temporary file. If there is some error, you
+- ** will be informed as to where to find the output.
+- */
+- { "shell", DT_STRING|DT_COMMAND, &C_Shell, IP "/bin/sh" },
+- /*
+- ** .pp
+- ** Command to use when spawning a subshell.
+- ** If not specified, then the user's login shell from \fC/etc/passwd\fP is used.
+- */
+- { "show_multipart_alternative", DT_STRING, &C_ShowMultipartAlternative, 0, 0, multipart_validator },
+- /*
+- ** .pp
+- ** When \fIset\fP to \fCinfo\fP, the multipart/alternative information is shown.
+- ** When \fIset\fP to \fCinline\fP, all of the alternatives are displayed.
+- ** When not set, the default behavior is to show only the chosen alternative.
+- */
+-#ifdef USE_NNTP
+- { "show_new_news", DT_BOOL, &C_ShowNewNews, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, news server will be asked for new newsgroups on entering
+- ** the browser. Otherwise, it will be done only once for a news server.
+- ** Also controls whether or not number of new articles of subscribed
+- ** newsgroups will be then checked.
+- */
+- { "show_only_unread", DT_BOOL, &C_ShowOnlyUnread, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, only subscribed newsgroups that contain unread articles
+- ** will be displayed in browser.
+- */
+-#endif
+-#ifdef USE_SIDEBAR
+- { "sidebar_component_depth", DT_NUMBER|R_SIDEBAR, &C_SidebarComponentDepth, 0 },
+- /*
+- ** .pp
+- ** By default the sidebar will show the mailbox's path, relative to the
+- ** $$folder variable. This specifies the number of parent directories to hide
+- ** from display in the sidebar. For example: If a maildir is normally
+- ** displayed in the sidebar as dir1/dir2/dir3/maildir, setting
+- ** \fCsidebar_component_depth=2\fP will display it as dir3/maildir, having
+- ** truncated the 2 highest directories.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_short_path
+- */
+- { "sidebar_delim_chars", DT_STRING|R_SIDEBAR, &C_SidebarDelimChars, IP "/." },
+- /*
+- ** .pp
+- ** This contains the list of characters which you would like to treat
+- ** as folder separators for displaying paths in the sidebar.
+- ** .pp
+- ** Local mail is often arranged in directories: 'dir1/dir2/mailbox'.
+- ** .ts
+- ** set sidebar_delim_chars='/'
+- ** .te
+- ** .pp
+- ** IMAP mailboxes are often named: 'folder1.folder2.mailbox'.
+- ** .ts
+- ** set sidebar_delim_chars='.'
+- ** .te
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_folder_indent, $$sidebar_indent_string.
+- */
+- { "sidebar_divider_char", DT_STRING|R_SIDEBAR, &C_SidebarDividerChar, 0 },
+- /*
+- ** .pp
+- ** This specifies the characters to be drawn between the sidebar (when
+- ** visible) and the other NeoMutt panels. ASCII and Unicode line-drawing
+- ** characters are supported.
+- */
+- { "sidebar_folder_indent", DT_BOOL|R_SIDEBAR, &C_SidebarFolderIndent, false },
+- /*
+- ** .pp
+- ** Set this to indent mailboxes in the sidebar.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_indent_string, $$sidebar_delim_chars.
+- */
+- { "sidebar_format", DT_STRING|DT_NOT_EMPTY|R_SIDEBAR, &C_SidebarFormat, IP "%B%* %n" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the sidebar display. This string is
+- ** similar to $$index_format, but has its own set of \fCprintf(3)\fP-like
+- ** sequences:
+- ** .dl
+- ** .dt %B .dd Name of the mailbox
+- ** .dt %D .dd Description of the mailbox
+- ** .dt %S .dd * Size of mailbox (total number of messages)
+- ** .dt %N .dd * Number of unread messages in the mailbox
+- ** .dt %n .dd N if mailbox has new mail, blank otherwise
+- ** .dt %F .dd * Number of Flagged messages in the mailbox
+- ** .dt %! .dd "!" : one flagged message;
+- ** "!!" : two flagged messages;
+- ** "n!" : n flagged messages (for n > 2).
+- ** Otherwise prints nothing.
+- ** .dt %d .dd * @ Number of deleted messages
+- ** .dt %L .dd * @ Number of messages after limiting
+- ** .dt %t .dd * @ Number of tagged messages
+- ** .dt %>X .dd right justify the rest of the string and pad with "X"
+- ** .dt %|X .dd pad to the end of the line with "X"
+- ** .dt %*X .dd soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** * = Can be optionally printed if nonzero
+- ** @ = Only applicable to the current folder
+- ** .pp
+- ** In order to use %S, %N, %F, and %!, $$mail_check_stats must
+- ** be \fIset\fP. When thus set, a suggested value for this option is
+- ** "%B%?F? [%F]?%* %?N?%N/?%S".
+- */
+- { "sidebar_indent_string", DT_STRING|R_SIDEBAR, &C_SidebarIndentString, IP " " },
+- /*
+- ** .pp
+- ** This specifies the string that is used to indent mailboxes in the sidebar.
+- ** It defaults to two spaces.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_folder_indent, $$sidebar_delim_chars.
+- */
+- { "sidebar_new_mail_only", DT_BOOL|R_SIDEBAR, &C_SidebarNewMailOnly, false },
+- /*
+- ** .pp
+- ** When set, the sidebar will only display mailboxes containing new, or
+- ** flagged, mail.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_whitelist, $$sidebar_non_empty_mailbox_only.
+- */
+- { "sidebar_non_empty_mailbox_only", DT_BOOL|R_SIDEBAR, &C_SidebarNonEmptyMailboxOnly, false },
+- /*
+- ** .pp
+- ** When set, the sidebar will only display mailboxes that contain one or more mails.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_new_mail_only, $$sidebar_whitelist.
+- */
+- { "sidebar_next_new_wrap", DT_BOOL, &C_SidebarNextNewWrap, false },
+- /*
+- ** .pp
+- ** When set, the \fC<sidebar-next-new>\fP command will not stop and the end of
+- ** the list of mailboxes, but wrap around to the beginning. The
+- ** \fC<sidebar-prev-new>\fP command is similarly affected, wrapping around to
+- ** the end of the list.
+- */
+- { "sidebar_on_right", DT_BOOL|R_INDEX|R_PAGER|R_REFLOW, &C_SidebarOnRight, false },
+- /*
+- ** .pp
+- ** When set, the sidebar will appear on the right-hand side of the screen.
+- */
+- { "sidebar_short_path", DT_BOOL|R_SIDEBAR, &C_SidebarShortPath, false },
+- /*
+- ** .pp
+- ** By default the sidebar will show the mailbox's path, relative to the
+- ** $$folder variable. Setting \fCsidebar_shortpath=yes\fP will shorten the
+- ** names relative to the previous name. Here's an example:
+- ** .dl
+- ** .dt \fBshortpath=no\fP .dd \fBshortpath=yes\fP .dd \fBshortpath=yes, folderindent=yes, indentstr=".."\fP
+- ** .dt \fCfruit\fP .dd \fCfruit\fP .dd \fCfruit\fP
+- ** .dt \fCfruit.apple\fP .dd \fCapple\fP .dd \fC..apple\fP
+- ** .dt \fCfruit.banana\fP .dd \fCbanana\fP .dd \fC..banana\fP
+- ** .dt \fCfruit.cherry\fP .dd \fCcherry\fP .dd \fC..cherry\fP
+- ** .de
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_delim_chars, $$sidebar_folder_indent,
+- ** $$sidebar_indent_string, $$sidebar_component_depth.
+- */
+- { "sidebar_sort_method", DT_SORT|DT_SORT_SIDEBAR|R_SIDEBAR, &C_SidebarSortMethod, SORT_ORDER },
+- /*
+- ** .pp
+- ** Specifies how to sort entries in the file browser. By default, the
+- ** entries are sorted alphabetically. Valid values:
+- ** .il
+- ** .dd alpha (alphabetically)
+- ** .dd count (all message count)
+- ** .dd flagged (flagged message count)
+- ** .dd name (alphabetically)
+- ** .dd new (unread message count)
+- ** .dd path (alphabetically)
+- ** .dd unread (unread message count)
+- ** .dd unsorted
+- ** .ie
+- ** .pp
+- ** You may optionally use the "reverse-" prefix to specify reverse sorting
+- ** order (example: "\fCset sort_browser=reverse-date\fP").
+- */
+- { "sidebar_visible", DT_BOOL|R_REFLOW, &C_SidebarVisible, false },
+- /*
+- ** .pp
+- ** This specifies whether or not to show sidebar. The sidebar shows a list of
+- ** all your mailboxes.
+- ** .pp
+- ** \fBSee also:\fP $$sidebar_format, $$sidebar_width
+- */
+- { "sidebar_width", DT_NUMBER|DT_NOT_NEGATIVE|R_REFLOW, &C_SidebarWidth, 30 },
+- /*
+- ** .pp
+- ** This controls the width of the sidebar. It is measured in screen columns.
+- ** For example: sidebar_width=20 could display 20 ASCII characters, or 10
+- ** Chinese characters.
+- */
+-#endif
+- { "sig_dashes", DT_BOOL, &C_SigDashes, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, a line containing "-- " (note the trailing space) will be inserted before your
+- ** $$signature. It is \fBstrongly\fP recommended that you not \fIunset\fP
+- ** this variable unless your signature contains just your name. The
+- ** reason for this is because many software packages use "-- \n" to
+- ** detect your signature. For example, NeoMutt has the ability to highlight
+- ** the signature in a different color in the built-in pager.
+- */
+- { "sig_on_top", DT_BOOL, &C_SigOnTop, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, the signature will be included before any quoted or forwarded
+- ** text. It is \fBstrongly\fP recommended that you do not set this variable
+- ** unless you really know what you are doing, and are prepared to take
+- ** some heat from netiquette guardians.
+- */
+- { "signature", DT_STRING|DT_PATH, &C_Signature, IP "~/.signature" },
+- /*
+- ** .pp
+- ** Specifies the filename of your signature, which is appended to all
+- ** outgoing messages. If the filename ends with a pipe ("|"), it is
+- ** assumed that filename is a shell command and input should be read from
+- ** its standard output.
+- */
+- { "simple_search", DT_STRING, &C_SimpleSearch, IP "~f %s | ~s %s" },
+- /*
+- ** .pp
+- ** Specifies how NeoMutt should expand a simple search into a real search
+- ** pattern. A simple search is one that does not contain any of the "~" pattern
+- ** operators. See "$patterns" for more information on search patterns.
+- ** .pp
+- ** For example, if you simply type "joe" at a search or limit prompt, NeoMutt
+- ** will automatically expand it to the value specified by this variable by
+- ** replacing "%s" with the supplied string.
+- ** For the default value, "joe" would be expanded to: "~f joe | ~s joe".
+- */
+- { "size_show_bytes", DT_BOOL|R_MENU, &C_SizeShowBytes, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, message sizes will display bytes for values less than
+- ** 1 kilobyte. See $formatstrings-size.
+- */
+- { "size_show_fractions", DT_BOOL|R_MENU, &C_SizeShowFractions, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, message sizes will be displayed with a single decimal value
+- ** for sizes from 0 to 10 kilobytes and 1 to 10 megabytes.
+- ** See $formatstrings-size.
+- */
+- { "size_show_mb", DT_BOOL|R_MENU, &C_SizeShowMb, true },
+- /*
+- ** .pp
+- ** If \fIset\fP, message sizes will display megabytes for values greater than
+- ** or equal to 1 megabyte. See $formatstrings-size.
+- */
+- { "size_units_on_left", DT_BOOL|R_MENU, &C_SizeUnitsOnLeft, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, message sizes units will be displayed to the left of the number.
+- ** See $formatstrings-size.
+- */
+- { "skip_quoted_offset", DT_NUMBER|DT_NOT_NEGATIVE, &C_SkipQuotedOffset, 0 },
+- /*
+- ** .pp
+- ** Lines of quoted text that are displayed before the unquoted text after
+- ** "skip to quoted" command (S)
+- */
+- { "sleep_time", DT_NUMBER|DT_NOT_NEGATIVE, &C_SleepTime, 1 },
+- /*
+- ** .pp
+- ** Specifies time, in seconds, to pause while displaying certain informational
+- ** messages, while moving from folder to folder and after expunging
+- ** messages from the current folder. The default is to pause one second, so
+- ** a value of zero for this option suppresses the pause.
+- */
+- { "smart_wrap", DT_BOOL|R_PAGER_FLOW, &C_SmartWrap, true },
+- /*
+- ** .pp
+- ** Controls the display of lines longer than the screen width in the
+- ** internal pager. If \fIset\fP, long lines are wrapped at a word boundary. If
+- ** \fIunset\fP, lines are simply wrapped at the screen edge. Also see the
+- ** $$markers variable.
+- */
+- { "smileys", DT_REGEX|R_PAGER, &C_Smileys, IP "(>From )|(:[-^]?[][)(><}{|/DP])" },
+- /*
+- ** .pp
+- ** The \fIpager\fP uses this variable to catch some common false
+- ** positives of $$quote_regex, most notably smileys and not consider
+- ** a line quoted text if it also matches $$smileys. This mostly
+- ** happens at the beginning of a line.
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_SMIME
+- { "smime_ask_cert_label", DT_BOOL, &C_SmimeAskCertLabel, true },
+- /*
+- ** .pp
+- ** This flag controls whether you want to be asked to enter a label
+- ** for a certificate about to be added to the database or not. It is
+- ** \fIset\fP by default.
+- ** (S/MIME only)
+- */
+- { "smime_ca_location", DT_STRING|DT_PATH, &C_SmimeCaLocation, 0 },
+- /*
+- ** .pp
+- ** This variable contains the name of either a directory, or a file which
+- ** contains trusted certificates for use with OpenSSL.
+- ** (S/MIME only)
+- */
+- { "smime_certificates", DT_STRING|DT_PATH, &C_SmimeCertificates, 0 },
+- /*
+- ** .pp
+- ** Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
+- ** storage and retrieval of keys by itself. This is very basic right
+- ** now, and keys and certificates are stored in two different
+- ** directories, both named as the hash-value retrieved from
+- ** OpenSSL. There is an index file which contains mailbox-address
+- ** keyid pairs, and which can be manually edited. This option points to
+- ** the location of the certificates.
+- ** (S/MIME only)
+- */
+- { "smime_decrypt_command", DT_STRING|DT_COMMAND, &C_SmimeDecryptCommand, 0 },
+- /*
+- ** .pp
+- ** This format string specifies a command which is used to decrypt
+- ** \fCapplication/x-pkcs7-mime\fP attachments.
+- ** .pp
+- ** The OpenSSL command formats have their own set of \fCprintf(3)\fP-like sequences
+- ** similar to PGP's:
+- ** .dl
+- ** .dt %f .dd Expands to the name of a file containing a message.
+- ** .dt %s .dd Expands to the name of a file containing the signature part
+- ** . of a \fCmultipart/signed\fP attachment when verifying it.
+- ** .dt %k .dd The key-pair specified with $$smime_default_key
+- ** .dt %i .dd Intermediate certificates
+- ** .dt %c .dd One or more certificate IDs.
+- ** .dt %a .dd The algorithm used for encryption.
+- ** .dt %d .dd The message digest algorithm specified with $$smime_sign_digest_alg.
+- ** .dt %C .dd CA location: Depending on whether $$smime_ca_location
+- ** . points to a directory or file, this expands to
+- ** . "-CApath $$smime_ca_location" or "-CAfile $$smime_ca_location".
+- ** .de
+- ** .pp
+- ** For examples on how to configure these formats, see the \fCsmime.rc\fP in
+- ** the \fCsamples/\fP subdirectory which has been installed on your system
+- ** alongside the documentation.
+- ** (S/MIME only)
+- */
+- { "smime_decrypt_use_default_key", DT_BOOL, &C_SmimeDecryptUseDefaultKey, true },
+- /*
+- ** .pp
+- ** If \fIset\fP (default) this tells NeoMutt to use the default key for decryption. Otherwise,
+- ** if managing multiple certificate-key-pairs, NeoMutt will try to use the mailbox-address
+- ** to determine the key to use. It will ask you to supply a key, if it can't find one.
+- ** (S/MIME only)
+- */
+-#endif
+- { "smime_default_key", DT_STRING, &C_SmimeDefaultKey, 0 },
+- /*
+- ** .pp
+- ** This is the default key-pair to use for S/MIME operations, and must be
+- ** set to the keyid (the hash-value that OpenSSL generates) to work properly.
+- ** .pp
+- ** It will be used for encryption (see $$postpone_encrypt and
+- ** $$smime_self_encrypt).
+- ** .pp
+- ** It will be used for decryption unless $$smime_decrypt_use_default_key
+- ** is \fIunset\fP.
+- ** .pp
+- ** It will also be used for signing unless $$smime_sign_as is set.
+- ** .pp
+- ** The (now deprecated) \fIsmime_self_encrypt_as\fP is an alias for this
+- ** variable, and should no longer be used.
+- ** (S/MIME only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_SMIME
+- { "smime_encrypt_command", DT_STRING|DT_COMMAND, &C_SmimeEncryptCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to create encrypted S/MIME messages.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- /*
+- ** .pp
+- ** Encrypt the message to $$smime_default_key too.
+- ** (S/MIME only)
+- */
+-#endif
+- { "smime_encrypt_with", DT_STRING, &C_SmimeEncryptWith, IP "aes256" },
+- /*
+- ** .pp
+- ** This sets the algorithm that should be used for encryption.
+- ** Valid choices are "aes128", "aes192", "aes256", "des", "des3", "rc2-40", "rc2-64", "rc2-128".
+- ** (S/MIME only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_SMIME
+- { "smime_get_cert_command", DT_STRING|DT_COMMAND, &C_SmimeGetCertCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to extract X509 certificates from a PKCS7 structure.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- { "smime_get_cert_email_command", DT_STRING|DT_COMMAND, &C_SmimeGetCertEmailCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to extract the mail address(es) used for storing
+- ** X509 certificates, and for verification purposes (to check whether the
+- ** certificate was issued for the sender's mailbox).
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- { "smime_get_signer_cert_command", DT_STRING|DT_COMMAND, &C_SmimeGetSignerCertCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to extract only the signers X509 certificate from a S/MIME
+- ** signature, so that the certificate's owner may get compared to the
+- ** email's "From:" field.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- { "smime_import_cert_command", DT_STRING|DT_COMMAND, &C_SmimeImportCertCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to import a certificate via smime_keys.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences. NOTE: %c and %k will default
+- ** to $$smime_sign_as if set, otherwise $$smime_default_key.
+- ** (S/MIME only)
+- */
+-#endif
+- { "smime_is_default", DT_BOOL, &C_SmimeIsDefault, false },
+- /*
+- ** .pp
+- ** The default behavior of NeoMutt is to use PGP on all auto-sign/encryption
+- ** operations. To override and to use OpenSSL instead this must be \fIset\fP.
+- ** However, this has no effect while replying, since NeoMutt will automatically
+- ** select the same application that was used to sign/encrypt the original
+- ** message. (Note that this variable can be overridden by unsetting $$crypt_autosmime.)
+- ** (S/MIME only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_SMIME
+- { "smime_keys", DT_STRING|DT_PATH, &C_SmimeKeys, 0 },
+- /*
+- ** .pp
+- ** Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
+- ** storage and retrieval of keys/certs by itself. This is very basic right now,
+- ** and stores keys and certificates in two different directories, both
+- ** named as the hash-value retrieved from OpenSSL. There is an index file
+- ** which contains mailbox-address keyid pair, and which can be manually
+- ** edited. This option points to the location of the private keys.
+- ** (S/MIME only)
+- */
+- { "smime_pk7out_command", DT_STRING|DT_COMMAND, &C_SmimePk7outCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to extract PKCS7 structures of S/MIME signatures,
+- ** in order to extract the public X509 certificate(s).
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+-#endif
+- { "smime_self_encrypt", DT_BOOL, &C_SmimeSelfEncrypt, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, S/MIME encrypted messages will also be encrypted
+- ** using the certificate in $$smime_default_key.
+- ** (S/MIME only)
+- */
+- { "smime_sign_as", DT_STRING, &C_SmimeSignAs, 0 },
+- /*
+- ** .pp
+- ** If you have a separate key to use for signing, you should set this
+- ** to the signing key. Most people will only need to set $$smime_default_key.
+- ** (S/MIME only)
+- */
+-#ifdef CRYPT_BACKEND_CLASSIC_SMIME
+- { "smime_sign_command", DT_STRING|DT_COMMAND, &C_SmimeSignCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to created S/MIME signatures of type
+- ** \fCmultipart/signed\fP, which can be read by all mail clients.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- { "smime_sign_digest_alg", DT_STRING, &C_SmimeSignDigestAlg, IP "sha256" },
+- /*
+- ** .pp
+- ** This sets the algorithm that should be used for the signature message digest.
+- ** Valid choices are "md5", "sha1", "sha224", "sha256", "sha384", "sha512".
+- ** (S/MIME only)
+- */
+- { "smime_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_SmimeTimeout, 300 },
+- /*
+- ** .pp
+- ** The number of seconds after which a cached passphrase will expire if
+- ** not used.
+- ** (S/MIME only)
+- */
+- { "smime_verify_command", DT_STRING|DT_COMMAND, &C_SmimeVerifyCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to verify S/MIME signatures of type \fCmultipart/signed\fP.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+- { "smime_verify_opaque_command", DT_STRING|DT_COMMAND, &C_SmimeVerifyOpaqueCommand, 0 },
+- /*
+- ** .pp
+- ** This command is used to verify S/MIME signatures of type
+- ** \fCapplication/x-pkcs7-mime\fP.
+- ** .pp
+- ** This is a format string, see the $$smime_decrypt_command command for
+- ** possible \fCprintf(3)\fP-like sequences.
+- ** (S/MIME only)
+- */
+-#endif
+-#ifdef USE_SMTP
+- { "smtp_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_SmtpAuthenticators, 0 },
+- /*
+- ** .pp
+- ** This is a colon-delimited list of authentication methods NeoMutt may
+- ** attempt to use to log in to an SMTP server, in the order NeoMutt should
+- ** try them. Authentication methods are any SASL mechanism, e.g. "plain",
+- ** "digest-md5", "gssapi" or "cram-md5".
+- ** This option is case-insensitive. If it is "unset"
+- ** (the default) NeoMutt will try all available methods, in order from
+- ** most-secure to least-secure. Support for the "plain" mechanism is
+- ** bundled; other mechanisms are provided by an external SASL library (look
+- ** for +USE_SASL in the output of neomutt -v).
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set smtp_authenticators="digest-md5:cram-md5"
+- ** .te
+- */
+- { "smtp_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_SmtpOauthRefreshCommand, 0 },
+- /*
+- ** .pp
+- ** The command to run to generate an OAUTH refresh token for
+- ** authorizing your connection to your SMTP server. This command will be
+- ** run on every connection attempt that uses the OAUTHBEARER authentication
+- ** mechanism. See "$oauth" for details.
+- */
+- { "smtp_pass", DT_STRING|DT_SENSITIVE, &C_SmtpPass, 0 },
+- /*
+- ** .pp
+- ** Specifies the password for your SMTP account. If \fIunset\fP, NeoMutt will
+- ** prompt you for your password when you first send mail via SMTP.
+- ** See $$smtp_url to configure NeoMutt to send mail via SMTP.
+- ** .pp
+- ** \fBWarning\fP: you should only use this option when you are on a
+- ** fairly secure machine, because the superuser can read your neomuttrc even
+- ** if you are the only one who can read the file.
+- */
+- { "smtp_url", DT_STRING|DT_SENSITIVE, &C_SmtpUrl, 0 },
+- /*
+- ** .pp
+- ** Defines the SMTP smarthost where sent messages should relayed for
+- ** delivery. This should take the form of an SMTP URL, e.g.:
+- ** .ts
+- ** smtp[s]://[user[:pass]@]host[:port]
+- ** .te
+- ** .pp
+- ** where "[...]" denotes an optional part.
+- ** Setting this variable overrides the value of the $$sendmail
+- ** variable.
+- ** .pp
+- ** Also see $$write_bcc.
+- */
+-#endif /* USE_SMTP */
+- { "sort", DT_SORT|R_INDEX|R_RESORT, &C_Sort, SORT_DATE, 0, pager_validator },
+- /*
+- ** .pp
+- ** Specifies how to sort messages in the "index" menu. Valid values
+- ** are:
+- ** .il
+- ** .dd date or date-sent
+- ** .dd date-received
+- ** .dd from
+- ** .dd mailbox-order (unsorted)
+- ** .dd score
+- ** .dd size
+- ** .dd spam
+- ** .dd subject
+- ** .dd threads
+- ** .dd to
+- ** .ie
+- ** .pp
+- ** You may optionally use the "reverse-" prefix to specify reverse sorting
+- ** order.
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set sort=reverse-date-sent
+- ** .te
+- */
+- { "sort_alias", DT_SORT|DT_SORT_ALIAS, &C_SortAlias, SORT_ALIAS },
+- /*
+- ** .pp
+- ** Specifies how the entries in the "alias" menu are sorted. The
+- ** following are legal values:
+- ** .il
+- ** .dd address (sort alphabetically by email address)
+- ** .dd alias (sort alphabetically by alias name)
+- ** .dd unsorted (leave in order specified in .neomuttrc)
+- ** .ie
+- */
+- { "sort_aux", DT_SORT|DT_SORT_AUX|R_INDEX|R_RESORT|R_RESORT_SUB, &C_SortAux, SORT_DATE },
+- /*
+- ** .pp
+- ** This provides a secondary sort for messages in the "index" menu, used
+- ** when the $$sort value is equal for two messages.
+- ** .pp
+- ** When sorting by threads, this variable controls how threads are sorted
+- ** in relation to other threads, and how the branches of the thread trees
+- ** are sorted. This can be set to any value that $$sort can, except
+- ** "threads" (in that case, NeoMutt will just use "date-sent"). You can also
+- ** specify the "last-" prefix in addition to the "reverse-" prefix, but "last-"
+- ** must come after "reverse-". The "last-" prefix causes messages to be
+- ** sorted against its siblings by which has the last descendant, using
+- ** the rest of $$sort_aux as an ordering. For instance,
+- ** .ts
+- ** set sort_aux=last-date-received
+- ** .te
+- ** .pp
+- ** would mean that if a new message is received in a
+- ** thread, that thread becomes the last one displayed (or the first, if
+- ** you have "\fCset sort=reverse-threads\fP".)
+- ** .pp
+- ** Note: For reversed-threads $$sort
+- ** order, $$sort_aux is reversed again (which is not the right thing to do,
+- ** but kept to not break any existing configuration setting).
+- */
+- { "sort_browser", DT_SORT|DT_SORT_BROWSER, &C_SortBrowser, SORT_ALPHA },
+- /*
+- ** .pp
+- ** Specifies how to sort entries in the file browser. By default, the
+- ** entries are sorted alphabetically. Valid values:
+- ** .il
+- ** .dd alpha (alphabetically)
+- ** .dd count (all message count)
+- ** .dd date
+- ** .dd desc (description)
+- ** .dd new (new message count)
+- ** .dd size
+- ** .dd unsorted
+- ** .ie
+- ** .pp
+- ** You may optionally use the "reverse-" prefix to specify reverse sorting
+- ** order (example: "\fCset sort_browser=reverse-date\fP").
+- */
+- { "sort_re", DT_BOOL|R_INDEX|R_RESORT|R_RESORT_INIT, &C_SortRe, true, 0, pager_validator },
+- /*
+- ** .pp
+- ** This variable is only useful when sorting by mailboxes in sidebar. By default,
+- ** entries are unsorted. Valid values:
+- ** .il
+- ** .dd count (all message count)
+- ** .dd desc (virtual mailbox description)
+- ** .dd new (new message count)
+- ** .dd path
+- ** .dd unsorted
+- ** .ie
+- */
+- { "spam_separator", DT_STRING, &C_SpamSeparator, IP "," },
+- /*
+- ** .pp
+- ** This variable controls what happens when multiple spam headers
+- ** are matched: if \fIunset\fP, each successive header will overwrite any
+- ** previous matches value for the spam label. If \fIset\fP, each successive
+- ** match will append to the previous, using this variable's value as a
+- ** separator.
+- */
+- { "spoolfile", DT_STRING|DT_PATH|DT_MAILBOX, &C_Spoolfile, 0 },
+- /*
+- ** .pp
+- ** If your spool mailbox is in a non-default place where NeoMutt can't find
+- ** it, you can specify its location with this variable. The description from
+- ** "named-mailboxes" or "virtual-mailboxes" may be used for the spoolfile.
+- ** .pp
+- ** If not specified, then the environment variables \fC$$$MAIL\fP and
+- ** \fC$$$MAILDIR\fP will be checked.
+- */
+-#ifdef USE_SSL
+-#ifdef USE_SSL_GNUTLS
+- { "ssl_ca_certificates_file", DT_STRING|DT_PATH, &C_SslCaCertificatesFile, 0 },
+- /*
+- ** .pp
+- ** This variable specifies a file containing trusted CA certificates.
+- ** Any server certificate that is signed with one of these CA
+- ** certificates is also automatically accepted. (GnuTLS only)
+- ** .pp
+- ** Example:
+- ** .ts
+- ** set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
+- ** .te
+- */
+-#endif /* USE_SSL_GNUTLS */
+- { "ssl_ciphers", DT_STRING, &C_SslCiphers, 0 },
+- /*
+- ** .pp
+- ** Contains a colon-separated list of ciphers to use when using SSL.
+- ** For OpenSSL, see ciphers(1) for the syntax of the string.
+- ** .pp
+- ** For GnuTLS, this option will be used in place of "NORMAL" at the
+- ** start of the priority string. See gnutls_priority_init(3) for the
+- ** syntax and more details. (Note: GnuTLS version 2.1.7 or higher is
+- ** required.)
+- */
+- { "ssl_client_cert", DT_STRING|DT_PATH, &C_SslClientCert, 0 },
+- /*
+- ** .pp
+- ** The file containing a client certificate and its associated private
+- ** key.
+- */
+- { "ssl_force_tls", DT_BOOL, &C_SslForceTls, true },
+- /*
+- ** .pp
+- ** If this variable is \fIset\fP, NeoMutt will require that all connections
+- ** to remote servers be encrypted. Furthermore it will attempt to
+- ** negotiate TLS even if the server does not advertise the capability,
+- ** since it would otherwise have to abort the connection anyway. This
+- ** option supersedes $$ssl_starttls.
+- */
+-#ifdef USE_SSL_GNUTLS
+- { "ssl_min_dh_prime_bits", DT_NUMBER|DT_NOT_NEGATIVE, &C_SslMinDhPrimeBits, 0 },
+- /*
+- ** .pp
+- ** This variable specifies the minimum acceptable prime size (in bits)
+- ** for use in any Diffie-Hellman key exchange. A value of 0 will use
+- ** the default from the GNUTLS library. (GnuTLS only)
+- */
+-#endif /* USE_SSL_GNUTLS */
+- { "ssl_starttls", DT_QUAD, &C_SslStarttls, MUTT_YES },
+- /*
+- ** .pp
+- ** If \fIset\fP (the default), NeoMutt will attempt to use \fCSTARTTLS\fP on servers
+- ** advertising the capability. When \fIunset\fP, NeoMutt will not attempt to
+- ** use \fCSTARTTLS\fP regardless of the server's capabilities.
+- */
+-#ifdef USE_SSL_OPENSSL
+- { "ssl_use_sslv2", DT_BOOL, &C_SslUseSslv2, false },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use SSLv2 when communicating with servers that
+- ** request it. \fBN.B. As of 2011, SSLv2 is considered insecure, and using
+- ** is inadvisable. See https://tools.ietf.org/html/rfc6176 .\fP
+- ** (OpenSSL only)
+- */
+-#endif /* defined USE_SSL_OPENSSL */
+- { "ssl_use_sslv3", DT_BOOL, &C_SslUseSslv3, false },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use SSLv3 when communicating with servers that
+- ** request it. \fBN.B. As of 2015, SSLv3 is considered insecure, and using
+- ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+- */
+- { "ssl_use_tlsv1", DT_BOOL, &C_SslUseTlsv1, false },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use TLSv1.0 when communicating with servers that
+- ** request it. \fBN.B. As of 2015, TLSv1.0 is considered insecure, and using
+- ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+- */
+- { "ssl_use_tlsv1_1", DT_BOOL, &C_SslUseTlsv11, false },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use TLSv1.1 when communicating with servers that
+- ** request it. \fBN.B. As of 2015, TLSv1.1 is considered insecure, and using
+- ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
+- */
+- { "ssl_use_tlsv1_2", DT_BOOL, &C_SslUseTlsv12, true },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use TLSv1.2 when communicating with servers that
+- ** request it.
+- */
+- { "ssl_use_tlsv1_3", DT_BOOL, &C_SslUseTlsv13, true },
+- /*
+- ** .pp
+- ** If \fIset\fP , NeoMutt will use TLSv1.3 when communicating with servers that
+- ** request it.
+- */
+-#ifdef USE_SSL_OPENSSL
+- { "ssl_usesystemcerts", DT_BOOL, &C_SslUsesystemcerts, true },
+- /*
+- ** .pp
+- ** If set to \fIyes\fP, NeoMutt will use CA certificates in the
+- ** system-wide certificate store when checking if a server certificate
+- ** is signed by a trusted CA. (OpenSSL only)
+- */
+-#endif
+- { "ssl_verify_dates", DT_BOOL, &C_SslVerifyDates, true },
+- /*
+- ** .pp
+- ** If \fIset\fP (the default), NeoMutt will not automatically accept a server
+- ** certificate that is either not yet valid or already expired. You should
+- ** only unset this for particular known hosts, using the
+- ** \fC$<account-hook>\fP function.
+- */
+- { "ssl_verify_host", DT_BOOL, &C_SslVerifyHost, true },
+- /*
+- ** .pp
+- ** If \fIset\fP (the default), NeoMutt will not automatically accept a server
+- ** certificate whose host name does not match the host used in your folder
+- ** URL. You should only unset this for particular known hosts, using
+- ** the \fC$<account-hook>\fP function.
+- */
+-#ifdef USE_SSL_OPENSSL
+-#ifdef HAVE_SSL_PARTIAL_CHAIN
+- { "ssl_verify_partial_chains", DT_BOOL, &C_SslVerifyPartialChains, false },
+- /*
+- ** .pp
+- ** This option should not be changed from the default unless you understand
+- ** what you are doing.
+- ** .pp
+- ** Setting this variable to \fIyes\fP will permit verifying partial
+- ** certification chains, i. e. a certificate chain where not the root,
+- ** but an intermediate certificate CA, or the host certificate, are
+- ** marked trusted (in $$certificate_file), without marking the root
+- ** signing CA as trusted.
+- ** .pp
+- ** (OpenSSL 1.0.2b and newer only).
+- */
+-#endif /* defined HAVE_SSL_PARTIAL_CHAIN */
+-#endif /* defined USE_SSL_OPENSSL */
+-#endif /* defined(USE_SSL) */
+- { "status_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_StatusChars, IP "-*%A" },
+- /*
+- ** .pp
+- ** Controls the characters used by the "%r" indicator in $$status_format.
+- ** .dl
+- ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
+- ** .dt 1 .dd - .dd Mailbox is unchanged
+- ** .dt 2 .dd * .dd Mailbox has been changed and needs to be resynchronized
+- ** .dt 3 .dd % .dd Mailbox is read-only, or will not be written when exiting.
+- ** (You can toggle whether to write changes to a mailbox
+- ** with the \fC<toggle-write>\fP operation, bound by default
+- ** to "%")
+- ** .dt 4 .dd A .dd Folder opened in attach-message mode.
+- ** (Certain operations like composing a new mail, replying,
+- ** forwarding, etc. are not permitted in this mode)
+- ** .de
+- */
+- { "status_format", DT_STRING|R_INDEX|R_PAGER, &C_StatusFormat, IP "-%r-NeoMutt: %D [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---" },
+- /*
+- ** .pp
+- ** Controls the format of the status line displayed in the "index"
+- ** menu. This string is similar to $$index_format, but has its own
+- ** set of \fCprintf(3)\fP-like sequences:
+- ** .dl
+- ** .dt %b .dd Number of mailboxes with new mail *
+- ** .dt %d .dd Number of deleted messages *
+- ** .dt %D .dd Description of the mailbox
+- ** .dt %f .dd The full pathname of the current mailbox
+- ** .dt %F .dd Number of flagged messages *
+- ** .dt %h .dd Local hostname
+- ** .dt %l .dd Size (in bytes) of the current mailbox (see $formatstrings-size) *
+- ** .dt %L .dd Size (in bytes) of the messages shown
+- ** (i.e., which match the current limit) (see $formatstrings-size) *
+- ** .dt %m .dd The number of messages in the mailbox *
+- ** .dt %M .dd The number of messages shown (i.e., which match the current limit) *
+- ** .dt %n .dd Number of new messages in the mailbox *
+- ** .dt %o .dd Number of old unread messages *
+- ** .dt %p .dd Number of postponed messages *
+- ** .dt %P .dd Percentage of the way through the index
+- ** .dt %r .dd Modified/read-only/won't-write/attach-message indicator,
+- ** According to $$status_chars
+- ** .dt %R .dd Number of read messages *
+- ** .dt %s .dd Current sorting mode ($$sort)
+- ** .dt %S .dd Current aux sorting method ($$sort_aux)
+- ** .dt %t .dd Number of tagged messages *
+- ** .dt %u .dd Number of unread messages *
+- ** .dt %v .dd NeoMutt version string
+- ** .dt %V .dd Currently active limit pattern, if any *
+- ** .dt %>X .dd Right justify the rest of the string and pad with "X"
+- ** .dt %|X .dd Pad to the end of the line with "X"
+- ** .dt %*X .dd Soft-fill with character "X" as pad
+- ** .de
+- ** .pp
+- ** For an explanation of "soft-fill", see the $$index_format documentation.
+- ** .pp
+- ** * = can be optionally printed if nonzero
+- ** .pp
+- ** Some of the above sequences can be used to optionally print a string
+- ** if their value is nonzero. For example, you may only want to see the
+- ** number of flagged messages if such messages exist, since zero is not
+- ** particularly meaningful. To optionally print a string based upon one
+- ** of the above sequences, the following construct is used:
+- ** .pp
+- ** \fC%?<sequence_char>?<optional_string>?\fP
+- ** .pp
+- ** where \fIsequence_char\fP is a character from the table above, and
+- ** \fIoptional_string\fP is the string you would like printed if
+- ** \fIsequence_char\fP is nonzero. \fIoptional_string\fP \fBmay\fP contain
+- ** other sequences as well as normal text, but you may \fBnot\fP nest
+- ** optional strings.
+- ** .pp
+- ** Here is an example illustrating how to optionally print the number of
+- ** new messages in a mailbox:
+- ** .pp
+- ** \fC%?n?%n new messages.?\fP
+- ** .pp
+- ** You can also switch between two strings using the following construct:
+- ** .pp
+- ** \fC%?<sequence_char>?<if_string>&<else_string>?\fP
+- ** .pp
+- ** If the value of \fIsequence_char\fP is non-zero, \fIif_string\fP will
+- ** be expanded, otherwise \fIelse_string\fP will be expanded.
+- ** .pp
+- ** You can force the result of any \fCprintf(3)\fP-like sequence to be lowercase
+- ** by prefixing the sequence character with an underscore ("_") sign.
+- ** For example, if you want to display the local hostname in lowercase,
+- ** you would use: "\fC%_h\fP".
+- ** .pp
+- ** If you prefix the sequence character with a colon (":") character, NeoMutt
+- ** will replace any dots in the expansion by underscores. This might be helpful
+- ** with IMAP folders that don't like dots in folder names.
+- */
+- { "status_on_top", DT_BOOL|R_REFLOW, &C_StatusOnTop, false },
+- /*
+- ** .pp
+- ** Setting this variable causes the "status bar" to be displayed on
+- ** the first line of the screen rather than near the bottom. If $$help
+- ** is \fIset\fP, too it'll be placed at the bottom.
+- */
+- { "strict_threads", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_StrictThreads, false, 0, pager_validator },
+- /*
+- ** .pp
+- ** If \fIset\fP, threading will only make use of the "In-Reply-To" and
+- ** "References:" fields when you $$sort by message threads. By
+- ** default, messages with the same subject are grouped together in
+- ** "pseudo threads.". This may not always be desirable, such as in a
+- ** personal mailbox where you might have several unrelated messages with
+- ** the subjects like "hi" which will get grouped together. See also
+- ** $$sort_re for a less drastic way of controlling this
+- ** behavior.
+- */
+- { "suspend", DT_BOOL, &C_Suspend, true },
+- /*
+- ** .pp
+- ** When \fIunset\fP, NeoMutt won't stop when the user presses the terminal's
+- ** \fIsusp\fP key, usually "^Z". This is useful if you run NeoMutt
+- ** inside an xterm using a command like "\fCxterm -e neomutt\fP".
+- */
+- { "text_flowed", DT_BOOL, &C_TextFlowed, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will generate "format=flowed" bodies with a content type
+- ** of "\fCtext/plain; format=flowed\fP".
+- ** This format is easier to handle for some mailing software, and generally
+- ** just looks like ordinary text. To actually make use of this format's
+- ** features, you'll need support in your editor.
+- ** .pp
+- ** The option only controls newly composed messages. Postponed messages,
+- ** resent messages, and draft messages (via -H on the command line) will
+- ** use the content-type of the source message.
+- ** .pp
+- ** Note that $$indent_string is ignored when this option is \fIset\fP.
+- */
+- { "thorough_search", DT_BOOL, &C_ThoroughSearch, true },
+- /*
+- ** .pp
+- ** Affects the \fC~b\fP and \fC~h\fP search operations described in
+- ** section "$patterns". If \fIset\fP, the headers and body/attachments of
+- ** messages to be searched are decoded before searching. If \fIunset\fP,
+- ** messages are searched as they appear in the folder.
+- ** .pp
+- ** Users searching attachments or for non-ASCII characters should \fIset\fP
+- ** this value because decoding also includes MIME parsing/decoding and possible
+- ** character set conversions. Otherwise NeoMutt will attempt to match against the
+- ** raw message received (for example quoted-printable encoded or with encoded
+- ** headers) which may lead to incorrect search results.
+- */
+- { "thread_received", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_ThreadReceived, false, 0, pager_validator },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt uses the date received rather than the date sent
+- ** to thread messages by subject.
+- */
+- { "tilde", DT_BOOL|R_PAGER, &C_Tilde, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, the internal-pager will pad blank lines to the bottom of the
+- ** screen with a tilde ("~").
+- */
+- { "time_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_TimeInc, 0 },
+- /*
+- ** .pp
+- ** Along with $$read_inc, $$write_inc, and $$net_inc, this
+- ** variable controls the frequency with which progress updates are
+- ** displayed. It suppresses updates less than $$time_inc milliseconds
+- ** apart. This can improve throughput on systems with slow terminals,
+- ** or when running NeoMutt on a remote system.
+- ** .pp
+- ** Also see the "$tuning" section of the manual for performance considerations.
+- */
+- { "timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_Timeout, 600 },
+- /*
+- ** .pp
+- ** When NeoMutt is waiting for user input either idling in menus or
+- ** in an interactive prompt, NeoMutt would block until input is
+- ** present. Depending on the context, this would prevent certain
+- ** operations from working, like checking for new mail or keeping
+- ** an IMAP connection alive.
+- ** .pp
+- ** This variable controls how many seconds NeoMutt will at most wait
+- ** until it aborts waiting for input, performs these operations and
+- ** continues to wait for input.
+- ** .pp
+- ** A value of zero or less will cause NeoMutt to never time out.
+- */
+- { "tmpdir", DT_STRING|DT_PATH, &C_Tmpdir, IP "/tmp" },
+- /*
+- ** .pp
+- ** This variable allows you to specify where NeoMutt will place its
+- ** temporary files needed for displaying and composing messages.
+- ** .pp
+- ** If this variable is not set, the environment variable \fC$$$TMPDIR\fP is
+- ** used. Failing that, then "\fC/tmp\fP" is used.
+- */
+- { "to_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_ToChars, IP " +TCFLR" },
+- /*
+- ** .pp
+- ** Controls the character used to indicate mail addressed to you.
+- ** .dl
+- ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
+- ** .dt 1 .dd <space> .dd The mail is \fInot\fP addressed to your address.
+- ** .dt 2 .dd + .dd You are the only recipient of the message.
+- ** .dt 3 .dd T .dd Your address appears in the "To:" header field, but you are not the only recipient of the message.
+- ** .dt 4 .dd C .dd Your address is specified in the "Cc:" header field, but you are not the only recipient.
+- ** .dt 5 .dd F .dd Indicates the mail that was sent by \fIyou\fP.
+- ** .dt 6 .dd L .dd Indicates the mail was sent to a mailing-list you subscribe to.
+- ** .dt 7 .dd R .dd Your address appears in the "Reply-To:" header field but none of the above applies.
+- ** .de
+- */
+- { "trash", DT_STRING|DT_PATH|DT_MAILBOX, &C_Trash, 0 },
+- /*
+- ** .pp
+- ** If set, this variable specifies the path of the trash folder where the
+- ** mails marked for deletion will be moved, instead of being irremediably
+- ** purged.
+- ** .pp
+- ** NOTE: When you delete a message in the trash folder, it is really
+- ** deleted, so that you have a way to clean the trash.
+- */
+- { "ts_enabled", DT_BOOL|R_INDEX|R_PAGER, &C_TsEnabled, false },
+- /* The default must be off to force in the validity checking. */
+- /*
+- ** .pp
+- ** Controls whether NeoMutt tries to set the terminal status line and icon name.
+- ** Most terminal emulators emulate the status line in the window title.
+- */
+- { "ts_icon_format", DT_STRING|R_INDEX|R_PAGER, &C_TsIconFormat, IP "M%?n?AIL&ail?" },
+- /*
+- ** .pp
+- ** Controls the format of the icon title, as long as "$$ts_enabled" is set.
+- ** This string is identical in formatting to the one used by
+- ** "$$status_format".
+- */
+- { "ts_status_format", DT_STRING|R_INDEX|R_PAGER, &C_TsStatusFormat, IP "NeoMutt with %?m?%m messages&no messages?%?n? [%n NEW]?" },
+- /*
+- ** .pp
+- ** Controls the format of the terminal status line (or window title),
+- ** provided that "$$ts_enabled" has been set. This string is identical in
+- ** formatting to the one used by "$$status_format".
+- */
+-#ifdef USE_SOCKET
+- { "tunnel", DT_STRING|DT_COMMAND, &C_Tunnel, 0 },
+- /*
+- ** .pp
+- ** Setting this variable will cause NeoMutt to open a pipe to a command
+- ** instead of a raw socket. You may be able to use this to set up
+- ** preauthenticated connections to your IMAP/POP3/SMTP server. Example:
+- ** .ts
+- ** set tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
+- ** .te
+- ** .pp
+- ** Note: For this example to work you must be able to log in to the remote
+- ** machine without having to enter a password.
+- ** .pp
+- ** When set, NeoMutt uses the tunnel for all remote connections.
+- ** Please see "$account-hook" in the manual for how to use different
+- ** tunnel commands per connection.
+- */
+-#endif
+- { "uncollapse_jump", DT_BOOL, &C_UncollapseJump, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will jump to the next unread message, if any,
+- ** when the current thread is \fIun\fPcollapsed.
+- */
+- { "uncollapse_new", DT_BOOL, &C_UncollapseNew, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will automatically uncollapse any collapsed thread
+- ** that receives a new message. When \fIunset\fP, collapsed threads will
+- ** remain collapsed. the presence of the new message will still affect
+- ** index sorting, though.
+- */
+- { "use_8bitmime", DT_BOOL, &C_Use8bitmime, false },
+- /*
+- ** .pp
+- ** \fBWarning:\fP do not set this variable unless you are using a version
+- ** of sendmail which supports the \fC-B8BITMIME\fP flag (such as sendmail
+- ** 8.8.x) or you may not be able to send mail.
+- ** .pp
+- ** When \fIset\fP, NeoMutt will invoke $$sendmail with the \fC-B8BITMIME\fP
+- ** flag when sending 8-bit messages to enable ESMTP negotiation.
+- */
+- { "use_domain", DT_BOOL, &C_UseDomain, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will qualify all local addresses (ones without the
+- ** "@host" portion) with the value of $$hostname. If \fIunset\fP, no
+- ** addresses will be qualified.
+- */
+- { "use_envelope_from", DT_BOOL, &C_UseEnvelopeFrom, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will set the \fIenvelope\fP sender of the message.
+- ** If $$envelope_from_address is \fIset\fP, it will be used as the sender
+- ** address. If \fIunset\fP, NeoMutt will attempt to derive the sender from the
+- ** "From:" header.
+- ** .pp
+- ** Note that this information is passed to sendmail command using the
+- ** \fC-f\fP command line switch. Therefore setting this option is not useful
+- ** if the $$sendmail variable already contains \fC-f\fP or if the
+- ** executable pointed to by $$sendmail doesn't support the \fC-f\fP switch.
+- */
+- { "use_from", DT_BOOL, &C_UseFrom, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will generate the "From:" header field when
+- ** sending messages. If \fIunset\fP, no "From:" header field will be
+- ** generated unless the user explicitly sets one using the "$my_hdr"
+- ** command.
+- */
+-#ifdef HAVE_GETADDRINFO
+- { "use_ipv6", DT_BOOL, &C_UseIpv6, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will look for IPv6 addresses of hosts it tries to
+- ** contact. If this option is \fIunset\fP, NeoMutt will restrict itself to IPv4 addresses.
+- ** Normally, the default should work.
+- */
+-#endif /* HAVE_GETADDRINFO */
+- { "user_agent", DT_BOOL, &C_UserAgent, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will add a "User-Agent:" header to outgoing
+- ** messages, indicating which version of NeoMutt was used for composing
+- ** them.
+- */
+-#ifdef USE_NOTMUCH
+- { "vfolder_format", DT_STRING|DT_NOT_EMPTY|R_INDEX, &C_VfolderFormat, IP "%2C %?n?%4n/& ?%4m %f" },
+- /*
+- ** .pp
+- ** This variable allows you to customize the file browser display for virtual
+- ** folders to your personal taste. This string uses many of the same
+- ** expandos as $$folder_format.
+- */
+- { "virtual_spoolfile", DT_BOOL, &C_VirtualSpoolfile, false },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will use the first defined virtual mailbox (see
+- ** virtual-mailboxes) as a spool file.
+- **
+- ** This command is now unnecessary. $$spoolfile has been extended to support
+- ** mailbox descriptions as a value.
+- */
+-#endif
+- { "visual", DT_STRING|DT_COMMAND, &C_Visual, IP "vi" },
+- /*
+- ** .pp
+- ** Specifies the visual editor to invoke when the "\fC~v\fP" command is
+- ** given in the built-in editor.
+- ** .pp
+- ** $$visual is overridden by the environment variable \fC$$$VISUAL\fP or \fC$$$EDITOR\fP.
+- */
+- { "wait_key", DT_BOOL, &C_WaitKey, true },
+- /*
+- ** .pp
+- ** Controls whether NeoMutt will ask you to press a key after an external command
+- ** has been invoked by these functions: \fC<shell-escape>\fP,
+- ** \fC<pipe-message>\fP, \fC<pipe-entry>\fP, \fC<print-message>\fP,
+- ** and \fC<print-entry>\fP commands.
+- ** .pp
+- ** It is also used when viewing attachments with "$auto_view", provided
+- ** that the corresponding mailcap entry has a \fIneedsterminal\fP flag,
+- ** and the external program is interactive.
+- ** .pp
+- ** When \fIset\fP, NeoMutt will always ask for a key. When \fIunset\fP, NeoMutt will wait
+- ** for a key only if the external command returned a non-zero status.
+- */
+- { "weed", DT_BOOL, &C_Weed, true },
+- /*
+- ** .pp
+- ** When \fIset\fP, NeoMutt will weed headers when displaying, forwarding,
+- ** printing, or replying to messages.
+- */
+- { "wrap", DT_NUMBER|R_PAGER_FLOW, &C_Wrap, 0 },
+- /*
+- ** .pp
+- ** When set to a positive value, NeoMutt will wrap text at $$wrap characters.
+- ** When set to a negative value, NeoMutt will wrap text so that there are $$wrap
+- ** characters of empty space on the right side of the terminal. Setting it
+- ** to zero makes NeoMutt wrap at the terminal width.
+- ** .pp
+- ** Also see $$reflow_wrap.
+- */
+- { "wrap_headers", DT_NUMBER|DT_NOT_NEGATIVE|R_PAGER, &C_WrapHeaders, 78, 0, wrapheaders_validator },
+- /*
+- ** .pp
+- ** This option specifies the number of characters to use for wrapping
+- ** an outgoing message's headers. Allowed values are between 78 and 998
+- ** inclusive.
+- ** .pp
+- ** \fBNote:\fP This option usually shouldn't be changed. RFC5233
+- ** recommends a line length of 78 (the default), so \fBplease only change
+- ** this setting when you know what you're doing\fP.
+- */
+- { "wrap_search", DT_BOOL, &C_WrapSearch, true },
+- /*
+- ** .pp
+- ** Controls whether searches wrap around the end.
+- ** .pp
+- ** When \fIset\fP, searches will wrap around the first (or last) item. When
+- ** \fIunset\fP, incremental searches will not wrap.
+- */
+- { "write_bcc", DT_BOOL, &C_WriteBcc, false },
+- /*
+- ** .pp
+- ** Controls whether mutt writes out the ``Bcc:'' header when
+- ** preparing messages to be sent. Some MTAs, such as Exim and
+- ** Courier, do not strip the ``Bcc:'' header; so it is advisable to
+- ** leave this unset unless you have a particular need for the header
+- ** to be in the sent message.
+- ** .pp
+- ** If mutt is set to deliver directly via SMTP(see $$smtp_url),
+- ** this option does nothing: mutt will never write out the ``Bcc:''
+- ** header in this case.
+- ** .pp
+- ** Note this option only affects the sending of messages. Fcc'ed
+- ** copies of a message will always contain the ``Bcc:'' header if
+- ** one exists.
+- */
+- { "write_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_WriteInc, 10 },
+- /*
+- ** .pp
+- ** When writing a mailbox, a message will be printed every
+- ** $$write_inc messages to indicate progress. If set to 0, only a
+- ** single message will be displayed before writing a mailbox.
+- ** .pp
+- ** Also see the $$read_inc, $$net_inc and $$time_inc variables and the
+- ** "$tuning" section of the manual for performance considerations.
+- */
+-#ifdef USE_NNTP
+- { "x_comment_to", DT_BOOL, &C_XCommentTo, false },
+- /*
+- ** .pp
+- ** If \fIset\fP, NeoMutt will add "X-Comment-To:" field (that contains full
+- ** name of original article author) to article that followuped to newsgroup.
+- */
+-#endif
+- /*--*/
+-
+- { "ignore_linear_white_space", DT_DEPRECATED|DT_BOOL, &C_IgnoreLinearWhiteSpace, false },
+- { "pgp_encrypt_self", DT_DEPRECATED|DT_QUAD, &C_PgpEncryptSelf, MUTT_NO },
+- { "smime_encrypt_self", DT_DEPRECATED|DT_QUAD, &C_SmimeEncryptSelf, MUTT_NO },
+-
+- { "abort_noattach_regexp", DT_SYNONYM, NULL, IP "abort_noattach_regex", },
+- { "attach_keyword", DT_SYNONYM, NULL, IP "abort_noattach_regex", },
+- { "edit_hdrs", DT_SYNONYM, NULL, IP "edit_headers", },
+- { "envelope_from", DT_SYNONYM, NULL, IP "use_envelope_from", },
+- { "forw_decode", DT_SYNONYM, NULL, IP "forward_decode", },
+- { "forw_decrypt", DT_SYNONYM, NULL, IP "forward_decrypt", },
+- { "forw_format", DT_SYNONYM, NULL, IP "forward_format", },
+- { "forw_quote", DT_SYNONYM, NULL, IP "forward_quote", },
+- { "hdr_format", DT_SYNONYM, NULL, IP "index_format", },
+- { "indent_str", DT_SYNONYM, NULL, IP "indent_string", },
+- { "mime_fwd", DT_SYNONYM, NULL, IP "mime_forward", },
+- { "msg_format", DT_SYNONYM, NULL, IP "message_format", },
+- { "pgp_autoencrypt", DT_SYNONYM, NULL, IP "crypt_autoencrypt", },
+- { "pgp_autosign", DT_SYNONYM, NULL, IP "crypt_autosign", },
+- { "pgp_auto_traditional", DT_SYNONYM, NULL, IP "pgp_replyinline", },
+- { "pgp_create_traditional", DT_SYNONYM, NULL, IP "pgp_autoinline", },
+- { "pgp_replyencrypt", DT_SYNONYM, NULL, IP "crypt_replyencrypt", },
+- { "pgp_replysign", DT_SYNONYM, NULL, IP "crypt_replysign", },
+- { "pgp_replysignencrypted", DT_SYNONYM, NULL, IP "crypt_replysignencrypted", },
+- { "pgp_self_encrypt_as", DT_SYNONYM, NULL, IP "pgp_default_key", },
+- { "pgp_verify_sig", DT_SYNONYM, NULL, IP "crypt_verify_sig", },
+- { "post_indent_str", DT_SYNONYM, NULL, IP "post_indent_string", },
+- { "print_cmd", DT_SYNONYM, NULL, IP "print_command", },
+- { "quote_regexp", DT_SYNONYM, NULL, IP "quote_regex", },
+- { "reply_regexp", DT_SYNONYM, NULL, IP "reply_regex", },
+- { "smime_self_encrypt_as", DT_SYNONYM, NULL, IP "smime_default_key", },
+- { "xterm_icon", DT_SYNONYM, NULL, IP "ts_icon_format", },
+- { "xterm_set_titles", DT_SYNONYM, NULL, IP "ts_enabled", },
+- { "xterm_title", DT_SYNONYM, NULL, IP "ts_status_format", },
+-
+- { NULL, 0, NULL, 0, 0, NULL },
+-};
+-
+-/* functions used to parse commands in a rc file */
+-static enum CommandResult parse_alias (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_alternates (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_attachments (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_echo (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_finish (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_group (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_ifdef (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_ignore (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_lists (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_mailboxes (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_my_hdr (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#ifdef USE_SIDEBAR
+-static enum CommandResult parse_path_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_path_unlist (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#endif
+-static enum CommandResult parse_replace_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_set (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_setenv (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_source (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_spam_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_stailq (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_subjectrx_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_subscribe (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#ifdef USE_IMAP
+-static enum CommandResult parse_subscribe_to (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#endif
+-static enum CommandResult parse_tag_formats (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_tag_transforms (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unalias (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unalternates (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unattachments (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unignore (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unlists (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unmailboxes (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unmy_hdr (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unreplace_list (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unstailq (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unsubjectrx_list(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-static enum CommandResult parse_unsubscribe (struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#ifdef USE_IMAP
+-static enum CommandResult parse_unsubscribe_from(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-#endif
+-
+-const struct Command Commands[] = {
+-#ifdef USE_SOCKET
+- { "account-hook", mutt_parse_hook, MUTT_ACCOUNT_HOOK },
+-#endif
+- { "alias", parse_alias, 0 },
+- { "alternates", parse_alternates, 0 },
+- { "alternative_order", parse_stailq, IP &AlternativeOrderList },
+-#ifdef USE_COMPRESSED
+- { "append-hook", mutt_parse_hook, MUTT_APPEND_HOOK },
+-#endif
+- { "attachments", parse_attachments, 0 },
+- { "auto_view", parse_stailq, IP &AutoViewList },
+- { "bind", mutt_parse_bind, 0 },
+- { "charset-hook", mutt_parse_hook, MUTT_CHARSET_HOOK },
+-#ifdef USE_COMPRESSED
+- { "close-hook", mutt_parse_hook, MUTT_CLOSE_HOOK },
+-#endif
+-#ifdef HAVE_COLOR
+- { "color", mutt_parse_color, IP &Colors },
+-#endif
+- { "crypt-hook", mutt_parse_hook, MUTT_CRYPT_HOOK },
+- { "echo", parse_echo, 0 },
+- { "exec", mutt_parse_exec, 0 },
+- { "fcc-hook", mutt_parse_hook, MUTT_FCC_HOOK },
+- { "fcc-save-hook", mutt_parse_hook, MUTT_FCC_HOOK | MUTT_SAVE_HOOK },
+- { "finish", parse_finish, 0 },
+- { "folder-hook", mutt_parse_hook, MUTT_FOLDER_HOOK },
+- { "group", parse_group, MUTT_GROUP },
+- { "hdr_order", parse_stailq, IP &HeaderOrderList },
+- { "iconv-hook", mutt_parse_hook, MUTT_ICONV_HOOK },
+- { "ifdef", parse_ifdef, 0 },
+- { "ifndef", parse_ifdef, 1 },
+- { "ignore", parse_ignore, 0 },
+- { "index-format-hook", mutt_parse_idxfmt_hook, MUTT_IDXFMTHOOK },
+- { "lists", parse_lists, 0 },
+-#ifdef USE_LUA
+- { "lua", mutt_lua_parse, 0 },
+- { "lua-source", mutt_lua_source_file, 0 },
+-#endif
+- { "macro", mutt_parse_macro, 0 },
+- { "mailboxes", parse_mailboxes, 0 },
+- { "mailto_allow", parse_stailq, IP &MailToAllow },
+- { "mbox-hook", mutt_parse_hook, MUTT_MBOX_HOOK },
+- { "message-hook", mutt_parse_hook, MUTT_MESSAGE_HOOK },
+- { "mime_lookup", parse_stailq, IP &MimeLookupList },
+- { "mono", mutt_parse_mono, IP &Colors },
+- { "my_hdr", parse_my_hdr, 0 },
+- { "named-mailboxes", parse_mailboxes, MUTT_NAMED },
+- { "nospam", parse_spam_list, MUTT_NOSPAM },
+-#ifdef USE_COMPRESSED
+- { "open-hook", mutt_parse_hook, MUTT_OPEN_HOOK },
+-#endif
+- { "pgp-hook", mutt_parse_hook, MUTT_CRYPT_HOOK },
+- { "push", mutt_parse_push, 0 },
+- { "reply-hook", mutt_parse_hook, MUTT_REPLY_HOOK },
+- { "reset", parse_set, MUTT_SET_RESET },
+- { "save-hook", mutt_parse_hook, MUTT_SAVE_HOOK },
+- { "score", mutt_parse_score, 0 },
+- { "send-hook", mutt_parse_hook, MUTT_SEND_HOOK },
+- { "send2-hook", mutt_parse_hook, MUTT_SEND2_HOOK },
+- { "set", parse_set, MUTT_SET_SET },
+- { "setenv", parse_setenv, MUTT_SET_SET },
+- { "shutdown-hook", mutt_parse_hook, MUTT_SHUTDOWN_HOOK | MUTT_GLOBAL_HOOK },
+-#ifdef USE_SIDEBAR
+- { "sidebar_whitelist", parse_path_list, IP &SidebarWhitelist },
+-#endif
+- { "source", parse_source, 0 },
+- { "spam", parse_spam_list, MUTT_SPAM },
+- { "startup-hook", mutt_parse_hook, MUTT_STARTUP_HOOK | MUTT_GLOBAL_HOOK },
+- { "subjectrx", parse_subjectrx_list, IP &SubjectRegexList },
+- { "subscribe", parse_subscribe, 0 },
+-#ifdef USE_IMAP
+- { "subscribe-to", parse_subscribe_to, 0 },
+-#endif
+- { "tag-formats", parse_tag_formats, 0 },
+- { "tag-transforms", parse_tag_transforms, 0 },
+- { "timeout-hook", mutt_parse_hook, MUTT_TIMEOUT_HOOK | MUTT_GLOBAL_HOOK },
+- { "toggle", parse_set, MUTT_SET_INV },
+- { "unalias", parse_unalias, 0 },
+- { "unalternates", parse_unalternates, 0 },
+- { "unalternative_order", parse_unstailq, IP &AlternativeOrderList },
+- { "unattachments", parse_unattachments, 0 },
+- { "unauto_view", parse_unstailq, IP &AutoViewList },
+- { "unbind", mutt_parse_unbind, MUTT_UNBIND },
+-#ifdef HAVE_COLOR
+- { "uncolor", mutt_parse_uncolor, IP &Colors },
+-#endif
+- { "ungroup", parse_group, MUTT_UNGROUP },
+- { "unhdr_order", parse_unstailq, IP &HeaderOrderList },
+- { "unhook", mutt_parse_unhook, 0 },
+- { "unignore", parse_unignore, 0 },
+- { "unlists", parse_unlists, 0 },
+- { "unmacro", mutt_parse_unbind, MUTT_UNMACRO },
+- { "unmailboxes", parse_unmailboxes, 0 },
+- { "unmailto_allow", parse_unstailq, IP &MailToAllow },
+- { "unmime_lookup", parse_unstailq, IP &MimeLookupList },
+- { "unmono", mutt_parse_unmono, IP &Colors },
+- { "unmy_hdr", parse_unmy_hdr, 0 },
+- { "unscore", mutt_parse_unscore, 0 },
+- { "unset", parse_set, MUTT_SET_UNSET },
+- { "unsetenv", parse_setenv, MUTT_SET_UNSET },
+-#ifdef USE_SIDEBAR
+- { "unsidebar_whitelist", parse_path_unlist, IP &SidebarWhitelist },
+-#endif
+- { "unsubjectrx", parse_unsubjectrx_list, IP &SubjectRegexList },
+- { "unsubscribe", parse_unsubscribe, 0 },
+-#ifdef USE_IMAP
+- { "unsubscribe-from", parse_unsubscribe_from, 0 },
+-#endif
+-#ifdef USE_NOTMUCH
+- { "unvirtual-mailboxes", parse_unmailboxes, MUTT_VIRTUAL },
+- { "virtual-mailboxes", parse_mailboxes, MUTT_VIRTUAL | MUTT_NAMED },
+-#endif
+- { NULL, NULL, 0 },
+-};
+-// clang-format on
++struct ConfigSet * init_config (size_t size);
++int mutt_command_complete (char *buf, size_t buflen, int pos, int numtabs);
++const struct Command *mutt_command_get (const char *s);
++void mutt_commands_apply (void *data, void (*application)(void *, const struct Command *));
++int mutt_extract_token (struct Buffer *dest, struct Buffer *tok, TokenFlags flags);
++HookFlags mutt_get_hook_type (const char *name);
++int mutt_init (struct ConfigSet *cs, bool skip_sys_rc, struct ListHead *commands);
++int mutt_label_complete (char *buf, size_t buflen, int numtabs);
++bool mutt_nm_query_complete (char *buf, size_t buflen, int pos, int numtabs);
++bool mutt_nm_tag_complete (char *buf, size_t buflen, int numtabs);
++void mutt_opts_free (void);
++enum CommandResult mutt_parse_rc_line (/* const */ char *line, struct Buffer *token, struct Buffer *err);
++int mutt_query_variables (struct ListHead *queries);
++int mutt_var_value_complete(char *buf, size_t buflen, int pos);
++enum QuadOption query_quadoption (enum QuadOption opt, const char *prompt);
+
+ #endif /* MUTT_INIT_H */
+diff --git a/keymap.c b/keymap.c
+index d8d5e1a91..3a8802040 100644
+--- a/keymap.c
++++ b/keymap.c
+@@ -33,24 +33,23 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "keymap.h"
+-#include "curs_lib.h"
+ #include "functions.h"
+ #include "globals.h"
++#include "init.h"
+ #include "mutt_commands.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+-#include "mutt_window.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
++#include "ncrypt/lib.h"
+ #ifndef USE_SLANG_CURSES
+ #include <strings.h>
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_INOTIFY
+ #include "monitor.h"
+@@ -144,7 +143,8 @@ static struct Mapping KeyNames[] = {
+ { NULL, 0 },
+ };
+
+-int LastKey; ///< contains the last key the user pressed
++int LastKey; ///< contains the last key the user pressed
++keycode_t AbortKey; ///< code of key to abort prompts, normally Ctrl-G
+
+ struct Keymap *Keymaps[MENU_MAX];
+
+@@ -817,6 +817,48 @@ static const char *km_keyname(int c)
+ return buf;
+ }
+
++/**
++ * mutt_init_abort_key - Parse the abort_key config string
++ *
++ * Parse the string into C_AbortKeyStr and put the keycode into AbortKey.
++ */
++void mutt_init_abort_key(void)
++{
++ keycode_t buf[2];
++ size_t len = parsekeys(C_AbortKeyStr, buf, mutt_array_size(buf));
++ if (len == 0)
++ {
++ mutt_error(_("Abort key is not set, defaulting to Ctrl-G"));
++ AbortKey = ctrl('G');
++ return;
++ }
++ if (len > 1)
++ {
++ mutt_warning(
++ _("Specified abort key sequence (%s) will be truncated to first key"), C_AbortKeyStr);
++ }
++ AbortKey = buf[0];
++}
++
++/**
++ * mutt_abort_key_config_observer - Listen for abort_key config changes - Implements ::observer_t
++ */
++int mutt_abort_key_config_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++
++ if (mutt_str_strcmp(ec->name, "abort_key") != 0)
++ return 0;
++
++ mutt_init_abort_key();
++ return 0;
++}
++
+ /**
+ * km_expand_key - Get the key string bound to a Keymap
+ * @param s Buffer for the key string
+@@ -1105,7 +1147,7 @@ void km_error_key(enum MenuType menu)
+ }
+
+ /**
+- * mutt_parse_push - Parse the 'push' command - Implements ::command_t
++ * mutt_parse_push - Parse the 'push' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_push(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -1266,7 +1308,7 @@ const struct Binding *km_get_table(enum MenuType menu)
+ }
+
+ /**
+- * mutt_parse_bind - Parse the 'bind' command - Implements ::command_t
++ * mutt_parse_bind - Parse the 'bind' command - Implements Command::parse()
+ *
+ * bind menu-name `<key_sequence>` function-name
+ */
+@@ -1402,7 +1444,7 @@ static void km_unbind_all(struct Keymap **map, unsigned long mode)
+ }
+
+ /**
+- * mutt_parse_unbind - Parse the 'unbind' command - Implements ::command_t
++ * mutt_parse_unbind - Parse the 'unbind' command - Implements Command::parse()
+ *
+ * Command unbinds:
+ * - one binding in one menu-name
+@@ -1472,7 +1514,7 @@ enum CommandResult mutt_parse_unbind(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * mutt_parse_macro - Parse the 'macro' command - Implements ::command_t
++ * mutt_parse_macro - Parse the 'macro' command - Implements Command::parse()
+ *
+ * macro `<menu>` `<key>` `<macro>` `<description>`
+ */
+@@ -1528,7 +1570,7 @@ enum CommandResult mutt_parse_macro(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * mutt_parse_exec - Parse the 'exec' command - Implements ::command_t
++ * mutt_parse_exec - Parse the 'exec' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_exec(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -1581,15 +1623,16 @@ void mutt_what_key(void)
+ {
+ int ch;
+
+- mutt_window_mvprintw(MuttMessageWindow, 0, 0, _("Enter keys (^G to abort): "));
++ mutt_window_mvprintw(MuttMessageWindow, 0, 0, _("Enter keys (%s to abort): "),
++ km_keyname(AbortKey));
+ do
+ {
+ ch = getch();
+- if ((ch != ERR) && (ch != ctrl('G')))
++ if ((ch != ERR) && (ch != AbortKey))
+ {
+ mutt_message(_("Char = %s, Octal = %o, Decimal = %d"), km_keyname(ch), ch, ch);
+ }
+- } while (ch != ERR && ch != ctrl('G'));
++ } while (ch != ERR && ch != AbortKey);
+
+ mutt_flushinp();
+ mutt_clear_error();
+diff --git a/keymap.h b/keymap.h
+index 8a2f2a1f9..3424b886e 100644
+--- a/keymap.h
++++ b/keymap.h
+@@ -25,7 +25,7 @@
+
+ #include "config.h"
+ #include <stddef.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "mutt_commands.h"
+
+ #define MUTT_UNBIND 1<<0
+@@ -98,6 +98,8 @@ struct Keymap *km_find_func(enum MenuType menu, int func);
+ void km_init(void);
+ void km_error_key(enum MenuType menu);
+ void mutt_what_key(void);
++void mutt_init_abort_key(void);
++int mutt_abort_key_config_observer(struct NotifyCallback *nc);
+
+ enum CommandResult km_bind(char *s, enum MenuType menu, int op, char *macro, char *desc);
+ int km_dokey(enum MenuType menu);
+@@ -105,6 +107,7 @@ int km_dokey(enum MenuType menu);
+ extern struct Keymap *Keymaps[]; ///< Array of Keymap keybindings, one for each Menu
+
+ extern int LastKey; ///< Last real key pressed, recorded by dokey()
++extern keycode_t AbortKey; ///< key to abort edits etc, normally Ctrl-G
+
+ extern const struct Mapping Menus[];
+
+@@ -121,29 +124,6 @@ struct Binding
+ const struct Binding *km_get_table(enum MenuType menu);
+ const char *mutt_get_func(const struct Binding *bindings, int op);
+
+-extern const struct Binding OpGeneric[];
+-extern const struct Binding OpPost[];
+-extern const struct Binding OpMain[];
+-extern const struct Binding OpAttach[];
+-extern const struct Binding OpPager[];
+-extern const struct Binding OpCompose[];
+-extern const struct Binding OpBrowser[];
+-extern const struct Binding OpEditor[];
+-extern const struct Binding OpQuery[];
+-extern const struct Binding OpAlias[];
+-
+-extern const struct Binding OpPgp[];
+-
+-extern const struct Binding OpSmime[];
+-
+-#ifdef MIXMASTER
+-extern const struct Binding OpMix[];
+-#endif
+-
+-#ifdef USE_AUTOCRYPT
+-extern const struct Binding OpAutocryptAcct[];
+-#endif
+-
+ void mutt_keys_free(void);
+
+ enum CommandResult mutt_parse_bind(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+diff --git a/mailcap.c b/mailcap.c
+index fcb3be53d..e6eafab26 100644
+--- a/mailcap.c
++++ b/mailcap.c
+@@ -36,7 +36,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "mailcap.h"
+ #include "globals.h"
+diff --git a/maildir/lib.h b/maildir/lib.h
+index 4507c3040..450e7c830 100644
+--- a/maildir/lib.h
++++ b/maildir/lib.h
+@@ -39,7 +39,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include "core/lib.h"
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #include "mx.h"
+
+ struct Email;
+diff --git a/maildir/maildir.c b/maildir/maildir.c
+index ffe22ce66..be3ab7ce0 100644
+--- a/maildir/maildir.c
++++ b/maildir/maildir.c
+@@ -42,16 +42,16 @@
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include "maildir_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "globals.h"
+-#include "maildir/lib.h"
+ #include "monitor.h"
+ #include "muttlib.h"
+ #include "mx.h"
++#include "maildir/lib.h"
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #endif
+
+ // Flags for maildir_mbox_check()
+@@ -515,7 +515,7 @@ int maildir_mbox_check(struct Mailbox *m, int *index_hint)
+
+ /* If we didn't just get new mail, update the tables. */
+ if (occult)
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+
+ /* do any delayed parsing we need to do. */
+ maildir_delayed_parsing(m, &md, NULL);
+@@ -524,7 +524,7 @@ int maildir_mbox_check(struct Mailbox *m, int *index_hint)
+ num_new = maildir_move_to_mailbox(m, &md);
+ if (num_new > 0)
+ {
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ m->changed = true;
+ }
+
+@@ -540,20 +540,23 @@ int maildir_mbox_check(struct Mailbox *m, int *index_hint)
+ }
+
+ /**
+- * maildir_mbox_check_stats - Check the Mailbox statistics - Implements MxOps::mbox_check_stats
++ * maildir_mbox_check_stats - Check the Mailbox statistics - Implements MxOps::mbox_check_stats()
+ */
+ static int maildir_mbox_check_stats(struct Mailbox *m, int flags)
+ {
+ if (!m)
+ return -1;
+
+- bool check_stats = true;
++ bool check_stats = flags;
+ bool check_new = true;
+
+- m->msg_count = 0;
+- m->msg_unread = 0;
+- m->msg_flagged = 0;
+- m->msg_new = 0;
++ if (check_stats)
++ {
++ m->msg_count = 0;
++ m->msg_unread = 0;
++ m->msg_flagged = 0;
++ m->msg_new = 0;
++ }
+
+ maildir_check_dir(m, "new", check_new, check_stats);
+
+@@ -704,6 +707,7 @@ static enum MailboxType maildir_path_probe(const char *path, const struct stat *
+ struct MxOps MxMaildirOps = {
+ .magic = MUTT_MAILDIR,
+ .name = "maildir",
++ .is_local = true,
+ .ac_find = maildir_ac_find,
+ .ac_add = maildir_ac_add,
+ .mbox_open = maildir_mbox_open,
+diff --git a/maildir/mh.c b/maildir/mh.c
+index b01384b51..50476f2ab 100644
+--- a/maildir/mh.c
++++ b/maildir/mh.c
+@@ -41,12 +41,12 @@
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include "maildir_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "lib.h"
+ #include "errno.h"
+ #include "globals.h"
+-#include "lib.h"
+ #include "monitor.h"
+ #include "mx.h"
+
+@@ -417,7 +417,7 @@ bool mh_valid_message(const char *s)
+ }
+
+ /**
+- * mh_mbox_check_stats - Check the Mailbox statistics - Implements MxOps::check_stats
++ * mh_mbox_check_stats - Check the Mailbox statistics - Implements MxOps::mbox_check_stats()
+ */
+ static int mh_mbox_check_stats(struct Mailbox *m, int flags)
+ {
+@@ -712,13 +712,13 @@ int mh_mbox_check(struct Mailbox *m, int *index_hint)
+
+ /* If we didn't just get new mail, update the tables. */
+ if (occult)
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+
+ /* Incorporate new messages */
+ num_new = maildir_move_to_mailbox(m, &md);
+ if (num_new > 0)
+ {
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ m->changed = true;
+ }
+
+@@ -814,6 +814,7 @@ static enum MailboxType mh_path_probe(const char *path, const struct stat *st)
+ struct MxOps MxMhOps = {
+ .magic = MUTT_MH,
+ .name = "mh",
++ .is_local = true,
+ .ac_find = maildir_ac_find,
+ .ac_add = maildir_ac_add,
+ .mbox_open = mh_mbox_open,
+diff --git a/maildir/shared.c b/maildir/shared.c
+index 182adbe55..91970502a 100644
+--- a/maildir/shared.c
++++ b/maildir/shared.c
+@@ -43,22 +43,22 @@
+ #include <unistd.h>
+ #include <utime.h>
+ #include "maildir_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "mutt.h"
+ #include "copy.h"
+ #include "globals.h"
+-#include "hcache/hcache.h"
+-#include "maildir/lib.h" // IWYU pragma: keep
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "progress.h"
+ #include "protos.h"
+ #include "sort.h"
++#include "hcache/lib.h"
++#include "maildir/lib.h" // IWYU pragma: keep
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+
+ /* These Config Variables are only used in maildir/mh.c */
+@@ -1128,6 +1128,10 @@ int mh_rewrite_message(struct Mailbox *m, int msgno)
+ * maildir_canon_filename - Generate the canonical filename for a Maildir folder
+ * @param dest Buffer for the result
+ * @param src Buffer containing source filename
++ *
++ * @note maildir filename is defined as: \<base filename\>:2,\<flags\>
++ * but \<base filename\> may contain additional comma separated
++ * fields.
+ */
+ void maildir_canon_filename(struct Buffer *dest, const char *src)
+ {
+@@ -1139,7 +1143,7 @@ void maildir_canon_filename(struct Buffer *dest, const char *src)
+ src = t + 1;
+
+ mutt_buffer_strcpy(dest, src);
+- char *u = strrchr(dest->data, ':');
++ char *u = strpbrk(dest->data, ",:");
+ if (u)
+ {
+ *u = '\0';
+@@ -1651,7 +1655,7 @@ int maildir_path_canon(char *buf, size_t buflen)
+ if (!buf)
+ return -1;
+
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, true);
+ return 0;
+ }
+
+@@ -1666,7 +1670,7 @@ int maildir_path_pretty(char *buf, size_t buflen, const char *folder)
+ if (mutt_path_abbr_folder(buf, buflen, folder))
+ return 0;
+
+- if (mutt_path_pretty(buf, buflen, HomeDir))
++ if (mutt_path_pretty(buf, buflen, HomeDir, false))
+ return 0;
+
+ return -1;
+@@ -1684,7 +1688,7 @@ int maildir_path_parent(char *buf, size_t buflen)
+ return 0;
+
+ if (buf[0] == '~')
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, true);
+
+ if (mutt_path_parent(buf, buflen))
+ return 0;
+@@ -1694,6 +1698,12 @@ int maildir_path_parent(char *buf, size_t buflen)
+
+ /**
+ * mh_mbox_sync - Save changes to the Mailbox - Implements MxOps::mbox_sync()
++ * @retval #MUTT_REOPENED mailbox has been externally modified
++ * @retval #MUTT_NEW_MAIL new mail has arrived
++ * @retval 0 Success
++ * @retval -1 Error
++ *
++ * @note The flag retvals come from a call to a backend sync function
+ */
+ int mh_mbox_sync(struct Mailbox *m, int *index_hint)
+ {
+@@ -1703,14 +1713,15 @@ int mh_mbox_sync(struct Mailbox *m, int *index_hint)
+ int i, j;
+ header_cache_t *hc = NULL;
+ struct Progress progress;
++ int check;
+
+ if (m->magic == MUTT_MH)
+- i = mh_mbox_check(m, index_hint);
++ check = mh_mbox_check(m, index_hint);
+ else
+- i = maildir_mbox_check(m, index_hint);
++ check = maildir_mbox_check(m, index_hint);
+
+- if (i != 0)
+- return i;
++ if (check < 0)
++ return check;
+
+ #ifdef USE_HCACHE
+ if ((m->magic == MUTT_MAILDIR) || (m->magic == MUTT_MH))
+@@ -1760,7 +1771,7 @@ int mh_mbox_sync(struct Mailbox *m, int *index_hint)
+ }
+ }
+
+- return 0;
++ return check;
+
+ err:
+ #ifdef USE_HCACHE
+diff --git a/main.c b/main.c
+index 094ea45b6..da54efe84 100644
+--- a/main.c
++++ b/main.c
+@@ -45,40 +45,36 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
+-#include "mutt.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
++#include "debug/lib.h"
+ #include "alias.h"
+ #include "browser.h"
+-#include "color.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "hook.h"
+ #include "index.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mutt_attach.h"
+-#include "mutt_commands.h"
+-#include "mutt_curses.h"
+ #include "mutt_history.h"
+ #include "mutt_logging.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "myvar.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "protos.h"
+ #include "send.h"
+ #include "sendlib.h"
+-#include "terminal.h"
+ #include "version.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+@@ -86,13 +82,13 @@
+ #include "sidebar.h"
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in main.c */
+@@ -111,106 +107,12 @@ typedef uint8_t CliFlags; ///< Flags for command line options, e.g. #MUT
+ #endif
+ // clang-format on
+
+-/**
+- * test_parse_set - Test the config parsing
+- */
+-static void test_parse_set(void)
+-{
+- const char *vars[] = {
+- "from", // ADDRESS
+- "beep", // BOOL
+- "ispell", // COMMAND
+- "mbox_type", // MAGIC
+- "to_chars", // MBTABLE
+- "net_inc", // NUMBER
+- "signature", // PATH
+- "print", // QUAD
+- "mask", // REGEX
+- "sort", // SORT
+- "attribution", // STRING
+- "zzz", // UNKNOWN
+- "my_var", // MY_VAR
+- };
+-
+- const char *commands[] = {
+- "set",
+- "toggle",
+- "reset",
+- "unset",
+- };
+-
+- const char *tests[] = {
+- "%s %s", "%s %s=42", "%s %s?", "%s ?%s", "%s ?%s=42",
+- "%s ?%s?", "%s no%s", "%s no%s=42", "%s no%s?", "%s inv%s",
+- "%s inv%s=42", "%s inv%s?", "%s &%s", "%s &%s=42", "%s &%s?",
+- };
+-
+- struct Buffer tmp = mutt_buffer_make(256);
+- struct Buffer err = mutt_buffer_make(256);
+- char line[64];
+-
+- for (size_t v = 0; v < mutt_array_size(vars); v++)
+- {
+- // printf("--------------------------------------------------------------------------------\n");
+- // printf("VARIABLE %s\n", vars[v]);
+- for (size_t c = 0; c < mutt_array_size(commands); c++)
+- {
+- // printf("----------------------------------------\n");
+- // printf("COMMAND %s\n", commands[c]);
+- for (size_t t = 0; t < mutt_array_size(tests); t++)
+- {
+- mutt_buffer_reset(&tmp);
+- mutt_buffer_reset(&err);
+-
+- snprintf(line, sizeof(line), tests[t], commands[c], vars[v]);
+- printf("%-26s", line);
+- enum CommandResult rc = mutt_parse_rc_line(line, &tmp, &err);
+- printf("%2d %s\n", rc, err.data);
+- }
+- printf("\n");
+- }
+- // printf("\n");
+- }
+-
+- mutt_buffer_dealloc(&tmp);
+- mutt_buffer_dealloc(&err);
+-}
+-
+-/**
+- * reset_tilde - Temporary measure
+- */
+-static void reset_tilde(struct ConfigSet *cs)
+-{
+- static const char *names[] = {
+- "alias_file", "certificate_file", "debug_file",
+- "folder", "history_file", "mbox",
+- "newsrc", "news_cache_dir", "postponed",
+- "record", "signature",
+- };
+-
+- struct Buffer value = mutt_buffer_make(256);
+- for (size_t i = 0; i < mutt_array_size(names); i++)
+- {
+- struct HashElem *he = cs_get_elem(cs, names[i]);
+- if (!he)
+- continue;
+- mutt_buffer_reset(&value);
+- cs_he_initial_get(cs, he, &value);
+- mutt_expand_path(value.data, value.dsize);
+- cs_he_initial_set(cs, he, value.data, NULL);
+- cs_he_reset(cs, he, NULL);
+- }
+- mutt_buffer_dealloc(&value);
+-}
+-
+ /**
+ * mutt_exit - Leave NeoMutt NOW
+ * @param code Value to return to the calling environment
+ */
+ void mutt_exit(int code)
+ {
+- clear();
+- refresh();
+ mutt_endwin();
+ exit(code);
+ }
+@@ -366,9 +268,6 @@ static void init_locale(void)
+ */
+ static bool get_user_info(struct ConfigSet *cs)
+ {
+- mutt_str_replace(&Username, mutt_str_getenv("USER"));
+- mutt_str_replace(&HomeDir, mutt_str_getenv("HOME"));
+-
+ const char *shell = mutt_str_getenv("SHELL");
+ if (shell)
+ cs_str_initial_set(cs, "shell", shell, NULL);
+@@ -436,13 +335,16 @@ int main(int argc, char *argv[], char *envp[])
+ bool hide_sensitive = false;
+ bool batch_mode = false;
+ bool edit_infile = false;
++#ifdef USE_DEBUG_PARSE_TEST
+ bool test_config = false;
++#endif
+ int double_dash = argc, nargc = 1;
+ int rc = 1;
+ bool repeat_error = false;
+ struct Buffer folder = mutt_buffer_make(0);
+ struct Buffer expanded_infile = mutt_buffer_make(0);
+ struct Buffer tempfile = mutt_buffer_make(0);
++ struct ConfigSet *cs = NULL;
+
+ MuttLogger = log_disp_terminal;
+
+@@ -562,9 +464,11 @@ int main(int argc, char *argv[], char *envp[])
+ case 's':
+ subject = optarg;
+ break;
++#ifdef USE_DEBUG_PARSE_TEST
+ case 'T':
+ test_config = true;
+ break;
++#endif
+ case 'v':
+ version++;
+ break;
+@@ -605,31 +509,36 @@ int main(int argc, char *argv[], char *envp[])
+ goto main_ok; // TEST04: neomutt -v
+ }
+
+- Config = init_config(500);
+- if (!Config)
++ mutt_str_replace(&Username, mutt_str_getenv("USER"));
++ mutt_str_replace(&HomeDir, mutt_str_getenv("HOME"));
++
++ cs = init_config(500);
++ if (!cs)
+ goto main_curses;
+- NeoMutt = neomutt_new(Config);
++ NeoMutt = neomutt_new(cs);
+
+- notify_set_parent(Config->notify, NeoMutt->notify);
++#ifdef USE_DEBUG_NOTIFY
++ notify_observer_add(NeoMutt->notify, debug_notify_observer, NULL);
++#endif
+
+- if (!get_user_info(Config))
++ if (!get_user_info(cs))
+ goto main_exit;
+
++#ifdef USE_DEBUG_PARSE_TEST
+ if (test_config)
+ {
+- cs_str_initial_set(Config, "from", "rich@flatcap.org", NULL);
+- cs_str_reset(Config, "from", NULL);
++ cs_str_initial_set(cs, "from", "rich@flatcap.org", NULL);
++ cs_str_reset(cs, "from", NULL);
+ myvar_set("my_var", "foo");
+ test_parse_set();
+ goto main_ok;
+ }
+-
+- reset_tilde(Config);
++#endif
+
+ if (dfile)
+ {
+- cs_str_initial_set(Config, "debug_file", dfile, NULL);
+- cs_str_reset(Config, "debug_file", NULL);
++ cs_str_initial_set(cs, "debug_file", dfile, NULL);
++ cs_str_reset(cs, "debug_file", NULL);
+ }
+
+ if (dlevel)
+@@ -640,8 +549,8 @@ int main(int argc, char *argv[], char *envp[])
+ mutt_error(_("Error: value '%s' is invalid for -d"), dlevel);
+ goto main_exit; // TEST07: neomutt -d xyz
+ }
+- cs_str_initial_set(Config, "debug_level", dlevel, NULL);
+- cs_str_reset(Config, "debug_level", NULL);
++ cs_str_initial_set(cs, "debug_level", dlevel, NULL);
++ cs_str_reset(cs, "debug_level", NULL);
+ }
+
+ mutt_log_prep();
+@@ -689,26 +598,27 @@ int main(int argc, char *argv[], char *envp[])
+ if (!OptNoCurses)
+ {
+ int crc = start_curses();
+-
+ if (crc != 0)
+ goto main_curses; // TEST08: can't test -- fake term?
+
+ /* check whether terminal status is supported (must follow curses init) */
+ TsSupported = mutt_ts_capability();
+- mutt_window_reflow();
++ mutt_window_set_root(LINES, COLS);
+ }
+
+ /* set defaults and read init files */
+- int rc2 = mutt_init(flags & MUTT_CLI_NOSYSRC, &commands);
++ int rc2 = mutt_init(cs, flags & MUTT_CLI_NOSYSRC, &commands);
+ mutt_list_free(&commands);
+ if (rc2 != 0)
+ goto main_curses;
+
++ mutt_init_abort_key();
++
+ /* The command line overrides the config */
+ if (dlevel)
+- cs_str_reset(Config, "debug_level", NULL);
++ cs_str_reset(cs, "debug_level", NULL);
+ if (dfile)
+- cs_str_reset(Config, "debug_file", NULL);
++ cs_str_reset(cs, "debug_file", NULL);
+
+ if (mutt_log_start() < 0)
+ {
+@@ -719,20 +629,20 @@ int main(int argc, char *argv[], char *envp[])
+ #ifdef USE_NNTP
+ /* "$news_server" precedence: command line, config file, environment, system file */
+ if (cli_nntp)
+- cs_str_string_set(Config, "news_server", cli_nntp, NULL);
++ cs_str_string_set(cs, "news_server", cli_nntp, NULL);
+ if (!C_NewsServer)
+ {
+ const char *env_nntp = mutt_str_getenv("NNTPSERVER");
+- cs_str_string_set(Config, "news_server", env_nntp, NULL);
++ cs_str_string_set(cs, "news_server", env_nntp, NULL);
+ }
+ if (!C_NewsServer)
+ {
+ char buf[1024];
+ char *server = mutt_file_read_keyword(SYSCONFDIR "/nntpserver", buf, sizeof(buf));
+- cs_str_string_set(Config, "news_server", server, NULL);
++ cs_str_string_set(cs, "news_server", server, NULL);
+ }
+ if (C_NewsServer)
+- cs_str_initial_set(Config, "news_server", C_NewsServer, NULL);
++ cs_str_initial_set(cs, "news_server", C_NewsServer, NULL);
+ #endif
+
+ /* Initialize crypto backends. */
+@@ -741,14 +651,14 @@ int main(int argc, char *argv[], char *envp[])
+ if (new_magic)
+ {
+ struct Buffer err = mutt_buffer_make(0);
+- int r = cs_str_initial_set(Config, "mbox_type", new_magic, &err);
++ int r = cs_str_initial_set(cs, "mbox_type", new_magic, &err);
+ if (CSR_RESULT(r) != CSR_SUCCESS)
+ {
+ mutt_error(err.data);
+ mutt_buffer_dealloc(&err);
+ goto main_curses;
+ }
+- cs_str_reset(Config, "mbox_type", NULL);
++ cs_str_reset(cs, "mbox_type", NULL);
+ }
+
+ if (!STAILQ_EMPTY(&queries))
+@@ -759,7 +669,7 @@ int main(int argc, char *argv[], char *envp[])
+
+ if (dump_variables)
+ {
+- dump_config(Config, hide_sensitive ? CS_DUMP_HIDE_SENSITIVE : CS_DUMP_NO_FLAGS, stdout);
++ dump_config(cs, hide_sensitive ? CS_DUMP_HIDE_SENSITIVE : CS_DUMP_NO_FLAGS, stdout);
+ goto main_ok; // TEST18: neomutt -D
+ }
+
+@@ -838,12 +748,13 @@ int main(int argc, char *argv[], char *envp[])
+ goto main_ok; // TEST22: neomutt -B
+ }
+
+- notify_observer_add(Config->notify, NT_CONFIG, 0, mutt_hist_observer, 0);
+- notify_observer_add(Config->notify, NT_CONFIG, 0, mutt_log_observer, 0);
+- notify_observer_add(Config->notify, NT_CONFIG, 0, mutt_menu_config_observer, 0);
+- notify_observer_add(Config->notify, NT_CONFIG, 0, mutt_reply_observer, 0);
++ notify_observer_add(NeoMutt->notify, mutt_hist_observer, NULL);
++ notify_observer_add(NeoMutt->notify, mutt_log_observer, NULL);
++ notify_observer_add(NeoMutt->notify, mutt_menu_config_observer, NULL);
++ notify_observer_add(NeoMutt->notify, mutt_reply_observer, NULL);
++ notify_observer_add(NeoMutt->notify, mutt_abort_key_config_observer, NULL);
+ if (Colors)
+- notify_observer_add(Colors->notify, NT_COLOR, 0, mutt_menu_color_observer, 0);
++ notify_observer_add(Colors->notify, mutt_menu_color_observer, NULL);
+
+ if (sendflags & SEND_POSTPONED)
+ {
+@@ -1017,7 +928,7 @@ int main(int argc, char *argv[], char *envp[])
+ if (mutt_str_startswith(np->data, "X-Mutt-Resume-Draft:", CASE_IGNORE))
+ {
+ if (C_ResumeEditedDraftFiles)
+- cs_str_native_set(Config, "resume_draft_files", true, NULL);
++ cs_str_native_set(cs, "resume_draft_files", true, NULL);
+
+ STAILQ_REMOVE(&e->env->userhdrs, np, ListNode, entries);
+ FREE(&np->data);
+@@ -1079,9 +990,16 @@ int main(int argc, char *argv[], char *envp[])
+ mutt_list_free(&attach);
+ }
+
+- rv = ci_send_message(sendflags, e, bodyfile, NULL, NULL);
+- /* We WANT the "Mail sent." and any possible, later error */
+- log_queue_empty();
++ if (isatty(0))
++ {
++ rv = ci_send_message(sendflags, e, bodyfile, NULL, NULL);
++ /* We WANT the "Mail sent." and any possible, later error */
++ log_queue_empty();
++ }
++ else
++ {
++ mutt_error(_("Error initializing terminal"));
++ }
+ if (ErrorBufMessage)
+ mutt_message("%s", ErrorBuf);
+
+@@ -1234,7 +1152,7 @@ int main(int argc, char *argv[], char *envp[])
+
+ mutt_folder_hook(mutt_b2s(&folder), NULL);
+ mutt_startup_shutdown_hook(MUTT_STARTUP_HOOK);
+- notify_send(NeoMutt->notify, NT_GLOBAL, NT_GLOBAL_STARTUP, 0);
++ notify_send(NeoMutt->notify, NT_GLOBAL, NT_GLOBAL_STARTUP, NULL);
+
+ repeat_error = true;
+ struct Mailbox *m = mx_path_resolve(mutt_b2s(&folder));
+@@ -1251,7 +1169,14 @@ int main(int argc, char *argv[], char *envp[])
+ #ifdef USE_SIDEBAR
+ mutt_sb_set_open_mailbox(Context ? Context->mailbox : NULL);
+ #endif
+- mutt_index_menu();
++ struct MuttWindow *dlg = index_pager_init();
++ notify_observer_add(NeoMutt->notify, mutt_dlg_index_observer, dlg);
++ dialog_push(dlg);
++ mutt_index_menu(dlg);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_index_observer, dlg);
++ index_pager_shutdown(dlg);
++ mutt_window_free(&dlg);
+ ctx_free(&Context);
+ log_queue_empty();
+ repeat_error = false;
+@@ -1272,8 +1197,6 @@ int main(int argc, char *argv[], char *envp[])
+ main_ok:
+ rc = 0;
+ main_curses:
+- clear();
+- refresh();
+ mutt_endwin();
+ mutt_unlink_temp_attachments();
+ /* Repeat the last message to the user */
+@@ -1294,7 +1217,7 @@ int main(int argc, char *argv[], char *envp[])
+ mutt_keys_free();
+ myvarlist_free(&MyVars);
+ neomutt_free(&NeoMutt);
+- cs_free(&Config);
++ cs_free(&cs);
+ log_queue_flush(log_disp_terminal);
+ log_queue_empty();
+ mutt_log_stop();
+diff --git a/mbox/mbox.h b/mbox/lib.h
+similarity index 95%
+rename from mbox/mbox.h
+rename to mbox/lib.h
+index f6f7bf286..209a852bf 100644
+--- a/mbox/mbox.h
++++ b/mbox/lib.h
+@@ -31,8 +31,8 @@
+ * | mbox/mbox.c | @subpage mbox_mbox |
+ */
+
+-#ifndef MUTT_MBOX_MBOX_H
+-#define MUTT_MBOX_MBOX_H
++#ifndef MUTT_MBOX_LIB_H
++#define MUTT_MBOX_LIB_H
+
+ #include <stdbool.h>
+ #include <stdio.h>
+@@ -64,4 +64,4 @@ enum MailboxType mbox_path_probe(const char *path, const struct stat *st);
+ void mbox_reset_atime(struct Mailbox *m, struct stat *st);
+ bool mbox_test_new_folder(const char *path);
+
+-#endif /* MUTT_MBOX_MBOX_H */
++#endif /* MUTT_MBOX_LIB_H */
+diff --git a/mbox/mbox.c b/mbox/mbox.c
+index 1b82ea853..853f787a4 100644
+--- a/mbox/mbox.c
++++ b/mbox/mbox.c
+@@ -41,13 +41,13 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include <utime.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "mutt.h"
+-#include "mbox.h"
++#include "lib.h"
+ #include "copy.h"
+ #include "globals.h"
+ #include "mutt_header.h"
+@@ -560,7 +560,7 @@ static int reopen_mailbox(struct Mailbox *m, int *index_hint)
+ {
+ short old_sort = C_Sort;
+ C_Sort = SORT_ORDER;
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ C_Sort = old_sort;
+ }
+
+@@ -706,7 +706,7 @@ static int reopen_mailbox(struct Mailbox *m, int *index_hint)
+ FREE(&e_old);
+ }
+
+- mailbox_changed(m, MBN_UPDATE);
++ mailbox_changed(m, NT_MAILBOX_UPDATE);
+ m->quiet = false;
+
+ return (m->changed || msg_mod) ? MUTT_REOPENED : MUTT_NEW_MAIL;
+@@ -817,7 +817,7 @@ bool mbox_test_new_folder(const char *path)
+ {
+ bool rc = false;
+
+- enum MailboxType magic = mx_path_probe(path, NULL);
++ enum MailboxType magic = mx_path_probe(path);
+
+ if ((magic != MUTT_MBOX) && (magic != MUTT_MMDF))
+ return false;
+@@ -1043,7 +1043,7 @@ static int mbox_mbox_check(struct Mailbox *m, int *index_hint)
+ {
+ if (mbox_mbox_open(m) < 0)
+ return -1;
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ }
+
+ struct stat st;
+@@ -1104,7 +1104,7 @@ static int mbox_mbox_check(struct Mailbox *m, int *index_hint)
+ mmdf_parse_mailbox(m);
+
+ if (m->msg_count > old_msg_count)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+
+ /* Only unlock the folder if it was locked inside of this routine.
+ * It may have been locked elsewhere, like in
+@@ -1134,7 +1134,7 @@ static int mbox_mbox_check(struct Mailbox *m, int *index_hint)
+ {
+ if (reopen_mailbox(m, index_hint) != -1)
+ {
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ if (unlock)
+ {
+ mbox_unlock_mailbox(m);
+@@ -1185,7 +1185,7 @@ static int mbox_mbox_sync(struct Mailbox *m, int *index_hint)
+ {
+ save_sort = C_Sort;
+ C_Sort = SORT_ORDER;
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ C_Sort = save_sort;
+ need_sort = 1;
+ }
+@@ -1513,12 +1513,12 @@ static int mbox_mbox_sync(struct Mailbox *m, int *index_hint)
+ goto fatal;
+ }
+
+- mailbox_changed(m, MBN_UPDATE);
++ mailbox_changed(m, NT_MAILBOX_UPDATE);
+ if (need_sort)
+ {
+ /* if the mailbox was reopened, the thread tree will be invalid so make
+ * sure to start threading from scratch. */
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ }
+
+ fatal:
+@@ -1721,7 +1721,7 @@ static int mbox_path_canon(char *buf, size_t buflen)
+ if (!buf)
+ return -1;
+
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, false);
+ return 0;
+ }
+
+@@ -1736,7 +1736,7 @@ static int mbox_path_pretty(char *buf, size_t buflen, const char *folder)
+ if (mutt_path_abbr_folder(buf, buflen, folder))
+ return 0;
+
+- if (mutt_path_pretty(buf, buflen, HomeDir))
++ if (mutt_path_pretty(buf, buflen, HomeDir, false))
+ return 0;
+
+ return -1;
+@@ -1754,7 +1754,7 @@ static int mbox_path_parent(char *buf, size_t buflen)
+ return 0;
+
+ if (buf[0] == '~')
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, false);
+
+ if (mutt_path_parent(buf, buflen))
+ return 0;
+@@ -1848,6 +1848,7 @@ static int mbox_mbox_check_stats(struct Mailbox *m, int flags)
+ struct MxOps MxMboxOps = {
+ .magic = MUTT_MBOX,
+ .name = "mbox",
++ .is_local = true,
+ .ac_find = mbox_ac_find,
+ .ac_add = mbox_ac_add,
+ .mbox_open = mbox_mbox_open,
+@@ -1876,6 +1877,7 @@ struct MxOps MxMboxOps = {
+ struct MxOps MxMmdfOps = {
+ .magic = MUTT_MMDF,
+ .name = "mmdf",
++ .is_local = true,
+ .ac_find = mbox_ac_find,
+ .ac_add = mbox_ac_add,
+ .mbox_open = mbox_mbox_open,
+diff --git a/menu.c b/menu.c
+index 970633dc1..f5eddcd7b 100644
+--- a/menu.c
++++ b/menu.c
+@@ -32,21 +32,18 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+-#include "color.h"
+ #include "commands.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "keymap.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+ #include "options.h"
+@@ -312,13 +309,13 @@ static void print_enriched_string(int index, int attr, unsigned char *s, bool do
+ }
+
+ /**
+- * menu_make_entry - Create string to display in a Menu (the index)
++ * make_entry - Create string to display in a Menu (the index)
+ * @param buf Buffer for the result
+ * @param buflen Length of the buffer
+ * @param menu Current Menu
+ * @param i Selected item
+ */
+-static void menu_make_entry(char *buf, size_t buflen, struct Menu *menu, int i)
++static void make_entry(char *buf, size_t buflen, struct Menu *menu, int i)
+ {
+ if (menu->dialog)
+ {
+@@ -326,7 +323,7 @@ static void menu_make_entry(char *buf, size_t buflen, struct Menu *menu, int i)
+ menu->current = -1; /* hide menubar */
+ }
+ else
+- menu->menu_make_entry(buf, buflen, menu, i);
++ menu->make_entry(buf, buflen, menu, i);
+ }
+
+ /**
+@@ -340,8 +337,8 @@ static void menu_make_entry(char *buf, size_t buflen, struct Menu *menu, int i)
+ static void menu_pad_string(struct Menu *menu, char *buf, size_t buflen)
+ {
+ char *scratch = mutt_str_strdup(buf);
+- int shift = C_ArrowCursor ? 3 : 0;
+- int cols = menu->indexwin->cols - shift;
++ int shift = C_ArrowCursor ? mutt_strwidth(C_ArrowString) + 1 : 0;
++ int cols = menu->win_index->state.cols - shift;
+
+ mutt_simple_format(buf, buflen, cols, cols, JUSTIFY_LEFT, ' ', scratch,
+ mutt_str_strlen(scratch), true);
+@@ -364,11 +361,11 @@ void menu_redraw_full(struct Menu *menu)
+ {
+ mutt_curses_set_color(MT_COLOR_STATUS);
+ mutt_window_move(MuttHelpWindow, 0, 0);
+- mutt_paddstr(MuttHelpWindow->cols, menu->help);
++ mutt_paddstr(MuttHelpWindow->state.cols, menu->help);
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ }
+ menu->offset = 0;
+- menu->pagelen = menu->indexwin->rows;
++ menu->pagelen = menu->win_index->state.rows;
+
+ mutt_show_error();
+
+@@ -388,8 +385,8 @@ void menu_redraw_status(struct Menu *menu)
+
+ snprintf(buf, sizeof(buf), "-- NeoMutt: %s", menu->title);
+ mutt_curses_set_color(MT_COLOR_STATUS);
+- mutt_window_move(menu->statuswin, 0, 0);
+- mutt_paddstr(menu->statuswin->cols, buf);
++ mutt_window_move(menu->win_ibar, 0, 0);
++ mutt_paddstr(menu->win_ibar->state.cols, buf);
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ menu->redraw &= ~REDRAW_STATUS;
+ }
+@@ -402,7 +399,9 @@ void menu_redraw_status(struct Menu *menu)
+ void menu_redraw_sidebar(struct Menu *menu)
+ {
+ menu->redraw &= ~REDRAW_SIDEBAR;
+- mutt_sb_draw();
++ struct MuttWindow *dlg = mutt_window_dialog(menu->win_index);
++ struct MuttWindow *sidebar = mutt_window_find(dlg, WT_SIDEBAR);
++ mutt_sb_draw(sidebar);
+ }
+ #endif
+
+@@ -420,13 +419,13 @@ void menu_redraw_index(struct Menu *menu)
+ {
+ if (i < menu->max)
+ {
+- attr = menu->menu_color(i);
++ attr = menu->color(i);
+
+- menu_make_entry(buf, sizeof(buf), menu, i);
++ make_entry(buf, sizeof(buf), menu, i);
+ menu_pad_string(menu, buf, sizeof(buf));
+
+ mutt_curses_set_attr(attr);
+- mutt_window_move(menu->indexwin, i - menu->top + menu->offset, 0);
++ mutt_window_move(menu->win_index, i - menu->top + menu->offset, 0);
+ do_color = true;
+
+ if (i == menu->current)
+@@ -434,7 +433,7 @@ void menu_redraw_index(struct Menu *menu)
+ mutt_curses_set_color(MT_COLOR_INDICATOR);
+ if (C_ArrowCursor)
+ {
+- mutt_window_addstr("->");
++ mutt_window_addstr(C_ArrowString);
+ mutt_curses_set_attr(attr);
+ mutt_window_addch(' ');
+ }
+@@ -442,14 +441,15 @@ void menu_redraw_index(struct Menu *menu)
+ do_color = false;
+ }
+ else if (C_ArrowCursor)
+- mutt_window_addstr(" ");
++ /* Print space chars to match the screen width of C_ArrowString */
++ mutt_window_printf("%*s", mutt_strwidth(C_ArrowString) + 1, "");
+
+ print_enriched_string(i, attr, (unsigned char *) buf, do_color);
+ }
+ else
+ {
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+- mutt_window_clearline(menu->indexwin, i - menu->top + menu->offset);
++ mutt_window_clearline(menu->win_index, i - menu->top + menu->offset);
+ }
+ }
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+@@ -474,40 +474,43 @@ void menu_redraw_motion(struct Menu *menu)
+ * over imap (if matching against ~h for instance). This can
+ * generate status messages. So we want to call it *before* we
+ * position the cursor for drawing. */
+- const int old_color = menu->menu_color(menu->oldcurrent);
+- mutt_window_move(menu->indexwin, menu->oldcurrent + menu->offset - menu->top, 0);
++ const int old_color = menu->color(menu->oldcurrent);
++ mutt_window_move(menu->win_index, menu->oldcurrent + menu->offset - menu->top, 0);
+ mutt_curses_set_attr(old_color);
+
+ if (C_ArrowCursor)
+ {
+- /* clear the pointer */
+- mutt_window_addstr(" ");
++ /* clear the arrow */
++ /* Print space chars to match the screen width of C_ArrowString */
++ mutt_window_printf("%*s", mutt_strwidth(C_ArrowString) + 1, "");
+
+ if (menu->redraw & REDRAW_MOTION_RESYNC)
+ {
+- menu_make_entry(buf, sizeof(buf), menu, menu->oldcurrent);
++ make_entry(buf, sizeof(buf), menu, menu->oldcurrent);
+ menu_pad_string(menu, buf, sizeof(buf));
+- mutt_window_move(menu->indexwin, menu->oldcurrent + menu->offset - menu->top, 3);
++ mutt_window_move(menu->win_index, menu->oldcurrent + menu->offset - menu->top,
++ mutt_strwidth(C_ArrowString) + 1);
+ print_enriched_string(menu->oldcurrent, old_color, (unsigned char *) buf, true);
+ }
+
+ /* now draw it in the new location */
+ mutt_curses_set_color(MT_COLOR_INDICATOR);
+- mutt_window_mvaddstr(menu->indexwin, menu->current + menu->offset - menu->top, 0, "->");
++ mutt_window_mvaddstr(menu->win_index, menu->current + menu->offset - menu->top,
++ 0, C_ArrowString);
+ }
+ else
+ {
+ /* erase the current indicator */
+- menu_make_entry(buf, sizeof(buf), menu, menu->oldcurrent);
++ make_entry(buf, sizeof(buf), menu, menu->oldcurrent);
+ menu_pad_string(menu, buf, sizeof(buf));
+ print_enriched_string(menu->oldcurrent, old_color, (unsigned char *) buf, true);
+
+ /* now draw the new one to reflect the change */
+- const int cur_color = menu->menu_color(menu->current);
+- menu_make_entry(buf, sizeof(buf), menu, menu->current);
++ const int cur_color = menu->color(menu->current);
++ make_entry(buf, sizeof(buf), menu, menu->current);
+ menu_pad_string(menu, buf, sizeof(buf));
+ mutt_curses_set_color(MT_COLOR_INDICATOR);
+- mutt_window_move(menu->indexwin, menu->current + menu->offset - menu->top, 0);
++ mutt_window_move(menu->win_index, menu->current + menu->offset - menu->top, 0);
+ print_enriched_string(menu->current, cur_color, (unsigned char *) buf, false);
+ }
+ menu->redraw &= REDRAW_STATUS;
+@@ -521,16 +524,16 @@ void menu_redraw_motion(struct Menu *menu)
+ void menu_redraw_current(struct Menu *menu)
+ {
+ char buf[1024];
+- int attr = menu->menu_color(menu->current);
++ int attr = menu->color(menu->current);
+
+- mutt_window_move(menu->indexwin, menu->current + menu->offset - menu->top, 0);
+- menu_make_entry(buf, sizeof(buf), menu, menu->current);
++ mutt_window_move(menu->win_index, menu->current + menu->offset - menu->top, 0);
++ make_entry(buf, sizeof(buf), menu, menu->current);
+ menu_pad_string(menu, buf, sizeof(buf));
+
+ mutt_curses_set_color(MT_COLOR_INDICATOR);
+ if (C_ArrowCursor)
+ {
+- mutt_window_addstr("->");
++ mutt_window_addstr(C_ArrowString);
+ mutt_curses_set_attr(attr);
+ mutt_window_addch(' ');
+ menu_pad_string(menu, buf, sizeof(buf));
+@@ -629,7 +632,7 @@ static void menu_jump(struct Menu *menu)
+ mutt_unget_event(LastKey, 0);
+ char buf[128];
+ buf[0] = '\0';
+- if ((mutt_get_field(_("Jump to: "), buf, sizeof(buf), 0) == 0) && buf[0])
++ if ((mutt_get_field(_("Jump to: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) == 0) && buf[0])
+ {
+ if ((mutt_str_atoi(buf, &n) == 0) && (n > 0) && (n < menu->max + 1))
+ {
+@@ -938,7 +941,7 @@ static void menu_prev_entry(struct Menu *menu)
+ }
+
+ /**
+- * default_color - Get the default colour for a line of the menu - Implements Menu::menu_color()
++ * default_color - Get the default colour for a line of the menu - Implements Menu::color()
+ */
+ static int default_color(int line)
+ {
+@@ -946,13 +949,13 @@ static int default_color(int line)
+ }
+
+ /**
+- * generic_search - Search a menu for a item matching a regex - Implements Menu::menu_search()
++ * generic_search - Search a menu for a item matching a regex - Implements Menu::search()
+ */
+ static int generic_search(struct Menu *menu, regex_t *rx, int line)
+ {
+ char buf[1024];
+
+- menu_make_entry(buf, sizeof(buf), menu, line);
++ make_entry(buf, sizeof(buf), menu, line);
+ return regexec(rx, buf, 0, NULL, 0);
+ }
+
+@@ -974,19 +977,13 @@ struct Menu *mutt_menu_new(enum MenuType type)
+ {
+ struct Menu *menu = mutt_mem_calloc(1, sizeof(struct Menu));
+
+- if (type >= MENU_MAX)
+- type = MENU_GENERIC;
+-
+ menu->type = type;
+ menu->current = 0;
+ menu->top = 0;
+ menu->offset = 0;
+ menu->redraw = REDRAW_FULL;
+- menu->pagelen = MuttIndexWindow->rows;
+- menu->indexwin = MuttIndexWindow;
+- menu->statuswin = MuttStatusWindow;
+- menu->menu_color = default_color;
+- menu->menu_search = generic_search;
++ menu->color = default_color;
++ menu->search = generic_search;
+
+ return menu;
+ }
+@@ -1080,8 +1077,15 @@ void mutt_menu_pop_current(struct Menu *menu)
+ else
+ {
+ CurrentMenu = MENU_MAIN;
+- mutt_window_move_abs(0, 0);
+- mutt_window_clrtobot();
++ /* Clearing when NeoMutt exits would be an annoying change in behavior for
++ * those who have disabled alternative screens. The option is currently
++ * set by autocrypt initialization which mixes menus and prompts outside of
++ * the normal menu system state. */
++ if (OptMenuPopClearScreen)
++ {
++ mutt_window_move_abs(0, 0);
++ mutt_window_clrtobot();
++ }
+ }
+ }
+
+@@ -1150,13 +1154,13 @@ void mutt_menu_current_redraw(void)
+ }
+
+ /**
+- * menu_search - Search a menu
++ * search - Search a menu
+ * @param menu Menu to search
+ * @param op Search operation, e.g. OP_SEARCH_NEXT
+ * @retval >=0 Index of matching item
+ * @retval -1 Search failed, or was cancelled
+ */
+-static int menu_search(struct Menu *menu, int op)
++static int search(struct Menu *menu, int op)
+ {
+ int rc = 0, wrap = 0;
+ int search_dir;
+@@ -1208,7 +1212,7 @@ static int menu_search(struct Menu *menu, int op)
+ mutt_message(_("Search wrapped to top"));
+ while ((rc >= 0) && (rc < menu->max))
+ {
+- if (menu->menu_search(menu, &re, rc) == 0)
++ if (menu->search(menu, &re, rc) == 0)
+ {
+ regfree(&re);
+ return rc;
+@@ -1299,9 +1303,9 @@ static int menu_dialog_dokey(struct Menu *menu, int *ip)
+ */
+ int menu_redraw(struct Menu *menu)
+ {
+- if (menu->menu_custom_redraw)
++ if (menu->custom_redraw)
+ {
+- menu->menu_custom_redraw(menu);
++ menu->custom_redraw(menu);
+ return OP_NULL;
+ }
+
+@@ -1382,13 +1386,13 @@ int mutt_menu_loop(struct Menu *menu)
+
+ /* move the cursor out of the way */
+ if (C_ArrowCursor)
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset, 2);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset, 2);
+ else if (C_BrailleFriendly)
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset, 0);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset, 0);
+ else
+ {
+- mutt_window_move(menu->indexwin, menu->current - menu->top + menu->offset,
+- menu->indexwin->cols - 1);
++ mutt_window_move(menu->win_index, menu->current - menu->top + menu->offset,
++ menu->win_index->state.cols - 1);
+ }
+
+ mutt_refresh();
+@@ -1504,10 +1508,10 @@ int mutt_menu_loop(struct Menu *menu)
+ case OP_SEARCH_REVERSE:
+ case OP_SEARCH_NEXT:
+ case OP_SEARCH_OPPOSITE:
+- if (menu->menu_search && !menu->dialog) /* Searching dialogs won't work */
++ if (menu->search && !menu->dialog) /* Searching dialogs won't work */
+ {
+ menu->oldcurrent = menu->current;
+- menu->current = menu_search(menu, i);
++ menu->current = search(menu, i);
+ if (menu->current != -1)
+ menu->redraw = REDRAW_MOTION;
+ else
+@@ -1529,17 +1533,17 @@ int mutt_menu_loop(struct Menu *menu)
+ break;
+
+ case OP_TAG:
+- if (menu->menu_tag && !menu->dialog)
++ if (menu->tag && !menu->dialog)
+ {
+ if (menu->tagprefix && !C_AutoTag)
+ {
+ for (i = 0; i < menu->max; i++)
+- menu->tagged += menu->menu_tag(menu, i, 0);
++ menu->tagged += menu->tag(menu, i, 0);
+ menu->redraw |= REDRAW_INDEX;
+ }
+ else if (menu->max)
+ {
+- int j = menu->menu_tag(menu, menu->current, -1);
++ int j = menu->tag(menu, menu->current, -1);
+ menu->tagged += j;
+ if (j && C_Resolve && (menu->current < menu->max - 1))
+ {
+@@ -1574,7 +1578,7 @@ int mutt_menu_loop(struct Menu *menu)
+ break;
+
+ case OP_HELP:
+- mutt_help(menu->type, menu->indexwin->cols);
++ mutt_help(menu->type, menu->win_index->state.cols);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+@@ -1595,12 +1599,14 @@ int mutt_menu_loop(struct Menu *menu)
+ }
+
+ /**
+- * mutt_menu_color_observer - Listen for colour changes affecting the menu - Implements ::observer_t()
++ * mutt_menu_color_observer - Listen for colour changes affecting the menu - Implements ::observer_t
+ */
+ int mutt_menu_color_observer(struct NotifyCallback *nc)
+ {
+- if ((!nc) || (nc->event_type != NT_COLOR))
++ if (!nc->event_data)
+ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
+
+ int s = nc->event_subtype;
+
+@@ -1616,7 +1622,7 @@ int mutt_menu_color_observer(struct NotifyCallback *nc)
+ if (!simple && !lists)
+ return 0;
+
+- struct EventColor *ec = (struct EventColor *) nc->event;
++ struct EventColor *ec = nc->event_data;
+
+ // Colour deleted from a list
+ if (!ec->set && lists && Context && Context->mailbox)
+@@ -1637,14 +1643,16 @@ int mutt_menu_color_observer(struct NotifyCallback *nc)
+ }
+
+ /**
+- * mutt_menu_config_observer - Listen for config changes affecting the menu - Implements ::observer_t()
++ * mutt_menu_config_observer - Listen for config changes affecting the menu - Implements ::observer_t
+ */
+ int mutt_menu_config_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->event_data)
+ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
+
+- struct EventConfig *ec = (struct EventConfig *) nc->event;
++ struct EventConfig *ec = nc->event_data;
+
+ const struct ConfigDef *cdef = ec->he->data;
+ ConfigRedrawFlags flags = cdef->type & R_REDRAW_MASK;
+@@ -1672,7 +1680,7 @@ int mutt_menu_config_observer(struct NotifyCallback *nc)
+ OptRedrawTree = true;
+
+ if (flags & R_REFLOW)
+- mutt_window_reflow();
++ mutt_window_reflow(NULL);
+ #ifdef USE_SIDEBAR
+ if (flags & R_SIDEBAR)
+ mutt_menu_set_current_redraw(REDRAW_SIDEBAR);
+diff --git a/monitor.c b/monitor.c
+index 5d473316e..fca9cefb2 100644
+--- a/monitor.c
++++ b/monitor.c
+@@ -37,11 +37,11 @@
+ #include <sys/inotify.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "monitor.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #ifndef HAVE_INOTIFY_INIT1
+ #include <fcntl.h>
+@@ -437,8 +437,10 @@ int mutt_monitor_poll(void)
+ if (len == -1)
+ {
+ if (errno != EAGAIN)
++ {
+ mutt_debug(LL_DEBUG2, "read inotify events failed, errno=%d %s\n",
+ errno, strerror(errno));
++ }
+ break;
+ }
+
+diff --git a/mutt.h b/mutt.h
+index 26d161e52..311a2c659 100644
+--- a/mutt.h
++++ b/mutt.h
+@@ -27,15 +27,9 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <limits.h>
+-#include <stdbool.h>
+ #include <stdint.h>
+-#include "config/lib.h"
+-#include "hook.h"
+ #include "keymap.h"
+-#include "mutt_commands.h"
+
+-struct Buffer;
+-struct ListHead;
+ struct Mapping;
+
+ /* On OS X 10.5.x, wide char functions are inlined by default breaking
+@@ -118,28 +112,7 @@ enum MessageType
+ #define MUTT_SPAM 1
+ #define MUTT_NOSPAM 2
+
+-int mutt_init(bool skip_sys_rc, struct ListHead *commands);
+-struct ConfigSet *init_config(size_t size);
+-
+-#define EXEC_SHELL "/bin/sh"
+-
+ char *mutt_compile_help(char *buf, size_t buflen, enum MenuType menu, const struct Mapping *items);
+-
+-int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags);
+-void mutt_opts_free(void);
+-enum QuadOption query_quadoption(enum QuadOption opt, const char *prompt);
+-int mutt_label_complete(char *buf, size_t buflen, int numtabs);
+-int mutt_command_complete(char *buf, size_t buflen, int pos, int numtabs);
+-int mutt_var_value_complete(char *buf, size_t buflen, int pos);
+-bool mutt_nm_query_complete(char *buf, size_t buflen, int pos, int numtabs);
+-bool mutt_nm_tag_complete(char *buf, size_t buflen, int numtabs);
+-HookFlags mutt_get_hook_type(const char *name);
+-enum CommandResult mutt_parse_rc_line(/* const */ char *line, struct Buffer *token, struct Buffer *err);
+-int mutt_query_variables(struct ListHead *queries);
+ void reset_value(const char *name);
+
+-#ifdef HAVE_LIBUNWIND
+-void show_backtrace(void);
+-#endif
+-
+ #endif /* MUTT_MUTT_H */
+diff --git a/mutt/envlist.h b/mutt/envlist.h
+index d06560745..0a8e88bad 100644
+--- a/mutt/envlist.h
++++ b/mutt/envlist.h
+@@ -20,11 +20,11 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#include <stdbool.h>
+-
+ #ifndef MUTT_LIB_ENVLIST_H
+ #define MUTT_LIB_ENVLIST_H
+
++#include <stdbool.h>
++
+ void mutt_envlist_free(void);
+ char **mutt_envlist_getlist(void);
+ void mutt_envlist_init(char *envp[]);
+diff --git a/mutt/file.c b/mutt/file.c
+index 6517e3296..006e0d4d5 100644
+--- a/mutt/file.c
++++ b/mutt/file.c
+@@ -38,6 +38,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/stat.h>
++#include <time.h>
+ #include <unistd.h>
+ #include <utime.h>
+ #include "file.h"
+diff --git a/filter.c b/mutt/filter.c
+similarity index 74%
+rename from filter.c
+rename to mutt/filter.c
+index 241c22e2f..72e44bf08 100644
+--- a/filter.c
++++ b/mutt/filter.c
+@@ -31,15 +31,12 @@
+ #include <stdlib.h>
+ #include <sys/wait.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
+-#include "mutt.h"
+ #include "filter.h"
+-#ifdef USE_IMAP
+-#include "imap/imap.h"
+-#endif
++#include "envlist.h"
++#include "signal2.h"
+
+ /**
+- * mutt_create_filter_fd - Run a command on a pipe (optionally connect stdin/stdout)
++ * filter_create_fd - Run a command on a pipe (optionally connect stdin/stdout)
+ * @param[in] cmd Command line to invoke using `sh -c`
+ * @param[out] fp_in File stream pointing to stdin for the command process, can be NULL
+ * @param[out] fp_out File stream pointing to stdout for the command process, can be NULL
+@@ -55,14 +52,14 @@
+ * present.
+ *
+ * @code{.c}
+- * mutt_create_filter_fd(commandline, NULL, NULL, NULL, -1, -1, -1);
++ * filter_create_fd(commandline, NULL, NULL, NULL, -1, -1, -1);
+ * @endcode
+ *
+ * Additionally, fp_in, fp_out, and fp_err will point to FILE* streams
+ * representing the processes stdin, stdout, and stderr.
+ */
+-pid_t mutt_create_filter_fd(const char *cmd, FILE **fp_in, FILE **fp_out,
+- FILE **fp_err, int fdin, int fdout, int fderr)
++pid_t filter_create_fd(const char *cmd, FILE **fp_in, FILE **fp_out,
++ FILE **fp_err, int fdin, int fdout, int fderr)
+ {
+ int pin[2], pout[2], perr[2], pid;
+
+@@ -199,27 +196,27 @@ pid_t mutt_create_filter_fd(const char *cmd, FILE **fp_in, FILE **fp_out,
+ }
+
+ /**
+- * mutt_create_filter - Set up filter program
+- * @param[in] s Command string
++ * filter_create - Set up filter program
++ * @param[in] cmd Command string
+ * @param[out] fp_in FILE pointer of stdin
+ * @param[out] fp_out FILE pointer of stdout
+ * @param[out] fp_err FILE pointer of stderr
+ * @retval num PID of filter
+ */
+-pid_t mutt_create_filter(const char *s, FILE **fp_in, FILE **fp_out, FILE **fp_err)
++pid_t filter_create(const char *cmd, FILE **fp_in, FILE **fp_out, FILE **fp_err)
+ {
+- return mutt_create_filter_fd(s, fp_in, fp_out, fp_err, -1, -1, -1);
++ return filter_create_fd(cmd, fp_in, fp_out, fp_err, -1, -1, -1);
+ }
+
+ /**
+- * mutt_wait_filter - Wait for the exit of a process and return its status
++ * filter_wait - Wait for the exit of a process and return its status
+ * @param pid Process id of the process to wait for
+ * @retval num Exit status of the process identified by pid
+ * @retval -1 Error
+ */
+-int mutt_wait_filter(pid_t pid)
++int filter_wait(pid_t pid)
+ {
+- int rc;
++ int rc = 0;
+
+ waitpid(pid, &rc, 0);
+ mutt_sig_unblock_system(true);
+@@ -227,31 +224,3 @@ int mutt_wait_filter(pid_t pid)
+
+ return rc;
+ }
+-
+-/**
+- * mutt_wait_interactive_filter - Wait after an interactive filter
+- * @param pid Process id of the process to wait for
+- * @retval num Exit status of the process identified by pid
+- * @retval -1 Error
+- *
+- * This is used for filters that are actually interactive commands
+- * with input piped in: e.g. in mutt_view_attachment(), a mailcap
+- * entry without copiousoutput _and_ without a %s.
+- *
+- * For those cases, we treat it like a blocking system command, and
+- * poll IMAP to keep connections open.
+- */
+-int mutt_wait_interactive_filter(pid_t pid)
+-{
+- int rc;
+-
+-#ifdef USE_IMAP
+- rc = imap_wait_keepalive(pid);
+-#else
+- waitpid(pid, &rc, 0);
+-#endif
+- mutt_sig_unblock_system(true);
+- rc = WIFEXITED(rc) ? WEXITSTATUS(rc) : -1;
+-
+- return rc;
+-}
+diff --git a/filter.h b/mutt/filter.h
+similarity index 70%
+rename from filter.h
+rename to mutt/filter.h
+index 5062422e1..d82b485ec 100644
+--- a/filter.h
++++ b/mutt/filter.h
+@@ -18,15 +18,16 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MUTT_FILTER_H
+-#define MUTT_FILTER_H
++#ifndef MUTT_LIB_FILTER_H
++#define MUTT_LIB_FILTER_H
+
+ #include <stdio.h>
+ #include <unistd.h>
+
+-pid_t mutt_create_filter_fd(const char *cmd, FILE **fp_in, FILE **fp_out, FILE **fp_err, int fdin, int fdout, int fderr);
+-pid_t mutt_create_filter(const char *s, FILE **fp_in, FILE **fp_out, FILE **fp_err);
+-int mutt_wait_filter(pid_t pid);
+-int mutt_wait_interactive_filter (pid_t pid);
++#define EXEC_SHELL "/bin/sh"
+
+-#endif /* MUTT_FILTER_H */
++pid_t filter_create (const char *cmd, FILE **fp_in, FILE **fp_out, FILE **fp_err);
++pid_t filter_create_fd(const char *cmd, FILE **fp_in, FILE **fp_out, FILE **fp_err, int fdin, int fdout, int fderr);
++int filter_wait (pid_t pid);
++
++#endif /* MUTT_LIB_FILTER_H */
+diff --git a/mutt/hash.c b/mutt/hash.c
+index 02572e10f..45c9db125 100644
+--- a/mutt/hash.c
++++ b/mutt/hash.c
+@@ -37,7 +37,7 @@
+ #define SOME_PRIME 149711
+
+ /**
+- * gen_string_hash - Generate a hash from a string
++ * gen_string_hash - Generate a hash from a string - Implements Hash::gen_hash()
+ * @param key String key
+ * @param n Number of elements in the Hash table
+ * @retval num Cryptographic hash of the string
+@@ -55,7 +55,7 @@ static size_t gen_string_hash(union HashKey key, size_t n)
+ }
+
+ /**
+- * cmp_string_key - Compare two string keys
++ * cmp_string_key - Compare two string keys - Implements Hash::cmp_key()
+ * @param a First key to compare
+ * @param b Second key to compare
+ * @retval -1 a precedes b
+@@ -68,7 +68,7 @@ static int cmp_string_key(union HashKey a, union HashKey b)
+ }
+
+ /**
+- * gen_case_string_hash - Generate a hash from a string (ignore the case)
++ * gen_case_string_hash - Generate a hash from a string (ignore the case) - Implements Hash::gen_hash()
+ * @param key String key
+ * @param n Number of elements in the Hash table
+ * @retval num Cryptographic hash of the string
+@@ -86,7 +86,7 @@ static size_t gen_case_string_hash(union HashKey key, size_t n)
+ }
+
+ /**
+- * cmp_case_string_key - Compare two string keys (ignore case)
++ * cmp_case_string_key - Compare two string keys (ignore case) - Implements Hash::cmp_key()
+ * @param a First key to compare
+ * @param b Second key to compare
+ * @retval -1 a precedes b
+@@ -99,7 +99,7 @@ static int cmp_case_string_key(union HashKey a, union HashKey b)
+ }
+
+ /**
+- * gen_int_hash - Generate a hash from an integer
++ * gen_int_hash - Generate a hash from an integer - Implements Hash::gen_hash()
+ * @param key Integer key
+ * @param n Number of elements in the Hash table
+ * @retval num Cryptographic hash of the integer
+@@ -110,7 +110,7 @@ static size_t gen_int_hash(union HashKey key, size_t n)
+ }
+
+ /**
+- * cmp_int_key - Compare two integer keys
++ * cmp_int_key - Compare two integer keys - Implements Hash::cmp_key()
+ * @param a First key to compare
+ * @param b Second key to compare
+ * @retval -1 a precedes b
+diff --git a/mutt/mutt.h b/mutt/lib.h
+similarity index 95%
+rename from mutt/mutt.h
+rename to mutt/lib.h
+index 7598b2b79..8dfa7dd91 100644
+--- a/mutt/mutt.h
++++ b/mutt/lib.h
+@@ -34,6 +34,7 @@
+ * | mutt/envlist.c | @subpage envlist |
+ * | mutt/exit.c | @subpage exit |
+ * | mutt/file.c | @subpage file |
++ * | mutt/filter.c | @subpage filter |
+ * | mutt/hash.c | @subpage hash |
+ * | mutt/history.c | @subpage history |
+ * | mutt/list.c | @subpage list |
+@@ -55,8 +56,8 @@
+ * the library, but none depends on source from outside.
+ */
+
+-#ifndef MUTT_LIB_MUTT_H
+-#define MUTT_LIB_MUTT_H
++#ifndef MUTT_MUTT_LIB_H
++#define MUTT_MUTT_LIB_H
+
+ // IWYU pragma: begin_exports
+ #include "base64.h"
+@@ -66,6 +67,7 @@
+ #include "envlist.h"
+ #include "exit.h"
+ #include "file.h"
++#include "filter.h"
+ #include "hash.h"
+ #include "history.h"
+ #include "list.h"
+@@ -75,16 +77,16 @@
+ #include "md5.h"
+ #include "memory.h"
+ #include "message.h"
+-#include "queue.h"
+ #include "notify.h"
+ #include "notify_type.h"
+ #include "observer.h"
+ #include "path.h"
+ #include "pool.h"
++#include "queue.h"
+ #include "regex3.h"
+ #include "signal2.h"
+ #include "slist.h"
+ #include "string2.h"
+ // IWYU pragma: end_exports
+
+-#endif /* MUTT_LIB_MUTT_H */
++#endif /* MUTT_MUTT_LIB_H */
+diff --git a/mutt/md5.c b/mutt/md5.c
+index 5b661abbd..016ca7cff 100644
+--- a/mutt/md5.c
++++ b/mutt/md5.c
+@@ -403,11 +403,13 @@ void mutt_md5_process_bytes(const void *buf, size_t buflen, struct Md5Ctx *md5ct
+ if (buflen >= 64)
+ {
+ #if !defined(_STRING_ARCH_unaligned)
+-#define alignof(type) offsetof( \
+- struct { \
+- char c; type x; \
+- }, \
+- x)
++#define alignof(type) \
++ offsetof( \
++ struct { \
++ char c; \
++ type x; \
++ }, \
++ x)
+ #define UNALIGNED_P(p) (((size_t) p) % alignof(md5_uint32) != 0)
+ if (UNALIGNED_P(buf))
+ {
+diff --git a/mutt/notify.c b/mutt/notify.c
+index e5e661130..3fab31e0d 100644
+--- a/mutt/notify.c
++++ b/mutt/notify.c
+@@ -29,7 +29,6 @@
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdbool.h>
+-#include <stdint.h>
+ #include "notify.h"
+ #include "memory.h"
+ #include "queue.h"
+@@ -39,24 +38,18 @@
+ */
+ struct Notify
+ {
+- void *obj;
+- enum NotifyType obj_type;
+ struct Notify *parent;
+ struct ObserverList observers;
+ };
+
+ /**
+ * notify_new - Create a new notifications handler
+- * @param object Owner of the object
+- * @param type Object type, e.g. #NT_ACCOUNT
+ * @retval ptr New notification handler
+ */
+-struct Notify *notify_new(void *object, enum NotifyType type)
++struct Notify *notify_new(void)
+ {
+ struct Notify *notify = mutt_mem_calloc(1, sizeof(*notify));
+
+- notify->obj = object;
+- notify->obj_type = type;
+ STAILQ_INIT(¬ify->observers);
+
+ return notify;
+@@ -74,7 +67,7 @@ void notify_free(struct Notify **ptr)
+ struct Notify *notify = *ptr;
+ // NOTIFY observers
+
+- notify_observer_remove(notify, NULL, 0);
++ notify_observer_remove(notify, NULL, NULL);
+
+ FREE(ptr);
+ }
+@@ -96,25 +89,25 @@ void notify_set_parent(struct Notify *notify, struct Notify *parent)
+
+ /**
+ * send - Send out a notification message
+- * @param source Source of the event, e.g. #Account
+- * @param current Current handler, e.g. #NeoMutt
+- * @param type Type of event, e.g. #NT_ACCOUNT
+- * @param subtype Subtype, e.g. NT_ACCOUNT_NEW
+- * @param data Private data associated with the event type
++ * @param source Source of the event, e.g. #Account
++ * @param current Current handler, e.g. #NeoMutt
++ * @param event_type Type of event, e.g. #NT_ACCOUNT
++ * @param event_subtype Subtype, e.g. #NT_ACCOUNT_ADD
++ * @param event_data Private data associated with the event type
+ * @retval true If successfully sent
+ *
+- * Notifications are sent to all matching observers, then propagated up the
+- * handler tree. For example a "new email" notification would be sent to the
+- * Mailbox that owned it, the Account (owning the Mailbox) and finally the
++ * Notifications are sent to all observers of the object, then propagated up
++ * the handler tree. For example a "new email" notification would be sent to
++ * the Mailbox that owns it, the Account (owning the Mailbox) and finally the
+ * NeoMutt object.
+ */
+-static bool send(struct Notify *source, struct Notify *current, int type,
+- int subtype, intptr_t data)
++static bool send(struct Notify *source, struct Notify *current,
++ enum NotifyType event_type, int event_subtype, void *event_data)
+ {
+ if (!source || !current)
+ return false;
+
+- // mutt_debug(LL_NOTIFY, "send: %d, %ld\n", type, data);
++ // mutt_debug(LL_NOTIFY, "send: %d, %ld\n", event_type, event_data);
+ struct ObserverNode *np = NULL;
+ struct ObserverNode *tmp = NULL;
+ // We use the `_SAFE` version in case an event causes an observer to be deleted
+@@ -122,42 +115,42 @@ static bool send(struct Notify *source, struct Notify *current, int type,
+ {
+ struct Observer *o = np->observer;
+
+- struct NotifyCallback nc = { source->obj, source->obj_type, type, subtype,
+- data, o->flags, o->data };
++ struct NotifyCallback nc = { event_type, event_subtype, event_data, o->global_data };
+ o->callback(&nc);
+ }
+
+ if (current->parent)
+- return send(source, current->parent, type, subtype, data);
++ return send(source, current->parent, event_type, event_subtype, event_data);
+ return true;
+ }
+
+ /**
+ * notify_send - Send out a notification message
+- * @param notify Notification handler
+- * @param type Type of event, e.g. #NT_ACCOUNT
+- * @param subtype Subtype, e.g. NT_ACCOUNT_NEW
+- * @param data Private data associated with the event type
++ * @param notify Notification handler
++ * @param event_type Type of event, e.g. #NT_ACCOUNT
++ * @param event_subtype Subtype, e.g. #NT_ACCOUNT_ADD
++ * @param event_data Private data associated with the event
+ * @retval true If successfully sent
+ *
+ * See send() for more details.
+ */
+-bool notify_send(struct Notify *notify, int type, int subtype, intptr_t data)
++bool notify_send(struct Notify *notify, enum NotifyType event_type,
++ int event_subtype, void *event_data)
+ {
+- return send(notify, notify, type, subtype, data);
++ return send(notify, notify, event_type, event_subtype, event_data);
+ }
+
+ /**
+ * notify_observer_add - Add an observer to an object
+- * @param notify Notification handler
+- * @param type Type of event to listen for, e.g. #NT_ACCOUNT
+- * @param subtype Subtype, e.g. NT_ACCOUNT_NEW
+- * @param callback Function to call on a matching event, see ::observer_t
+- * @param data Private data associated with the event type
++ * @param notify Notification handler
++ * @param callback Function to call on a matching event, see ::observer_t
++ * @param global_data Private data associated with the observer
+ * @retval true If successful
++ *
++ * New observers are added to the front of the list, giving them higher
++ * priority than existing observers.
+ */
+-bool notify_observer_add(struct Notify *notify, enum NotifyType type,
+- int subtype, observer_t callback, intptr_t data)
++bool notify_observer_add(struct Notify *notify, observer_t callback, void *global_data)
+ {
+ if (!notify || !callback)
+ return false;
+@@ -170,28 +163,26 @@ bool notify_observer_add(struct Notify *notify, enum NotifyType type,
+ }
+
+ struct Observer *o = mutt_mem_calloc(1, sizeof(*o));
+- o->type = type;
+- o->flags = subtype;
+ o->callback = callback;
+- o->data = data;
++ o->global_data = global_data;
+
+ np = mutt_mem_calloc(1, sizeof(*np));
+ np->observer = o;
+- STAILQ_INSERT_TAIL(¬ify->observers, np, entries);
++ STAILQ_INSERT_HEAD(¬ify->observers, np, entries);
+
+ return true;
+ }
+
+ /**
+ * notify_observer_remove - Remove an observer from an object
+- * @param notify Notification handler
+- * @param callback Function to call on a matching event, see ::observer_t
+- * @param data Private data to match specific callback
++ * @param notify Notification handler
++ * @param callback Function to call on a matching event, see ::observer_t
++ * @param global_data Private data to match specific callback
+ * @retval true If successful
+ *
+ * If callback is NULL, all the observers will be removed.
+ */
+-bool notify_observer_remove(struct Notify *notify, observer_t callback, intptr_t data)
++bool notify_observer_remove(struct Notify *notify, observer_t callback, void *global_data)
+ {
+ if (!notify)
+ return false;
+@@ -201,7 +192,8 @@ bool notify_observer_remove(struct Notify *notify, observer_t callback, intptr_t
+ struct ObserverNode *tmp = NULL;
+ STAILQ_FOREACH_SAFE(np, ¬ify->observers, entries, tmp)
+ {
+- if (!callback || ((np->observer->callback == callback) && (np->observer->data == data)))
++ if (!callback || ((np->observer->callback == callback) &&
++ (np->observer->global_data == global_data)))
+ {
+ STAILQ_REMOVE(¬ify->observers, np, ObserverNode, entries);
+ FREE(&np->observer);
+diff --git a/mutt/notify.h b/mutt/notify.h
+index a045527e1..439874019 100644
+--- a/mutt/notify.h
++++ b/mutt/notify.h
+@@ -24,19 +24,17 @@
+ #define MUTT_LIB_NOTIFY_H
+
+ #include <stdbool.h>
+-#include <stdint.h>
+ #include "notify_type.h"
+ #include "observer.h"
+
+ struct Notify;
+
+-struct Notify *notify_new(void *object, enum NotifyType type);
++struct Notify *notify_new(void);
+ void notify_free(struct Notify **ptr);
+ void notify_set_parent(struct Notify *notify, struct Notify *parent);
+
+-bool notify_send(struct Notify *notify, int type, int subtype, intptr_t data);
+-
+-bool notify_observer_add(struct Notify *notify, enum NotifyType type, int subtype, observer_t callback, intptr_t data);
+-bool notify_observer_remove(struct Notify *notify, observer_t callback, intptr_t data);
++bool notify_send(struct Notify *notify, enum NotifyType event_type, int event_subtype, void *event_data);
++bool notify_observer_add(struct Notify *notify, observer_t callback, void *global_data);
++bool notify_observer_remove(struct Notify *notify, observer_t callback, void *global_data);
+
+ #endif /* MUTT_LIB_NOTIFY_H */
+diff --git a/mutt/notify_type.h b/mutt/notify_type.h
+index 00bcbddc4..15af9bce6 100644
+--- a/mutt/notify_type.h
++++ b/mutt/notify_type.h
+@@ -28,16 +28,14 @@
+ */
+ enum NotifyType
+ {
+- NT_NEOMUTT, ///< Container for all notifications
+- NT_GLOBAL, ///< Not object-related
+- NT_CONFIG, ///< Config has changed
+ NT_ACCOUNT, ///< Account has changed
+- NT_MAILBOX, ///< Mailbox has changed
+- NT_EMAIL, ///< Email has changed
+- NT_WINDOW, ///< Window has changed
+- NT_CONTEXT, ///< Context has changed
+ NT_COLOR, ///< Colour has changed
+ NT_COMMAND, ///< A Command has been executed
++ NT_CONFIG, ///< Config has changed
++ NT_CONTEXT, ///< Context has changed
++ NT_EMAIL, ///< Email has changed
++ NT_GLOBAL, ///< Not object-related
++ NT_MAILBOX, ///< Mailbox has changed
+ };
+
+ #endif /* MUTT_LIB_NOTIFY_TYPE_H */
+diff --git a/mutt/observer.h b/mutt/observer.h
+index 6fe75fcc2..d1effde57 100644
+--- a/mutt/observer.h
++++ b/mutt/observer.h
+@@ -30,7 +30,6 @@
+ #define MUTT_LIB_OBSERVER_H
+
+ #include <stdbool.h>
+-#include <stdint.h>
+ #include "notify_type.h"
+ #include "queue.h"
+
+@@ -39,36 +38,27 @@
+ */
+ struct NotifyCallback
+ {
+- void *obj; ///< Notify: Event happened here
+- int obj_type; ///< Notify: type of object event happened on
+- int event_type; ///< Send: event type
+- int event_subtype; ///< Send: event subtype
+- intptr_t event; ///< Send: event data
+- int flags; ///< Observer: determine event data
+- intptr_t data; ///< Observer: private to observer
++ enum NotifyType event_type; ///< Send: Event type, e.g. #NT_ACCOUNT
++ int event_subtype; ///< Send: Event subtype, e.g. #NT_ACCOUNT_ADD
++ void *event_data; ///< Data from notify_send()
++ void *global_data; ///< Data from notify_observer_add()
+ };
+
+ /**
+ * typedef observer_t - Prototype for a notification callback function
+- * @param[in] flags Flags, see #MuttFormatFlags
++ * @param[in] nc Callback data
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+ typedef int (*observer_t)(struct NotifyCallback *nc);
+
+-typedef uint8_t ObserverFlags; ///< Flags, e.g. #OBSERVE_RECURSIVE
+-#define OBSERVE_NO_FLAGS 0 ///< No flags are set
+-#define OBSERVE_RECURSIVE (1 << 0) ///< Listen for events of children
+-
+ /**
+ * struct Observer - An observer of notifications
+ */
+ struct Observer
+ {
+- enum NotifyType type; ///< Object to observe to, e.g. #NT_NEOMUTT
+- ObserverFlags flags; ///< Flags, e.g. #OBSERVE_RECURSIVE
+ observer_t callback; ///< Callback function for events
+- intptr_t data; ///< Private data to pass to callback
++ void *global_data; ///< Private data to pass to callback
+ };
+
+ /**
+diff --git a/mutt/path.c b/mutt/path.c
+index bebbe589a..856a87cc6 100644
+--- a/mutt/path.c
++++ b/mutt/path.c
+@@ -45,12 +45,13 @@
+
+ /**
+ * mutt_path_tidy_slash - Remove unnecessary slashes and dots
+- * @param[in,out] buf Path to modify
++ * @param[in,out] buf Path to modify
++ * @param[in] is_dir Should a trailing / be removed?
+ * @retval true Success
+ *
+ * Collapse repeated '//' and '/./'
+ */
+-bool mutt_path_tidy_slash(char *buf)
++bool mutt_path_tidy_slash(char *buf, bool is_dir)
+ {
+ if (!buf)
+ return false;
+@@ -86,7 +87,7 @@ bool mutt_path_tidy_slash(char *buf)
+ }
+
+ /* Strip a trailing / as long as it's not the only character */
+- if ((w > (buf + 1)) && (w[-1] == '/'))
++ if (is_dir && (w > (buf + 1)) && (w[-1] == '/'))
+ w--;
+
+ *w = '\0';
+@@ -156,16 +157,17 @@ bool mutt_path_tidy_dotdot(char *buf)
+ /**
+ * mutt_path_tidy - Remove unnecessary parts of a path
+ * @param[in,out] buf Path to modify
++ * @param[in] is_dir Is the path a directory?
+ * @retval true Success
+ *
+ * Remove unnecessary dots and slashes from a path
+ */
+-bool mutt_path_tidy(char *buf)
++bool mutt_path_tidy(char *buf, bool is_dir)
+ {
+ if (!buf || (buf[0] != '/'))
+ return false;
+
+- if (!mutt_path_tidy_slash(buf))
++ if (!mutt_path_tidy_slash(buf, is_dir))
+ return false;
+
+ return mutt_path_tidy_dotdot(buf);
+@@ -173,19 +175,20 @@ bool mutt_path_tidy(char *buf)
+
+ /**
+ * mutt_path_pretty - Tidy a filesystem path
+- * @param buf Path to modify
+- * @param buflen Length of the buffer
++ * @param buf Path to modify
++ * @param buflen Length of the buffer
+ * @param homedir Home directory for '~' substitution
++ * @param is_dir Is the path a directory?
+ * @retval true Success
+ *
+ * Tidy a path and replace a home directory with '~'
+ */
+-bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir)
++bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir, bool is_dir)
+ {
+ if (!buf)
+ return false;
+
+- mutt_path_tidy(buf);
++ mutt_path_tidy(buf, is_dir);
+
+ size_t len = mutt_str_startswith(buf, homedir, CASE_MATCH);
+ if (len == 0)
+@@ -206,70 +209,89 @@ bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir)
+ }
+
+ /**
+- * mutt_path_canon - Create the canonical version of a path
++ * mutt_path_tilde - Expand '~' in a path
+ * @param buf Path to modify
+ * @param buflen Length of the buffer
+ * @param homedir Home directory for '~' substitution
+ * @retval true Success
+ *
+- * Remove unnecessary dots and slashes from a path and expand shell '~'
+- * abbreviations:
+- * - ~/dir (~ expanded)
+- * - ~realuser/dir (~realuser expanded)
+- * - ~nonuser/dir (~nonuser not changed)
++ * Behaviour:
++ * - `~/dir` (~ expanded)
++ * - `~realuser/dir` (~realuser expanded)
++ * - `~nonuser/dir` (~nonuser not changed)
+ */
+-bool mutt_path_canon(char *buf, size_t buflen, const char *homedir)
++bool mutt_path_tilde(char *buf, size_t buflen, const char *homedir)
+ {
+- if (!buf)
++ if (!buf || (buf[0] != '~'))
+ return false;
+
+ char result[PATH_MAX] = { 0 };
++ char *dir = NULL;
++ size_t len = 0;
+
+- if (buf[0] == '~')
++ if ((buf[1] == '/') || (buf[1] == '\0'))
+ {
+- char *dir = NULL;
+- size_t len = 0;
+-
+- if ((buf[1] == '/') || (buf[1] == '\0'))
++ if (!homedir)
+ {
+- if (!homedir)
+- {
+- mutt_debug(LL_DEBUG3, "no homedir\n");
+- return false;
+- }
+-
+- len = mutt_str_strfcpy(result, homedir, sizeof(result));
+- dir = buf + 1;
++ mutt_debug(LL_DEBUG3, "no homedir\n");
++ return false;
+ }
+- else
+- {
+- char user[128];
+- dir = strchr(buf + 1, '/');
+- if (dir)
+- mutt_str_strfcpy(user, buf + 1, MIN(dir - buf, (unsigned) sizeof(user)));
+- else
+- mutt_str_strfcpy(user, buf + 1, sizeof(user));
+
+- struct passwd *pw = getpwnam(user);
+- if (!pw || !pw->pw_dir)
+- {
+- mutt_debug(LL_DEBUG1, "no such user: %s\n", user);
+- return false;
+- }
+-
+- len = mutt_str_strfcpy(result, pw->pw_dir, sizeof(result));
+- }
++ len = mutt_str_strfcpy(result, homedir, sizeof(result));
++ dir = buf + 1;
++ }
++ else
++ {
++ char user[128];
++ dir = strchr(buf + 1, '/');
++ if (dir)
++ mutt_str_strfcpy(user, buf + 1, MIN(dir - buf, (unsigned) sizeof(user)));
++ else
++ mutt_str_strfcpy(user, buf + 1, sizeof(user));
+
+- size_t dirlen = mutt_str_strlen(dir);
+- if ((len + dirlen) >= buflen)
++ struct passwd *pw = getpwnam(user);
++ if (!pw || !pw->pw_dir)
+ {
+- mutt_debug(LL_DEBUG3, "result too big for the buffer %ld >= %ld\n",
+- len + dirlen, buflen);
++ mutt_debug(LL_DEBUG1, "no such user: %s\n", user);
+ return false;
+ }
+
+- mutt_str_strfcpy(result + len, dir, sizeof(result) - len);
+- mutt_str_strfcpy(buf, result, buflen);
++ len = mutt_str_strfcpy(result, pw->pw_dir, sizeof(result));
++ }
++
++ size_t dirlen = mutt_str_strlen(dir);
++ if ((len + dirlen) >= buflen)
++ {
++ mutt_debug(LL_DEBUG3, "result too big for the buffer %ld >= %ld\n", len + dirlen, buflen);
++ return false;
++ }
++
++ mutt_str_strfcpy(result + len, dir, sizeof(result) - len);
++ mutt_str_strfcpy(buf, result, buflen);
++
++ return true;
++}
++
++/**
++ * mutt_path_canon - Create the canonical version of a path
++ * @param buf Path to modify
++ * @param buflen Length of the buffer
++ * @param homedir Home directory for '~' substitution
++ * @param is_dir Is the path a directory?
++ * @retval true Success
++ *
++ * Remove unnecessary dots and slashes from a path and expand '~'.
++ */
++bool mutt_path_canon(char *buf, size_t buflen, const char *homedir, bool is_dir)
++{
++ if (!buf)
++ return false;
++
++ char result[PATH_MAX] = { 0 };
++
++ if (buf[0] == '~')
++ {
++ mutt_path_tilde(buf, buflen, homedir);
+ }
+ else if (buf[0] != '/')
+ {
+@@ -293,7 +315,7 @@ bool mutt_path_canon(char *buf, size_t buflen, const char *homedir)
+ mutt_str_strfcpy(buf, result, buflen);
+ }
+
+- if (!mutt_path_tidy(buf))
++ if (!mutt_path_tidy(buf, is_dir))
+ return false;
+
+ return true;
+diff --git a/mutt/path.h b/mutt/path.h
+index 5d4000e7c..3d0bb1888 100644
+--- a/mutt/path.h
++++ b/mutt/path.h
+@@ -30,17 +30,18 @@ struct Buffer;
+
+ bool mutt_path_abbr_folder(char *buf, size_t buflen, const char *folder);
+ const char *mutt_path_basename(const char *f);
+-bool mutt_path_canon(char *buf, size_t buflen, const char *homedir);
++bool mutt_path_canon(char *buf, size_t buflen, const char *homedir, bool is_dir);
+ char * mutt_path_concat(char *d, const char *dir, const char *fname, size_t l);
+ char * mutt_path_dirname(const char *path);
+ char * mutt_path_escape(const char *src);
+ const char *mutt_path_getcwd(struct Buffer *cwd);
+ bool mutt_path_parent(char *buf, size_t buflen);
+-bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir);
++bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir, bool is_dir);
+ size_t mutt_path_realpath(char *buf);
+-bool mutt_path_tidy(char *buf);
++bool mutt_path_tidy(char *buf, bool is_dir);
+ bool mutt_path_tidy_dotdot(char *buf);
+-bool mutt_path_tidy_slash(char *buf);
++bool mutt_path_tidy_slash(char *buf, bool is_dir);
++bool mutt_path_tilde(char *buf, size_t buflen, const char *homedir);
+ bool mutt_path_to_absolute(char *path, const char *reference);
+
+ #endif /* MUTT_LIB_PATH_H */
+diff --git a/mutt/queue.h b/mutt/queue.h
+index 91839e8fa..20e93b3fd 100644
+--- a/mutt/queue.h
++++ b/mutt/queue.h
+@@ -1,4 +1,6 @@
+ /*-
++ * SPDX-License-Identifier: BSD-3-Clause
++ *
+ * Copyright (c) 1991, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+@@ -27,11 +29,11 @@
+ * SUCH DAMAGE.
+ *
+ * @(#)queue.h 8.5 (Berkeley) 8/20/94
+- * $FreeBSD: head/sys/sys/queue.h 314436 2017-02-28 23:42:47Z imp $
++ * $FreeBSD: head/sys/sys/queue.h 349220 2019-06-20 01:15:33Z mav $
+ */
+
+-#ifndef SYS_QUEUE_H_
+-#define SYS_QUEUE_H_
++#ifndef _SYS_QUEUE_H_
++#define _SYS_QUEUE_H_
+
+ /*
+ * This file defines four types of data structures: singly-linked lists,
+@@ -91,6 +93,7 @@
+ * _NEXT + + + +
+ * _PREV - + - +
+ * _LAST - - + +
++ * _LAST_FAST - - - +
+ * _FOREACH + + + +
+ * _FOREACH_FROM + + + +
+ * _FOREACH_SAFE + + + +
+@@ -150,19 +153,15 @@ struct qm_trace {
+ #endif /* QUEUE_MACRO_DEBUG_TRACE */
+
+ #ifdef QUEUE_MACRO_DEBUG_TRASH
++#define QMD_SAVELINK(name, link) void **name = (void *)&(link)
+ #define TRASHIT(x) do {(x) = (void *)-1;} while (0)
+ #define QMD_IS_TRASHED(x) ((x) == (void *)(intptr_t)-1)
+ #else /* !QUEUE_MACRO_DEBUG_TRASH */
++#define QMD_SAVELINK(name, link)
+ #define TRASHIT(x)
+ #define QMD_IS_TRASHED(x) 0
+ #endif /* QUEUE_MACRO_DEBUG_TRASH */
+
+-#if defined(QUEUE_MACRO_DEBUG_TRACE) || defined(QUEUE_MACRO_DEBUG_TRASH)
+-#define QMD_SAVELINK(name, link) void **name = (void *)&(link)
+-#else /* !QUEUE_MACRO_DEBUG_TRACE && !QUEUE_MACRO_DEBUG_TRASH */
+-#define QMD_SAVELINK(name, link)
+-#endif /* QUEUE_MACRO_DEBUG_TRACE || QUEUE_MACRO_DEBUG_TRASH */
+-
+ #ifdef __cplusplus
+ /*
+ * In C++ there can be structure lists and class lists:
+@@ -813,11 +812,25 @@ struct { \
+ #define TAILQ_LAST(head, headname) \
+ (*(((struct headname *)((head)->tqh_last))->tqh_last))
+
++/*
++ * The FAST function is fast in that it causes no data access other
++ * then the access to the head. The standard LAST function above
++ * will cause a data access of both the element you want and
++ * the previous element. FAST is very useful for instances when
++ * you may want to prefetch the last data element.
++ */
++#define TAILQ_LAST_FAST(head, type, field) \
++ (TAILQ_EMPTY(head) ? NULL : __containerof((head)->tqh_last, QUEUE_TYPEOF(type), field.tqe_next))
++
+ #define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next)
+
+ #define TAILQ_PREV(elm, headname, field) \
+ (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last))
+
++#define TAILQ_PREV_FAST(elm, head, type, field) \
++ ((elm)->field.tqe_prev == &(head)->tqh_first ? NULL : \
++ __containerof((elm)->field.tqe_prev, QUEUE_TYPEOF(type), field.tqe_next))
++
+ #define TAILQ_REMOVE(head, elm, field) do { \
+ QMD_SAVELINK(oldnext, (elm)->field.tqe_next); \
+ QMD_SAVELINK(oldprev, (elm)->field.tqe_prev); \
+@@ -853,4 +866,4 @@ struct { \
+ (head2)->tqh_last = &(head2)->tqh_first; \
+ } while (0)
+
+-#endif /* !SYS_QUEUE_H_ */
++#endif /* !_SYS_QUEUE_H_ */
+diff --git a/mutt/string.c b/mutt/string.c
+index d98c28855..9258df9cf 100644
+--- a/mutt/string.c
++++ b/mutt/string.c
+@@ -500,7 +500,7 @@ void mutt_str_adjust(char **p)
+ }
+
+ /**
+- * mutt_str_strlower - convert all characters in the string to lowercase
++ * mutt_str_strlower - Convert all characters in the string to lowercase
+ * @param s String to lowercase
+ * @retval ptr Lowercase string
+ *
+@@ -522,6 +522,29 @@ char *mutt_str_strlower(char *s)
+ return s;
+ }
+
++/**
++ * mutt_str_strnlower - Convert some characters in the string to lowercase
++ * @param str String to lowercase
++ * @param num Maximum number of characters to lowercase
++ * @retval ptr Lowercase string
++ *
++ * The string is transformed in place.
++ */
++char *mutt_str_strnlower(char *str, size_t num)
++{
++ if (!str)
++ return NULL;
++
++ for (size_t i = 0; i < num; i++)
++ {
++ if (str[i] == '\0')
++ break;
++ str[i] = tolower((unsigned char) str[i]);
++ }
++
++ return str;
++}
++
+ /**
+ * mutt_str_strchrnul - Find first occurrence of character in string
+ * @param s Haystack
+diff --git a/mutt/string2.h b/mutt/string2.h
+index 19249f026..64aa8c2ae 100644
+--- a/mutt/string2.h
++++ b/mutt/string2.h
+@@ -104,6 +104,7 @@ size_t mutt_str_strfcpy(char *dest, const char *src, size_t dsize);
+ const char *mutt_str_stristr(const char *haystack, const char *needle);
+ size_t mutt_str_strlen(const char *a);
+ char * mutt_str_strlower(char *s);
++char * mutt_str_strnlower(char *str, size_t num);
+ int mutt_str_strncasecmp(const char *a, const char *b, size_t l);
+ char * mutt_str_strncat(char *d, size_t l, const char *s, size_t sl);
+ int mutt_str_strncmp(const char *a, const char *b, size_t l);
+diff --git a/mutt_account.c b/mutt_account.c
+index 2789c1bd7..5d5a5f9f1 100644
+--- a/mutt_account.c
++++ b/mutt_account.c
+@@ -28,106 +28,40 @@
+
+ #include "config.h"
+ #include <stdio.h>
+-#include <string.h>
+-#include <sys/types.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+-#include "conn/conn.h"
+-#include "mutt.h"
++#include "conn/lib.h"
+ #include "mutt_account.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+-#include "globals.h"
+-#include "options.h"
+-
+-/* These Config Variables are only used in mutt_account.c */
+-char *C_ImapLogin; ///< Config: (imap) Login name for the IMAP server (defaults to #C_ImapUser)
+-char *C_ImapOauthRefreshCommand; ///< Config: (imap) External command to generate OAUTH refresh token
+-char *C_ImapPass; ///< Config: (imap) Password for the IMAP server
+-char *C_NntpPass; ///< Config: (nntp) Password for the news server
+-char *C_NntpUser; ///< Config: (nntp) Username for the news server
+-char *C_PopOauthRefreshCommand; ///< Config: (pop) External command to generate OAUTH refresh token
+-char *C_PopPass; ///< Config: (pop) Password of the POP server
+-char *C_PopUser; ///< Config: (pop) Username of the POP server
+-char *C_SmtpOauthRefreshCommand; ///< Config: (smtp) External command to generate OAUTH refresh token
+-char *C_SmtpPass; ///< Config: (smtp) Password for the SMTP server
+-
+-/**
+- * mutt_account_match - Compare account info (host/port/user)
+- * @param a1 First ConnAccount
+- * @param a2 Second ConnAccount
+- * @retval true Accounts match
+- */
+-bool mutt_account_match(const struct ConnAccount *a1, const struct ConnAccount *a2)
+-{
+- if (a1->type != a2->type)
+- return false;
+- if (mutt_str_strcasecmp(a1->host, a2->host) != 0)
+- return false;
+- if (a1->port != a2->port)
+- return false;
+- if (a1->flags & a2->flags & MUTT_ACCT_USER)
+- return strcmp(a1->user, a2->user) == 0;
+-
+-#ifdef USE_NNTP
+- if (a1->type == MUTT_ACCT_TYPE_NNTP)
+- return (a1->flags & MUTT_ACCT_USER) && (a1->user[0] != '\0') ? false : true;
+-#endif
+-
+- const char *user = NONULL(Username);
+-
+-#ifdef USE_IMAP
+- if ((a1->type == MUTT_ACCT_TYPE_IMAP) && C_ImapUser)
+- user = C_ImapUser;
+-#endif
+-
+-#ifdef USE_POP
+- if ((a1->type == MUTT_ACCT_TYPE_POP) && C_PopUser)
+- user = C_PopUser;
+-#endif
+-
+-#ifdef USE_NNTP
+- if ((a1->type == MUTT_ACCT_TYPE_NNTP) && C_NntpUser)
+- user = C_NntpUser;
+-#endif
+-
+- if (a1->flags & MUTT_ACCT_USER)
+- return strcmp(a1->user, user) == 0;
+- if (a2->flags & MUTT_ACCT_USER)
+- return strcmp(a2->user, user) == 0;
+-
+- return true;
+-}
+
+ /**
+ * mutt_account_fromurl - Fill ConnAccount with information from url
+- * @param account ConnAccount to fill
+- * @param url Url to parse
++ * @param cac ConnAccount to fill
++ * @param url Url to parse
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+-int mutt_account_fromurl(struct ConnAccount *account, const struct Url *url)
++int mutt_account_fromurl(struct ConnAccount *cac, const struct Url *url)
+ {
+ /* must be present */
+ if (url->host)
+- mutt_str_strfcpy(account->host, url->host, sizeof(account->host));
++ mutt_str_strfcpy(cac->host, url->host, sizeof(cac->host));
+ else
+ return -1;
+
+ if (url->user)
+ {
+- mutt_str_strfcpy(account->user, url->user, sizeof(account->user));
+- account->flags |= MUTT_ACCT_USER;
++ mutt_str_strfcpy(cac->user, url->user, sizeof(cac->user));
++ cac->flags |= MUTT_ACCT_USER;
+ }
+ if (url->pass)
+ {
+- mutt_str_strfcpy(account->pass, url->pass, sizeof(account->pass));
+- account->flags |= MUTT_ACCT_PASS;
++ mutt_str_strfcpy(cac->pass, url->pass, sizeof(cac->pass));
++ cac->flags |= MUTT_ACCT_PASS;
+ }
+ if (url->port)
+ {
+- account->port = url->port;
+- account->flags |= MUTT_ACCT_PORT;
++ cac->port = url->port;
++ cac->flags |= MUTT_ACCT_PORT;
+ }
+
+ return 0;
+@@ -135,14 +69,14 @@ int mutt_account_fromurl(struct ConnAccount *account, const struct Url *url)
+
+ /**
+ * mutt_account_tourl - Fill URL with info from account
+- * @param account Source ConnAccount
+- * @param url Url to fill
++ * @param cac Source ConnAccount
++ * @param url Url to fill
+ *
+- * The URL information is a set of pointers into account - don't free or edit
+- * account until you've finished with url (make a copy of account if you need
+- * it for a while).
++ * The URL information is a set of pointers into cac - don't free or edit cac
++ * until you've finished with url (make a copy of cac if you need it for a
++ * while).
+ */
+-void mutt_account_tourl(struct ConnAccount *account, struct Url *url)
++void mutt_account_tourl(struct ConnAccount *cac, struct Url *url)
+ {
+ url->scheme = U_UNKNOWN;
+ url->user = NULL;
+@@ -151,9 +85,9 @@ void mutt_account_tourl(struct ConnAccount *account, struct Url *url)
+ url->path = NULL;
+
+ #ifdef USE_IMAP
+- if (account->type == MUTT_ACCT_TYPE_IMAP)
++ if (cac->type == MUTT_ACCT_TYPE_IMAP)
+ {
+- if (account->flags & MUTT_ACCT_SSL)
++ if (cac->flags & MUTT_ACCT_SSL)
+ url->scheme = U_IMAPS;
+ else
+ url->scheme = U_IMAP;
+@@ -161,9 +95,9 @@ void mutt_account_tourl(struct ConnAccount *account, struct Url *url)
+ #endif
+
+ #ifdef USE_POP
+- if (account->type == MUTT_ACCT_TYPE_POP)
++ if (cac->type == MUTT_ACCT_TYPE_POP)
+ {
+- if (account->flags & MUTT_ACCT_SSL)
++ if (cac->flags & MUTT_ACCT_SSL)
+ url->scheme = U_POPS;
+ else
+ url->scheme = U_POP;
+@@ -171,9 +105,9 @@ void mutt_account_tourl(struct ConnAccount *account, struct Url *url)
+ #endif
+
+ #ifdef USE_SMTP
+- if (account->type == MUTT_ACCT_TYPE_SMTP)
++ if (cac->type == MUTT_ACCT_TYPE_SMTP)
+ {
+- if (account->flags & MUTT_ACCT_SSL)
++ if (cac->flags & MUTT_ACCT_SSL)
+ url->scheme = U_SMTPS;
+ else
+ url->scheme = U_SMTP;
+@@ -181,239 +115,20 @@ void mutt_account_tourl(struct ConnAccount *account, struct Url *url)
+ #endif
+
+ #ifdef USE_NNTP
+- if (account->type == MUTT_ACCT_TYPE_NNTP)
++ if (cac->type == MUTT_ACCT_TYPE_NNTP)
+ {
+- if (account->flags & MUTT_ACCT_SSL)
++ if (cac->flags & MUTT_ACCT_SSL)
+ url->scheme = U_NNTPS;
+ else
+ url->scheme = U_NNTP;
+ }
+ #endif
+
+- url->host = account->host;
+- if (account->flags & MUTT_ACCT_PORT)
+- url->port = account->port;
+- if (account->flags & MUTT_ACCT_USER)
+- url->user = account->user;
+- if (account->flags & MUTT_ACCT_PASS)
+- url->pass = account->pass;
+-}
+-
+-/**
+- * mutt_account_getuser - Retrieve username into ConnAccount, if necessary
+- * @param account ConnAccount to fill
+- * @retval 0 Success
+- * @retval -1 Failure
+- */
+-int mutt_account_getuser(struct ConnAccount *account)
+-{
+- char prompt[256];
+-
+- /* already set */
+- if (account->flags & MUTT_ACCT_USER)
+- return 0;
+-#ifdef USE_IMAP
+- else if ((account->type == MUTT_ACCT_TYPE_IMAP) && C_ImapUser)
+- mutt_str_strfcpy(account->user, C_ImapUser, sizeof(account->user));
+-#endif
+-#ifdef USE_POP
+- else if ((account->type == MUTT_ACCT_TYPE_POP) && C_PopUser)
+- mutt_str_strfcpy(account->user, C_PopUser, sizeof(account->user));
+-#endif
+-#ifdef USE_NNTP
+- else if ((account->type == MUTT_ACCT_TYPE_NNTP) && C_NntpUser)
+- mutt_str_strfcpy(account->user, C_NntpUser, sizeof(account->user));
+-#endif
+- else if (OptNoCurses)
+- return -1;
+- /* prompt (defaults to unix username), copy into account->user */
+- else
+- {
+- /* L10N: Example: Username at myhost.com */
+- snprintf(prompt, sizeof(prompt), _("Username at %s: "), account->host);
+- mutt_str_strfcpy(account->user, Username, sizeof(account->user));
+- if (mutt_get_field_unbuffered(prompt, account->user, sizeof(account->user), MUTT_COMP_NO_FLAGS))
+- return -1;
+- }
+-
+- account->flags |= MUTT_ACCT_USER;
+-
+- return 0;
+-}
+-
+-/**
+- * mutt_account_getlogin - Retrieve login info into ConnAccount, if necessary
+- * @param account ConnAccount to fill
+- * @retval 0 Success
+- * @retval -1 Failure
+- */
+-int mutt_account_getlogin(struct ConnAccount *account)
+-{
+- /* already set */
+- if (account->flags & MUTT_ACCT_LOGIN)
+- return 0;
+-#ifdef USE_IMAP
+- if (account->type == MUTT_ACCT_TYPE_IMAP)
+- {
+- if (C_ImapLogin)
+- {
+- mutt_str_strfcpy(account->login, C_ImapLogin, sizeof(account->login));
+- account->flags |= MUTT_ACCT_LOGIN;
+- }
+- }
+-#endif
+-
+- if (!(account->flags & MUTT_ACCT_LOGIN))
+- {
+- if (mutt_account_getuser(account) == 0)
+- {
+- mutt_str_strfcpy(account->login, account->user, sizeof(account->login));
+- account->flags |= MUTT_ACCT_LOGIN;
+- }
+- else
+- {
+- mutt_debug(LL_DEBUG1, "Couldn't get user info\n");
+- return -1;
+- }
+- }
+-
+- return 0;
+-}
+-
+-/**
+- * mutt_account_getpass - Fetch password into ConnAccount, if necessary
+- * @param account ConnAccount to fill
+- * @retval 0 Success
+- * @retval -1 Failure
+- */
+-int mutt_account_getpass(struct ConnAccount *account)
+-{
+- char prompt[256];
+-
+- if (account->flags & MUTT_ACCT_PASS)
+- return 0;
+-#ifdef USE_IMAP
+- else if ((account->type == MUTT_ACCT_TYPE_IMAP) && C_ImapPass)
+- mutt_str_strfcpy(account->pass, C_ImapPass, sizeof(account->pass));
+-#endif
+-#ifdef USE_POP
+- else if ((account->type == MUTT_ACCT_TYPE_POP) && C_PopPass)
+- mutt_str_strfcpy(account->pass, C_PopPass, sizeof(account->pass));
+-#endif
+-#ifdef USE_SMTP
+- else if ((account->type == MUTT_ACCT_TYPE_SMTP) && C_SmtpPass)
+- mutt_str_strfcpy(account->pass, C_SmtpPass, sizeof(account->pass));
+-#endif
+-#ifdef USE_NNTP
+- else if ((account->type == MUTT_ACCT_TYPE_NNTP) && C_NntpPass)
+- mutt_str_strfcpy(account->pass, C_NntpPass, sizeof(account->pass));
+-#endif
+- else if (OptNoCurses)
+- return -1;
+- else
+- {
+- snprintf(prompt, sizeof(prompt), _("Password for %s@%s: "),
+- (account->flags & MUTT_ACCT_LOGIN) ? account->login : account->user,
+- account->host);
+- account->pass[0] = '\0';
+- if (mutt_get_password(prompt, account->pass, sizeof(account->pass)))
+- return -1;
+- }
+-
+- account->flags |= MUTT_ACCT_PASS;
+-
+- return 0;
+-}
+-
+-/**
+- * mutt_account_unsetpass - Unset ConnAccount's password
+- * @param account ConnAccount to modify
+- */
+-void mutt_account_unsetpass(struct ConnAccount *account)
+-{
+- account->flags &= ~MUTT_ACCT_PASS;
+-}
+-
+-/**
+- * mutt_account_getoauthbearer - Get an OAUTHBEARER token
+- * @param account Account to use
+- * @retval ptr OAuth token
+- * @retval NULL Error
+- *
+- * Run an external command to generate the oauth refresh token for an account,
+- * then create and encode the OAUTHBEARER token based on RFC7628.
+- *
+- * @note Caller should free the token
+- */
+-char *mutt_account_getoauthbearer(struct ConnAccount *account)
+-{
+- FILE *fp = NULL;
+- char *cmd = NULL;
+- char *token = NULL;
+- size_t token_size = 0;
+- char *oauthbearer = NULL;
+- size_t oalen;
+- char *encoded_token = NULL;
+- size_t encoded_len;
+- pid_t pid;
+-
+- /* The oauthbearer token includes the login */
+- if (mutt_account_getlogin(account))
+- return NULL;
+-
+-#ifdef USE_IMAP
+- if ((account->type == MUTT_ACCT_TYPE_IMAP) && C_ImapOauthRefreshCommand)
+- cmd = C_ImapOauthRefreshCommand;
+-#endif
+-#ifdef USE_POP
+- else if ((account->type == MUTT_ACCT_TYPE_POP) && C_PopOauthRefreshCommand)
+- cmd = C_PopOauthRefreshCommand;
+-#endif
+-#ifdef USE_SMTP
+- else if ((account->type == MUTT_ACCT_TYPE_SMTP) && C_SmtpOauthRefreshCommand)
+- cmd = C_SmtpOauthRefreshCommand;
+-#endif
+-
+- if (!cmd)
+- {
+- /* L10N: You will see this error message if (1) you have "oauthbearer" in
+- one of your $*_authenticators and (2) you do not have the corresponding
+- $*_oauth_refresh_command defined. So the message does not mean "None of
+- your $*_oauth_refresh_command's are defined." */
+- mutt_error(_("No OAUTH refresh command defined"));
+- return NULL;
+- }
+-
+- pid = mutt_create_filter(cmd, NULL, &fp, NULL);
+- if (pid < 0)
+- {
+- mutt_perror(_("Unable to run refresh command"));
+- return NULL;
+- }
+-
+- token = mutt_file_read_line(NULL, &token_size, fp, NULL, 0);
+- mutt_file_fclose(&fp);
+- mutt_wait_filter(pid);
+-
+- if (!token || (*token == '\0'))
+- {
+- mutt_error(_("Command returned empty string"));
+- FREE(&token);
+- return NULL;
+- }
+-
+- /* Determine the length of the keyed message digest, add 50 for overhead. */
+- oalen = strlen(account->login) + strlen(account->host) + strlen(token) + 50;
+- oauthbearer = mutt_mem_malloc(oalen);
+-
+- snprintf(oauthbearer, oalen, "n,a=%s,\001host=%s\001port=%d\001auth=Bearer %s\001\001",
+- account->login, account->host, account->port, token);
+-
+- FREE(&token);
+-
+- encoded_len = strlen(oauthbearer) * 4 / 3 + 10;
+- encoded_token = mutt_mem_malloc(encoded_len);
+- mutt_b64_encode(oauthbearer, strlen(oauthbearer), encoded_token, encoded_len);
+- FREE(&oauthbearer);
+- return encoded_token;
++ url->host = cac->host;
++ if (cac->flags & MUTT_ACCT_PORT)
++ url->port = cac->port;
++ if (cac->flags & MUTT_ACCT_USER)
++ url->user = cac->user;
++ if (cac->flags & MUTT_ACCT_PASS)
++ url->pass = cac->pass;
+ }
+diff --git a/mutt_account.h b/mutt_account.h
+index 6e63c3bd9..4362e0f0b 100644
+--- a/mutt_account.h
++++ b/mutt_account.h
+@@ -25,24 +25,9 @@
+ #ifndef MUTT_MUTT_ACCOUNT_H
+ #define MUTT_MUTT_ACCOUNT_H
+
+-#include <stdbool.h>
+-#include <stdint.h>
+-
+ struct ConnAccount;
+ struct Url;
+
+-/* These Config Variables are only used in mutt_account.c */
+-extern char *C_ImapLogin;
+-extern char *C_ImapOauthRefreshCommand;
+-extern char *C_ImapPass;
+-extern char *C_NntpPass;
+-extern char *C_NntpUser;
+-extern char *C_PopOauthRefreshCommand;
+-extern char *C_PopPass;
+-extern char *C_PopUser;
+-extern char *C_SmtpOauthRefreshCommand;
+-extern char *C_SmtpPass;
+-
+ /**
+ * enum AccountType - account types
+ */
+@@ -55,21 +40,7 @@ enum AccountType
+ MUTT_ACCT_TYPE_NNTP, ///< Nntp (Usenet) Account
+ };
+
+-typedef uint8_t MuttAccountFlags; ///< Flags, Which ConnAccount fields are initialised, e.g. #MUTT_ACCT_PORT
+-#define MUTT_ACCT_NO_FLAGS 0 ///< No flags are set
+-#define MUTT_ACCT_PORT (1 << 0) ///< Port field has been set
+-#define MUTT_ACCT_USER (1 << 1) ///< User field has been set
+-#define MUTT_ACCT_LOGIN (1 << 2) ///< Login field has been set
+-#define MUTT_ACCT_PASS (1 << 3) ///< Password field has been set
+-#define MUTT_ACCT_SSL (1 << 4) ///< Account uses SSL/TLS
+-
+-bool mutt_account_match(const struct ConnAccount *a1, const struct ConnAccount *a2);
+-int mutt_account_fromurl(struct ConnAccount *account, const struct Url *url);
+-void mutt_account_tourl(struct ConnAccount *account, struct Url *url);
+-int mutt_account_getuser(struct ConnAccount *account);
+-int mutt_account_getlogin(struct ConnAccount *account);
+-int mutt_account_getpass(struct ConnAccount *account);
+-void mutt_account_unsetpass(struct ConnAccount *account);
+-char *mutt_account_getoauthbearer(struct ConnAccount *account);
++int mutt_account_fromurl(struct ConnAccount *account, const struct Url *url);
++void mutt_account_tourl (struct ConnAccount *account, struct Url *url);
+
+ #endif /* MUTT_MUTT_ACCOUNT_H */
+diff --git a/mutt_attach.c b/mutt_attach.c
+index 5333f6e4c..d8f51968c 100644
+--- a/mutt_attach.c
++++ b/mutt_attach.c
+@@ -34,28 +34,30 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/stat.h>
++#include <sys/wait.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt_attach.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "mailcap.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "pager.h"
+ #include "protos.h"
+ #include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
++#ifdef USE_IMAP
++#include "imap/lib.h"
++#endif
+
+ /**
+ * mutt_get_tmp_attachment - Get a temporary copy of an attachment
+@@ -365,6 +367,33 @@ void mutt_check_lookup_list(struct Body *b, char *type, size_t len)
+ }
+ }
+
++/**
++ * wait_interactive_filter - Wait after an interactive filter
++ * @param pid Process id of the process to wait for
++ * @retval num Exit status of the process identified by pid
++ * @retval -1 Error
++ *
++ * This is used for filters that are actually interactive commands
++ * with input piped in: e.g. in mutt_view_attachment(), a mailcap
++ * entry without copiousoutput _and_ without a %s.
++ *
++ * For those cases, we treat it like a blocking system command, and
++ * poll IMAP to keep connections open.
++ */
++static int wait_interactive_filter(pid_t pid)
++{
++ int rc;
++
++#ifdef USE_IMAP
++ rc = imap_wait_keepalive(pid);
++#else
++ waitpid(pid, &rc, 0);
++#endif
++ mutt_sig_unblock_system(true);
++ rc = WIFEXITED(rc) ? WEXITSTATUS(rc) : -1;
++
++ return rc;
++}
+ /**
+ * mutt_view_attachment - View an attachment
+ * @param fp Source file stream. Can be NULL
+@@ -412,7 +441,7 @@ int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode,
+ snprintf(type, sizeof(type), "%s/%s", TYPE(a), a->subtype);
+
+ char columns[16];
+- snprintf(columns, sizeof(columns), "%d", win->cols);
++ snprintf(columns, sizeof(columns), "%d", win->state.cols);
+ mutt_envlist_set("COLUMNS", columns, true);
+
+ if (use_mailcap)
+@@ -512,9 +541,8 @@ int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode,
+ goto return_error;
+ }
+
+- pid = mutt_create_filter_fd(mutt_b2s(cmd), NULL, NULL, NULL,
+- use_pipe ? fd_temp : -1,
+- use_pager ? fd_pager : -1, -1);
++ pid = filter_create_fd(mutt_b2s(cmd), NULL, NULL, NULL,
++ use_pipe ? fd_temp : -1, use_pager ? fd_pager : -1, -1);
+
+ if (pid == -1)
+ {
+@@ -540,10 +568,13 @@ int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode,
+ snprintf(desc, sizeof(desc), _("---Command: %-30.30s Attachment: %s"),
+ mutt_b2s(cmd), type);
+ }
++ filter_wait(pid);
++ }
++ else
++ {
++ if (wait_interactive_filter(pid) || (entry->needsterminal && C_WaitKey))
++ mutt_any_key_to_continue(NULL);
+ }
+-
+- if ((mutt_wait_filter(pid) || (entry->needsterminal && C_WaitKey)) && !use_pager)
+- mutt_any_key_to_continue(NULL);
+
+ if (fd_temp != -1)
+ close(fd_temp);
+@@ -588,8 +619,10 @@ int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode,
+ decode_state.flags = MUTT_CHARCONV;
+ mutt_decode_attachment(a, &decode_state);
+ if (mutt_file_fclose(&decode_state.fp_out) == EOF)
++ {
+ mutt_debug(LL_DEBUG1, "fclose(%s) errno=%d %s\n", mutt_b2s(pagerfile),
+ errno, strerror(errno));
++ }
+ }
+ else
+ {
+@@ -705,9 +738,9 @@ int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfi
+ s.flags = MUTT_CHARCONV;
+
+ if (outfile && *outfile)
+- pid = mutt_create_filter_fd(path, &s.fp_out, NULL, NULL, -1, out, -1);
++ pid = filter_create_fd(path, &s.fp_out, NULL, NULL, -1, out, -1);
+ else
+- pid = mutt_create_filter(path, &s.fp_out, NULL, NULL);
++ pid = filter_create(path, &s.fp_out, NULL, NULL);
+
+ if (pid < 0)
+ {
+@@ -736,9 +769,9 @@ int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfi
+
+ FILE *fp_out = NULL;
+ if (outfile && *outfile)
+- pid = mutt_create_filter_fd(path, &fp_out, NULL, NULL, -1, out, -1);
++ pid = filter_create_fd(path, &fp_out, NULL, NULL, -1, out, -1);
+ else
+- pid = mutt_create_filter(path, &fp_out, NULL, NULL);
++ pid = filter_create(path, &fp_out, NULL, NULL);
+
+ if (pid < 0)
+ {
+@@ -760,7 +793,7 @@ int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfi
+ close(out);
+
+ /* check for error exit from child process */
+- if (mutt_wait_filter(pid) != 0)
++ if (filter_wait(pid) != 0)
+ rc = 0;
+
+ if ((rc == 0) || C_WaitKey)
+@@ -1081,7 +1114,7 @@ int mutt_print_attachment(FILE *fp, struct Body *a)
+ goto mailcap_cleanup;
+ }
+
+- pid = mutt_create_filter(mutt_b2s(cmd), &fp_out, NULL, NULL);
++ pid = filter_create(mutt_b2s(cmd), &fp_out, NULL, NULL);
+ if (pid < 0)
+ {
+ mutt_perror(_("Can't create filter"));
+@@ -1092,7 +1125,7 @@ int mutt_print_attachment(FILE *fp, struct Body *a)
+ mutt_file_copy_stream(fp_in, fp_out);
+ mutt_file_fclose(&fp_out);
+ mutt_file_fclose(&fp_in);
+- if (mutt_wait_filter(pid) || C_WaitKey)
++ if (filter_wait(pid) || C_WaitKey)
+ mutt_any_key_to_continue(NULL);
+ }
+ else
+@@ -1146,7 +1179,7 @@ int mutt_print_attachment(FILE *fp, struct Body *a)
+ mutt_debug(LL_DEBUG2, "successfully opened %s read-only\n", mutt_b2s(newfile));
+
+ mutt_endwin();
+- pid = mutt_create_filter(NONULL(C_PrintCommand), &fp_out, NULL, NULL);
++ pid = filter_create(NONULL(C_PrintCommand), &fp_out, NULL, NULL);
+ if (pid < 0)
+ {
+ mutt_perror(_("Can't create filter"));
+@@ -1160,7 +1193,7 @@ int mutt_print_attachment(FILE *fp, struct Body *a)
+ mutt_file_fclose(&fp_out);
+ mutt_file_fclose(&fp_in);
+
+- if ((mutt_wait_filter(pid) != 0) || C_WaitKey)
++ if ((filter_wait(pid) != 0) || C_WaitKey)
+ mutt_any_key_to_continue(NULL);
+ rc = 1;
+ }
+diff --git a/mutt_body.c b/mutt_body.c
+index 66f54578c..98c21ff3c 100644
+--- a/mutt_body.c
++++ b/mutt_body.c
+@@ -30,7 +30,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "mutt_body.h"
+ #include "mutt_attach.h"
+diff --git a/mutt_commands.c b/mutt_commands.c
+new file mode 100644
+index 000000000..a1b666c28
+--- /dev/null
++++ b/mutt_commands.c
+@@ -0,0 +1,161 @@
++/**
++ * @file
++ * Definitions of NeoMutt commands
++ *
++ * @authors
++ * Copyright (C) 1996-2002,2007,2010,2012-2013,2016 Michael R. Elkins <me@mutt.org>
++ * Copyright (C) 2004 g10 Code GmbH
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page mutt_commands Definitions of NeoMutt commands
++ *
++ * Definitions of NeoMutt commands
++ */
++
++#include "config.h"
++#include <stddef.h>
++#include "address/lib.h"
++#include "config/lib.h"
++#include "email/lib.h"
++#include "gui/lib.h"
++#include "mutt.h"
++#include "mutt_commands.h"
++#include "command_parse.h"
++#include "globals.h"
++#include "hook.h"
++#include "keymap.h"
++#include "mutt_lua.h"
++#include "score.h"
++
++// clang-format off
++const struct Command Commands[] = {
++#ifdef USE_SOCKET
++ { "account-hook", mutt_parse_hook, MUTT_ACCOUNT_HOOK },
++#endif
++ { "alias", parse_alias, 0 },
++ { "alternates", parse_alternates, 0 },
++ { "alternative_order", parse_stailq, IP &AlternativeOrderList },
++#ifdef USE_COMPRESSED
++ { "append-hook", mutt_parse_hook, MUTT_APPEND_HOOK },
++#endif
++ { "attachments", parse_attachments, 0 },
++ { "auto_view", parse_stailq, IP &AutoViewList },
++ { "bind", mutt_parse_bind, 0 },
++ { "charset-hook", mutt_parse_hook, MUTT_CHARSET_HOOK },
++#ifdef USE_COMPRESSED
++ { "close-hook", mutt_parse_hook, MUTT_CLOSE_HOOK },
++#endif
++#ifdef HAVE_COLOR
++ { "color", mutt_parse_color, IP &Colors },
++#endif
++ { "crypt-hook", mutt_parse_hook, MUTT_CRYPT_HOOK },
++ { "echo", parse_echo, 0 },
++ { "exec", mutt_parse_exec, 0 },
++ { "fcc-hook", mutt_parse_hook, MUTT_FCC_HOOK },
++ { "fcc-save-hook", mutt_parse_hook, MUTT_FCC_HOOK | MUTT_SAVE_HOOK },
++ { "finish", parse_finish, 0 },
++ { "folder-hook", mutt_parse_hook, MUTT_FOLDER_HOOK },
++ { "group", parse_group, MUTT_GROUP },
++ { "hdr_order", parse_stailq, IP &HeaderOrderList },
++ { "iconv-hook", mutt_parse_hook, MUTT_ICONV_HOOK },
++ { "ifdef", parse_ifdef, 0 },
++ { "ifndef", parse_ifdef, 1 },
++ { "ignore", parse_ignore, 0 },
++ { "index-format-hook", mutt_parse_idxfmt_hook, MUTT_IDXFMTHOOK },
++ { "lists", parse_lists, 0 },
++#ifdef USE_LUA
++ { "lua", mutt_lua_parse, 0 },
++ { "lua-source", mutt_lua_source_file, 0 },
++#endif
++ { "macro", mutt_parse_macro, 0 },
++ { "mailboxes", parse_mailboxes, 0 },
++ { "mailto_allow", parse_stailq, IP &MailToAllow },
++ { "mbox-hook", mutt_parse_hook, MUTT_MBOX_HOOK },
++ { "message-hook", mutt_parse_hook, MUTT_MESSAGE_HOOK },
++ { "mime_lookup", parse_stailq, IP &MimeLookupList },
++ { "mono", mutt_parse_mono, IP &Colors },
++ { "my_hdr", parse_my_hdr, 0 },
++ { "named-mailboxes", parse_mailboxes, MUTT_NAMED },
++ { "nospam", parse_spam_list, MUTT_NOSPAM },
++#ifdef USE_COMPRESSED
++ { "open-hook", mutt_parse_hook, MUTT_OPEN_HOOK },
++#endif
++ { "pgp-hook", mutt_parse_hook, MUTT_CRYPT_HOOK },
++ { "push", mutt_parse_push, 0 },
++ { "reply-hook", mutt_parse_hook, MUTT_REPLY_HOOK },
++ { "reset", parse_set, MUTT_SET_RESET },
++ { "save-hook", mutt_parse_hook, MUTT_SAVE_HOOK },
++ { "score", mutt_parse_score, 0 },
++ { "send-hook", mutt_parse_hook, MUTT_SEND_HOOK },
++ { "send2-hook", mutt_parse_hook, MUTT_SEND2_HOOK },
++ { "set", parse_set, MUTT_SET_SET },
++ { "setenv", parse_setenv, MUTT_SET_SET },
++ { "shutdown-hook", mutt_parse_hook, MUTT_SHUTDOWN_HOOK | MUTT_GLOBAL_HOOK },
++#ifdef USE_SIDEBAR
++ { "sidebar_whitelist", parse_path_list, IP &SidebarWhitelist },
++#endif
++ { "source", parse_source, 0 },
++ { "spam", parse_spam_list, MUTT_SPAM },
++ { "startup-hook", mutt_parse_hook, MUTT_STARTUP_HOOK | MUTT_GLOBAL_HOOK },
++ { "subjectrx", parse_subjectrx_list, IP &SubjectRegexList },
++ { "subscribe", parse_subscribe, 0 },
++#ifdef USE_IMAP
++ { "subscribe-to", parse_subscribe_to, 0 },
++#endif
++ { "tag-formats", parse_tag_formats, 0 },
++ { "tag-transforms", parse_tag_transforms, 0 },
++ { "timeout-hook", mutt_parse_hook, MUTT_TIMEOUT_HOOK | MUTT_GLOBAL_HOOK },
++ { "toggle", parse_set, MUTT_SET_INV },
++ { "unalias", parse_unalias, 0 },
++ { "unalternates", parse_unalternates, 0 },
++ { "unalternative_order", parse_unstailq, IP &AlternativeOrderList },
++ { "unattachments", parse_unattachments, 0 },
++ { "unauto_view", parse_unstailq, IP &AutoViewList },
++ { "unbind", mutt_parse_unbind, MUTT_UNBIND },
++#ifdef HAVE_COLOR
++ { "uncolor", mutt_parse_uncolor, IP &Colors },
++#endif
++ { "ungroup", parse_group, MUTT_UNGROUP },
++ { "unhdr_order", parse_unstailq, IP &HeaderOrderList },
++ { "unhook", mutt_parse_unhook, 0 },
++ { "unignore", parse_unignore, 0 },
++ { "unlists", parse_unlists, 0 },
++ { "unmacro", mutt_parse_unbind, MUTT_UNMACRO },
++ { "unmailboxes", parse_unmailboxes, 0 },
++ { "unmailto_allow", parse_unstailq, IP &MailToAllow },
++ { "unmime_lookup", parse_unstailq, IP &MimeLookupList },
++ { "unmono", mutt_parse_unmono, IP &Colors },
++ { "unmy_hdr", parse_unmy_hdr, 0 },
++ { "unscore", mutt_parse_unscore, 0 },
++ { "unset", parse_set, MUTT_SET_UNSET },
++ { "unsetenv", parse_setenv, MUTT_SET_UNSET },
++#ifdef USE_SIDEBAR
++ { "unsidebar_whitelist", parse_path_unlist, IP &SidebarWhitelist },
++#endif
++ { "unsubjectrx", parse_unsubjectrx_list, IP &SubjectRegexList },
++ { "unsubscribe", parse_unsubscribe, 0 },
++#ifdef USE_IMAP
++ { "unsubscribe-from", parse_unsubscribe_from, 0 },
++#endif
++#ifdef USE_NOTMUCH
++ { "unvirtual-mailboxes", parse_unmailboxes, 0 },
++ { "virtual-mailboxes", parse_mailboxes, MUTT_NAMED },
++#endif
++ { NULL, NULL, 0 },
++};
++// clang-format on
+diff --git a/mutt_commands.h b/mutt_commands.h
+index db5478dd2..25c28821b 100644
+--- a/mutt_commands.h
++++ b/mutt_commands.h
+@@ -1,6 +1,6 @@
+ /**
+ * @file
+- * Mapping from user command name to function
++ * Definitions of NeoMutt commands
+ *
+ * @authors
+ * Copyright (C) 2016 Bernard Pratz <z+mutt+pub@m0g.net>
+@@ -38,27 +38,40 @@ enum CommandResult
+ MUTT_CMD_FINISH = 1 ///< Finish: Stop processing this file
+ };
+
+-/**
+- * typedef command_t - Prototype for a function to parse a command
+- * @param buf Temporary Buffer space
+- * @param s Buffer containing string to be parsed
+- * @param data Flags associated with the command
+- * @param err Buffer for error messages
+- * @retval #CommandResult Result e.g. #MUTT_CMD_SUCCESS
+- */
+-typedef enum CommandResult (*command_t)(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
+-
+ /**
+ * struct Command - A user-callable command
+ */
+ struct Command
+ {
+ const char *name; ///< Name of the command
+- command_t func; ///< Function to parse the command
++
++ /**
++ * parse - Function to parse a command
++ * @param buf Temporary Buffer space
++ * @param s Buffer containing string to be parsed
++ * @param data Flags associated with the command
++ * @param err Buffer for error messages
++ * @retval #CommandResult Result e.g. #MUTT_CMD_SUCCESS
++ */
++ enum CommandResult (*parse)(struct Buffer *buf, struct Buffer *s, unsigned long data, struct Buffer *err);
++
+ intptr_t data; ///< Data or flags to pass to the command
+ };
+
+-const struct Command *mutt_command_get(const char *s);
+-void mutt_commands_apply(void *data, void (*application)(void *, const struct Command *));
++/**
++ * enum MuttSetCommand - Flags for parse_set()
++ */
++enum MuttSetCommand
++{
++ MUTT_SET_SET, ///< default is to set all vars
++ MUTT_SET_INV, ///< default is to invert all vars
++ MUTT_SET_UNSET, ///< default is to unset all vars
++ MUTT_SET_RESET, ///< default is to reset all vars to default
++};
++
++/* parameter to parse_mailboxes */
++#define MUTT_NAMED (1 << 0)
++
++extern const struct Command Commands[];
+
+ #endif /* MUTT_MUTT_COMMANDS_H */
+diff --git a/mutt_config.c b/mutt_config.c
+new file mode 100644
+index 000000000..292365e3a
+--- /dev/null
++++ b/mutt_config.c
+@@ -0,0 +1,5011 @@
++/**
++ * @file
++ * Definitions of config variables
++ *
++ * @authors
++ * Copyright (C) 1996-2002,2007,2010,2012-2013,2016 Michael R. Elkins <me@mutt.org>
++ * Copyright (C) 2004 g10 Code GmbH
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page mutt_config Definitions of config variables
++ *
++ * Definitions of config variables
++ */
++
++#include "config.h"
++#ifdef _MAKEDOC
++#include "doc/makedoc_defs.h"
++#else
++#include <stddef.h>
++#include <stdbool.h>
++#include "mutt/lib.h"
++#include "address/lib.h"
++#include "config/lib.h"
++#include "email/lib.h"
++#include "core/lib.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
++#include "addrbook.h"
++#include "bcache.h"
++#include "browser.h"
++#include "commands.h"
++#include "compose.h"
++#include "edit.h"
++#include "globals.h"
++#include "handler.h"
++#include "hdrline.h"
++#include "hook.h"
++#include "index.h"
++#include "init.h"
++#include "mailcap.h"
++#include "main.h"
++#include "mutt_logging.h"
++#include "mutt_mailbox.h"
++#include "mutt_menu.h"
++#include "mutt_thread.h"
++#include "muttlib.h"
++#include "mx.h"
++#include "pager.h"
++#include "pattern.h"
++#include "progress.h"
++#include "query.h"
++#include "recvattach.h"
++#include "recvcmd.h"
++#include "remailer.h"
++#include "rfc3676.h"
++#include "score.h"
++#include "send.h"
++#include "sendlib.h"
++#include "sidebar.h"
++#include "smtp.h"
++#include "sort.h"
++#include "status.h"
++#include "hcache/lib.h"
++#include "imap/lib.h"
++#include "maildir/lib.h"
++#include "ncrypt/lib.h"
++#include "nntp/lib.h"
++#include "notmuch/lib.h"
++#include "pop/lib.h"
++#endif
++
++#ifndef ISPELL
++#define ISPELL "ispell"
++#endif
++
++/* This option is deprecated */
++bool C_IgnoreLinearWhiteSpace = false;
++
++// clang-format off
++struct ConfigDef MuttVars[] = {
++ /*++*/
++
++ { "abort_backspace", DT_BOOL, &C_AbortBackspace, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, hitting backspace against an empty prompt aborts the
++ ** prompt.
++ */
++ { "abort_key", DT_STRING|DT_NOT_EMPTY, &C_AbortKeyStr, IP "\007" },
++ /*
++ ** .pp
++ ** Specifies the key that can be used to abort prompts. The format is the
++ ** same as used in "bind" commands. The default is equivalent to "\G".
++ ** Note that the specified key should not be used in other bindings, as the
++ ** abort operation has higher precedence and the binding will not have the
++ ** desired effect.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set abort_key = "<Esc>"
++ ** .te
++ ** .pp
++ ** Please note that when using <Esc> as the abort key, you may also want to
++ ** set the environment variable ESCDELAY to a low value or even 0 which will
++ ** reduce the time that ncurses waits to distinguish singular <Esc> key
++ ** presses from the start of a terminal escape sequence. The default time is
++ ** 1000 milliseconds and thus quite noticeable.
++ */
++ { "abort_noattach", DT_QUAD, &C_AbortNoattach, MUTT_NO },
++ /*
++ ** .pp
++ ** If set to \fIyes\fP, when composing messages containing the regular
++ ** expression specified by $$abort_noattach_regex and no attachments are
++ ** given, composition will be aborted. If set to \fIno\fP, composing messages
++ ** as such will never be aborted.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set abort_noattach_regex = "\\<attach(|ed|ments?)\\>"
++ ** .te
++ */
++ { "abort_noattach_regex", DT_REGEX, &C_AbortNoattachRegex, IP "\\<(attach|attached|attachments?)\\>" },
++ /*
++ ** .pp
++ ** Specifies a regular expression to match against the body of the message, to
++ ** determine if an attachment was mentioned but mistakenly forgotten. If it
++ ** matches, $$abort_noattach will be consulted to determine if message sending
++ ** will be aborted.
++ ** .pp
++ ** Like other regular expressions in NeoMutt, the search is case sensitive
++ ** if the pattern contains at least one upper case letter, and case
++ ** insensitive otherwise.
++ */
++ { "abort_nosubject", DT_QUAD, &C_AbortNosubject, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** If set to \fIyes\fP, when composing messages and no subject is given
++ ** at the subject prompt, composition will be aborted. If set to
++ ** \fIno\fP, composing messages with no subject given at the subject
++ ** prompt will never be aborted.
++ */
++ { "abort_unmodified", DT_QUAD, &C_AbortUnmodified, MUTT_YES },
++ /*
++ ** .pp
++ ** If set to \fIyes\fP, composition will automatically abort after
++ ** editing the message body if no changes are made to the file (this
++ ** check only happens after the \fIfirst\fP edit of the file). When set
++ ** to \fIno\fP, composition will never be aborted.
++ */
++ { "alias_file", DT_PATH|DT_PATH_FILE, &C_AliasFile, IP "~/.neomuttrc" },
++ /*
++ ** .pp
++ ** The default file in which to save aliases created by the
++ ** \fC$<create-alias>\fP function. Entries added to this file are
++ ** encoded in the character set specified by $$config_charset if it
++ ** is \fIset\fP or the current character set otherwise.
++ ** .pp
++ ** \fBNote:\fP NeoMutt will not automatically source this file; you must
++ ** explicitly use the "$source" command for it to be executed in case
++ ** this option points to a dedicated alias file.
++ ** .pp
++ ** The default for this option is the currently used neomuttrc file, or
++ ** "~/.neomuttrc" if no user neomuttrc was found.
++ */
++ { "alias_format", DT_STRING|DT_NOT_EMPTY, &C_AliasFormat, IP "%4n %2f %t %-10a %r" },
++ /*
++ ** .pp
++ ** Specifies the format of the data displayed for the "$alias" menu. The
++ ** following \fCprintf(3)\fP-style sequences are available:
++ ** .dl
++ ** .dt %a .dd Alias name
++ ** .dt %f .dd Flags - currently, a "d" for an alias marked for deletion
++ ** .dt %n .dd Index number
++ ** .dt %r .dd Address which alias expands to
++ ** .dt %t .dd Character which indicates if the alias is tagged for inclusion
++ ** .de
++ */
++ { "allow_8bit", DT_BOOL, &C_Allow8bit, true },
++ /*
++ ** .pp
++ ** Controls whether 8-bit data is converted to 7-bit using either Quoted-
++ ** Printable or Base64 encoding when sending mail.
++ */
++ { "allow_ansi", DT_BOOL, &C_AllowAnsi, false },
++ /*
++ ** .pp
++ ** Controls whether ANSI color codes in messages (and color tags in
++ ** rich text messages) are to be interpreted.
++ ** Messages containing these codes are rare, but if this option is \fIset\fP,
++ ** their text will be colored accordingly. Note that this may override
++ ** your color choices, and even present a security problem, since a
++ ** message could include a line like
++ ** .ts
++ ** [-- PGP output follows ...
++ ** .te
++ ** .pp
++ ** and give it the same color as your attachment color (see also
++ ** $$crypt_timestamp).
++ */
++ { "arrow_cursor", DT_BOOL|R_MENU, &C_ArrowCursor, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, an arrow ("->") will be used to indicate the current entry
++ ** in menus instead of highlighting the whole line. On slow network or modem
++ ** links this will make response faster because there is less that has to
++ ** be redrawn on the screen when moving to the next or previous entries
++ ** in the menu.
++ */
++
++ { "arrow_string", DT_STRING|DT_NOT_EMPTY, &C_ArrowString, IP "->" },
++ /*
++ ** .pp
++ ** Specifies the string of arrow_cursor when arrow_cursor enabled.
++ */
++ { "ascii_chars", DT_BOOL|R_INDEX|R_PAGER, &C_AsciiChars, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will use plain ASCII characters when displaying thread
++ ** and attachment trees, instead of the default \fIACS\fP characters.
++ */
++#ifdef USE_NNTP
++ { "ask_follow_up", DT_BOOL, &C_AskFollowUp, false },
++ /*
++ ** .pp
++ ** If set, NeoMutt will prompt you for follow-up groups before editing
++ ** the body of an outgoing message.
++ */
++ { "ask_x_comment_to", DT_BOOL, &C_AskXCommentTo, false },
++ /*
++ ** .pp
++ ** If set, NeoMutt will prompt you for x-comment-to field before editing
++ ** the body of an outgoing message.
++ */
++#endif
++ { "askbcc", DT_BOOL, &C_Askbcc, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will prompt you for blind-carbon-copy (Bcc) recipients
++ ** before editing an outgoing message.
++ */
++ { "askcc", DT_BOOL, &C_Askcc, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will prompt you for carbon-copy (Cc) recipients before
++ ** editing the body of an outgoing message.
++ */
++ { "assumed_charset", DT_STRING, &C_AssumedCharset, 0, 0, charset_validator },
++ /*
++ ** .pp
++ ** This variable is a colon-separated list of character encoding
++ ** schemes for messages without character encoding indication.
++ ** Header field values and message body content without character encoding
++ ** indication would be assumed that they are written in one of this list.
++ ** By default, all the header fields and message body without any charset
++ ** indication are assumed to be in "us-ascii".
++ ** .pp
++ ** For example, Japanese users might prefer this:
++ ** .ts
++ ** set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
++ ** .te
++ ** .pp
++ ** However, only the first content is valid for the message body.
++ */
++ { "attach_charset", DT_STRING, &C_AttachCharset, 0, 0, charset_validator },
++ /*
++ ** .pp
++ ** This variable is a colon-separated list of character encoding
++ ** schemes for text file attachments. NeoMutt uses this setting to guess
++ ** which encoding files being attached are encoded in to convert them to
++ ** a proper character set given in $$send_charset.
++ ** .pp
++ ** If \fIunset\fP, the value of $$charset will be used instead.
++ ** For example, the following configuration would work for Japanese
++ ** text handling:
++ ** .ts
++ ** set attach_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
++ ** .te
++ ** .pp
++ ** Note: for Japanese users, "iso-2022-*" must be put at the head
++ ** of the value as shown above if included.
++ */
++ { "attach_format", DT_STRING|DT_NOT_EMPTY, &C_AttachFormat, IP "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " },
++ /*
++ ** .pp
++ ** This variable describes the format of the "attachment" menu. The
++ ** following \fCprintf(3)\fP-style sequences are understood:
++ ** .dl
++ ** .dt %C .dd Charset
++ ** .dt %c .dd Requires charset conversion ("n" or "c")
++ ** .dt %D .dd Deleted flag
++ ** .dt %d .dd Description (if none, falls back to %F)
++ ** .dt %e .dd MIME content-transfer-encoding
++ ** .dt %f .dd Filename
++ ** .dt %F .dd Filename in content-disposition header (if none, falls back to %f)
++ ** .dt %I .dd Disposition ("I" for inline, "A" for attachment)
++ ** .dt %m .dd Major MIME type
++ ** .dt %M .dd MIME subtype
++ ** .dt %n .dd Attachment number
++ ** .dt %Q .dd "Q", if MIME part qualifies for attachment counting
++ ** .dt %s .dd Size (see $formatstrings-size)
++ ** .dt %T .dd Graphic tree characters
++ ** .dt %t .dd Tagged flag
++ ** .dt %u .dd Unlink (=to delete) flag
++ ** .dt %X .dd Number of qualifying MIME parts in this part and its children
++ ** (please see the "$attachments" section for possible speed effects)
++ ** .dt %>X .dd Right justify the rest of the string and pad with character "X"
++ ** .dt %|X .dd Pad to the end of the line with character "X"
++ ** .dt %*X .dd Soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** For an explanation of "soft-fill", see the $$index_format documentation.
++ */
++ { "attach_save_dir", DT_PATH|DT_PATH_DIR, &C_AttachSaveDir, IP "./" },
++ /*
++ ** .pp
++ ** The directory where attachments are saved.
++ */
++ { "attach_save_without_prompting", DT_BOOL, &C_AttachSaveWithoutPrompting, false },
++ /*
++ ** .pp
++ ** This variable, when set to true, will cause attachments to be saved to
++ ** the 'attach_save_dir' location without prompting the user for the filename.
++ ** .pp
++ */
++ { "attach_sep", DT_STRING, &C_AttachSep, IP "\n" },
++ /*
++ ** .pp
++ ** The separator to add between attachments when operating (saving,
++ ** printing, piping, etc) on a list of tagged attachments.
++ */
++ { "attach_split", DT_BOOL, &C_AttachSplit, true },
++ /*
++ ** .pp
++ ** If this variable is \fIunset\fP, when operating (saving, printing, piping,
++ ** etc) on a list of tagged attachments, NeoMutt will concatenate the
++ ** attachments and will operate on them as a single attachment. The
++ ** $$attach_sep separator is added after each attachment. When \fIset\fP,
++ ** NeoMutt will operate on the attachments one by one.
++ */
++ { "attribution", DT_STRING, &C_Attribution, IP "On %d, %n wrote:" },
++ /*
++ ** .pp
++ ** This is the string that will precede a message which has been included
++ ** in a reply. For a full listing of defined \fCprintf(3)\fP-like sequences see
++ ** the section on $$index_format.
++ */
++ { "attribution_locale", DT_STRING, &C_AttributionLocale, 0 },
++ /*
++ ** .pp
++ ** The locale used by \fCstrftime(3)\fP to format dates in the
++ ** $attribution string. Legal values are the strings your system
++ ** accepts for the locale environment variable \fC$$$LC_TIME\fP.
++ ** .pp
++ ** This variable is to allow the attribution date format to be
++ ** customized by recipient or folder using hooks. By default, NeoMutt
++ ** will use your locale environment, so there is no need to set
++ ** this except to override that default.
++ */
++ { "auto_subscribe", DT_BOOL, &C_AutoSubscribe, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt assumes the presence of a List-Post header
++ ** means the recipient is subscribed to the list. Unless the mailing list
++ ** is in the "unsubscribe" or "unlist" lists, it will be added
++ ** to the "$subscribe" list. Parsing and checking these things slows
++ ** header reading down, so this option is disabled by default.
++ */
++ { "auto_tag", DT_BOOL, &C_AutoTag, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, functions in the \fIindex\fP menu which affect a message
++ ** will be applied to all tagged messages (if there are any). When
++ ** unset, you must first use the \fC<tag-prefix>\fP function (bound to ";"
++ ** by default) to make the next function apply to all tagged messages.
++ */
++#ifdef USE_AUTOCRYPT
++ { "autocrypt", DT_BOOL, &C_Autocrypt, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, enables autocrypt, which provides
++ ** passive encryption protection with keys exchanged via headers.
++ ** See ``$autocryptdoc'' for more details.
++ ** (Autocrypt only)
++ */
++ { "autocrypt_acct_format", DT_STRING|R_MENU, &C_AutocryptAcctFormat, IP "%4n %-30a %20p %10s" },
++ /*
++ ** .pp
++ ** This variable describes the format of the ``autocrypt account'' menu.
++ ** The following \fCprintf(3)\fP-style sequences are understood
++ ** .dl
++ ** .dt %a .dd email address
++ ** .dt %k .dd gpg keyid
++ ** .dt %n .dd current entry number
++ ** .dt %p .dd prefer-encrypt flag
++ ** .dt %s .dd status flag (active/inactive)
++ ** .de
++ ** .pp
++ ** (Autocrypt only)
++ */
++ { "autocrypt_dir", DT_PATH|DT_PATH_DIR, &C_AutocryptDir, IP "~/.mutt/autocrypt" },
++ /*
++ ** .pp
++ ** This variable sets where autocrypt files are stored, including the GPG
++ ** keyring and sqlite database. See ``$autocryptdoc'' for more details.
++ ** (Autocrypt only)
++ */
++ { "autocrypt_reply", DT_BOOL, &C_AutocryptReply, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, replying to an autocrypt email automatically
++ ** enables autocrypt in the reply. You may want to unset this if you're using
++ ** the same key for autocrypt as normal web-of-trust, so that autocrypt
++ ** isn't forced on for all encrypted replies.
++ ** (Autocrypt only)
++ */
++#endif
++ { "autoedit", DT_BOOL, &C_Autoedit, false },
++ /*
++ ** .pp
++ ** When \fIset\fP along with $$edit_headers, NeoMutt will skip the initial
++ ** send-menu (prompting for subject and recipients) and allow you to
++ ** immediately begin editing the body of your
++ ** message. The send-menu may still be accessed once you have finished
++ ** editing the body of your message.
++ ** .pp
++ ** \fBNote:\fP when this option is \fIset\fP, you can't use send-hooks that depend
++ ** on the recipients when composing a new (non-reply) message, as the initial
++ ** list of recipients is empty.
++ ** .pp
++ ** Also see $$fast_reply.
++ */
++ { "beep", DT_BOOL, &C_Beep, true },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will beep when an error occurs.
++ */
++ { "beep_new", DT_BOOL, &C_BeepNew, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will beep whenever it prints a message
++ ** notifying you of new mail. This is independent of the setting of the
++ ** $$beep variable.
++ */
++ { "bounce", DT_QUAD, &C_Bounce, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether you will be asked to confirm bouncing messages.
++ ** If set to \fIyes\fP you don't get asked if you want to bounce a
++ ** message. Setting this variable to \fIno\fP is not generally useful,
++ ** and thus not recommended, because you are unable to bounce messages.
++ */
++ { "bounce_delivered", DT_BOOL, &C_BounceDelivered, true },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will include Delivered-To headers when
++ ** bouncing messages. Postfix users may wish to \fIunset\fP this variable.
++ */
++ { "braille_friendly", DT_BOOL, &C_BrailleFriendly, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will place the cursor at the beginning
++ ** of the current line in menus, even when the $$arrow_cursor variable
++ ** is \fIunset\fP, making it easier for blind persons using Braille displays to
++ ** follow these menus. The option is \fIunset\fP by default because many
++ ** visual terminals don't permit making the cursor invisible.
++ */
++ { "browser_abbreviate_mailboxes", DT_BOOL, &C_BrowserAbbreviateMailboxes, true },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will abbreviate mailbox
++ ** names in the browser mailbox list, using '~' and '='
++ ** shortcuts.
++ ** .pp
++ ** The default \fC"alpha"\fP setting of $$sort_browser uses
++ ** locale-based sorting (using \fCstrcoll(3)\fP), which ignores some
++ ** punctuation. This can lead to some situations where the order
++ ** doesn't make intuitive sense. In those cases, it may be
++ ** desirable to \fIunset\fP this variable.
++ */
++#ifdef USE_NNTP
++ { "catchup_newsgroup", DT_QUAD, &C_CatchupNewsgroup, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** If this variable is \fIset\fP, NeoMutt will mark all articles in newsgroup
++ ** as read when you quit the newsgroup (catchup newsgroup).
++ */
++#endif
++#ifdef USE_SSL
++ { "certificate_file", DT_PATH|DT_PATH_FILE, &C_CertificateFile, IP "~/.mutt_certificates" },
++ /*
++ ** .pp
++ ** This variable specifies the file where the certificates you trust
++ ** are saved. When an unknown certificate is encountered, you are asked
++ ** if you accept it or not. If you accept it, the certificate can also
++ ** be saved in this file and further connections are automatically
++ ** accepted.
++ ** .pp
++ ** You can also manually add CA certificates in this file. Any server
++ ** certificate that is signed with one of these CA certificates is
++ ** also automatically accepted.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set certificate_file=~/.neomutt/certificates
++ ** .te
++ */
++#endif
++ { "change_folder_next", DT_BOOL, &C_ChangeFolderNext, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, the \fC<change-folder>\fP function
++ ** mailbox suggestion will start at the next folder in your "$mailboxes"
++ ** list, instead of starting at the first folder in the list.
++ */
++ { "charset", DT_STRING|DT_NOT_EMPTY, &C_Charset, 0, 0, charset_validator },
++ /*
++ ** .pp
++ ** Character set your terminal uses to display and enter textual data.
++ ** It is also the fallback for $$send_charset.
++ ** .pp
++ ** Upon startup NeoMutt tries to derive this value from environment variables
++ ** such as \fC$$$LC_CTYPE\fP or \fC$$$LANG\fP.
++ ** .pp
++ ** \fBNote:\fP It should only be set in case NeoMutt isn't able to determine the
++ ** character set used correctly.
++ */
++ { "check_mbox_size", DT_BOOL, &C_CheckMboxSize, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will use file size attribute instead of
++ ** access time when checking for new mail in mbox and mmdf folders.
++ ** .pp
++ ** This variable is \fIunset\fP by default and should only be enabled when
++ ** new mail detection for these folder types is unreliable or doesn't work.
++ ** .pp
++ ** Note that enabling this variable should happen before any "$mailboxes"
++ ** directives occur in configuration files regarding mbox or mmdf folders
++ ** because NeoMutt needs to determine the initial new mail status of such a
++ ** mailbox by performing a fast mailbox scan when it is defined.
++ ** Afterwards the new mail status is tracked by file size changes.
++ */
++ { "check_new", DT_BOOL, &C_CheckNew, true },
++ /*
++ ** .pp
++ ** \fBNote:\fP this option only affects \fImaildir\fP and \fIMH\fP style
++ ** mailboxes.
++ ** .pp
++ ** When \fIset\fP, NeoMutt will check for new mail delivered while the
++ ** mailbox is open. Especially with MH mailboxes, this operation can
++ ** take quite some time since it involves scanning the directory and
++ ** checking each file to see if it has already been looked at. If
++ ** this variable is \fIunset\fP, no check for new mail is performed
++ ** while the mailbox is open.
++ */
++ { "collapse_all", DT_BOOL, &C_CollapseAll, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will collapse all threads when entering a folder.
++ */
++ { "collapse_flagged", DT_BOOL, &C_CollapseFlagged, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
++ ** flagged messages.
++ */
++ { "collapse_unread", DT_BOOL, &C_CollapseUnread, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, NeoMutt will not collapse a thread if it contains any
++ ** unread messages.
++ */
++ { "compose_format", DT_STRING|R_MENU, &C_ComposeFormat, IP "-- NeoMutt: Compose [Approx. msg size: %l Atts: %a]%>-" },
++ /*
++ ** .pp
++ ** Controls the format of the status line displayed in the "compose"
++ ** menu. This string is similar to $$status_format, but has its own
++ ** set of \fCprintf(3)\fP-like sequences:
++ ** .dl
++ ** .dt %a .dd Total number of attachments
++ ** .dt %h .dd Local hostname
++ ** .dt %l .dd Approximate size (in bytes) of the current message (see $formatstrings-size)
++ ** .dt %v .dd NeoMutt version string
++ ** .de
++ ** .pp
++ ** See the text describing the $$status_format option for more
++ ** information on how to set $$compose_format.
++ */
++ { "config_charset", DT_STRING, &C_ConfigCharset, 0, 0, charset_validator },
++ /*
++ ** .pp
++ ** When defined, NeoMutt will recode commands in rc files from this
++ ** encoding to the current character set as specified by $$charset
++ ** and aliases written to $$alias_file from the current character set.
++ ** .pp
++ ** Please note that if setting $$charset it must be done before
++ ** setting $$config_charset.
++ ** .pp
++ ** Recoding should be avoided as it may render unconvertable
++ ** characters as question marks which can lead to undesired
++ ** side effects (for example in regular expressions).
++ */
++ { "confirmappend", DT_BOOL, &C_Confirmappend, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will prompt for confirmation when appending messages to
++ ** an existing mailbox.
++ */
++ { "confirmcreate", DT_BOOL, &C_Confirmcreate, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will prompt for confirmation when saving messages to a
++ ** mailbox which does not yet exist before creating it.
++ */
++ { "connect_timeout", DT_NUMBER, &C_ConnectTimeout, 30 },
++ /*
++ ** .pp
++ ** Causes NeoMutt to timeout a network connection (for IMAP, POP or SMTP) after this
++ ** many seconds if the connection is not able to be established. A negative
++ ** value causes NeoMutt to wait indefinitely for the connection attempt to succeed.
++ */
++ { "content_type", DT_STRING, &C_ContentType, IP "text/plain" },
++ /*
++ ** .pp
++ ** Sets the default Content-Type for the body of newly composed messages.
++ */
++ { "copy", DT_QUAD, &C_Copy, MUTT_YES },
++ /*
++ ** .pp
++ ** This variable controls whether or not copies of your outgoing messages
++ ** will be saved for later references. Also see $$record,
++ ** $$save_name, $$force_name and "$fcc-hook".
++ */
++ { "crypt_autoencrypt", DT_BOOL, &C_CryptAutoencrypt, false },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to always attempt to PGP
++ ** encrypt outgoing messages. This is probably only useful in
++ ** connection to the "$send-hook" command. It can be overridden
++ ** by use of the pgp menu, when encryption is not required or
++ ** signing is requested as well. If $$smime_is_default is \fIset\fP,
++ ** then OpenSSL is used instead to create S/MIME messages and
++ ** settings can be overridden by use of the smime menu instead.
++ ** (Crypto only)
++ */
++ { "crypt_autopgp", DT_BOOL, &C_CryptAutopgp, true },
++ /*
++ ** .pp
++ ** This variable controls whether or not NeoMutt may automatically enable
++ ** PGP encryption/signing for messages. See also $$crypt_autoencrypt,
++ ** $$crypt_replyencrypt,
++ ** $$crypt_autosign, $$crypt_replysign and $$smime_is_default.
++ */
++ { "crypt_autosign", DT_BOOL, &C_CryptAutosign, false },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to always attempt to
++ ** cryptographically sign outgoing messages. This can be overridden
++ ** by use of the pgp menu, when signing is not required or
++ ** encryption is requested as well. If $$smime_is_default is \fIset\fP,
++ ** then OpenSSL is used instead to create S/MIME messages and settings can
++ ** be overridden by use of the smime menu instead of the pgp menu.
++ ** (Crypto only)
++ */
++ { "crypt_autosmime", DT_BOOL, &C_CryptAutosmime, true },
++ /*
++ ** .pp
++ ** This variable controls whether or not NeoMutt may automatically enable
++ ** S/MIME encryption/signing for messages. See also $$crypt_autoencrypt,
++ ** $$crypt_replyencrypt,
++ ** $$crypt_autosign, $$crypt_replysign and $$smime_is_default.
++ */
++ { "crypt_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_CryptChars, IP "SPsK " },
++ /*
++ ** .pp
++ ** Controls the characters used in cryptography flags.
++ ** .dl
++ ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
++ ** .dt 1 .dd S .dd The mail is signed, and the signature is successfully verified.
++ ** .dt 2 .dd P .dd The mail is PGP encrypted.
++ ** .dt 3 .dd s .dd The mail is signed.
++ ** .dt 4 .dd K .dd The mail contains a PGP public key.
++ ** .dt 5 .dd <space> .dd The mail has no crypto info.
++ ** .de
++ */
++ { "crypt_confirmhook", DT_BOOL, &C_CryptConfirmhook, true },
++ /*
++ ** .pp
++ ** If set, then you will be prompted for confirmation of keys when using
++ ** the \fIcrypt-hook\fP command. If unset, no such confirmation prompt will
++ ** be presented. This is generally considered unsafe, especially where
++ ** typos are concerned.
++ */
++ { "crypt_opportunistic_encrypt", DT_BOOL, &C_CryptOpportunisticEncrypt, false },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to automatically enable and
++ ** disable encryption, based on whether all message recipient keys
++ ** can be located by NeoMutt.
++ ** .pp
++ ** When this option is enabled, NeoMutt will enable/disable encryption
++ ** each time the TO, CC, and BCC lists are edited. If
++ ** $$edit_headers is set, NeoMutt will also do so each time the message
++ ** is edited.
++ ** .pp
++ ** While this is set, encryption can't be manually enabled/disabled.
++ ** The pgp or smime menus provide a selection to temporarily disable
++ ** this option for the current message.
++ ** .pp
++ ** If $$crypt_autoencrypt or $$crypt_replyencrypt enable encryption for
++ ** a message, this option will be disabled for that message. It can
++ ** be manually re-enabled in the pgp or smime menus.
++ ** (Crypto only)
++ */
++ { "crypt_opportunistic_encrypt_strong_keys", DT_BOOL, &C_CryptOpportunisticEncryptStrongKeys, false },
++ /*
++ ** .pp
++ ** When set, this modifies the behavior of $$crypt_opportunistic_encrypt
++ ** to only search for "strong keys", that is, keys with full validity
++ ** according to the web-of-trust algorithm. A key with marginal or no
++ ** validity will not enable opportunistic encryption.
++ ** .pp
++ ** For S/MIME, the behavior depends on the backend. Classic S/MIME will
++ ** filter for certificates with the 't'(trusted) flag in the .index file.
++ ** The GPGME backend will use the same filters as with OpenPGP, and depends
++ ** on GPGME's logic for assigning the GPGME_VALIDITY_FULL and
++ ** GPGME_VALIDITY_ULTIMATE validity flag.
++ */
++ { "crypt_protected_headers_read", DT_BOOL, &C_CryptProtectedHeadersRead, true },
++ /*
++ ** .pp
++ ** When set, NeoMutt will display protected headers ("Memory Hole") in the pager,
++ ** and will update the index and header cache with revised headers.
++ **
++ ** Protected headers are stored inside the encrypted or signed part of an
++ ** an email, to prevent disclosure or tampering.
++ ** For more information see https://github.com/autocrypt/memoryhole.
++ ** Currently NeoMutt only supports the Subject header.
++ ** .pp
++ ** Encrypted messages using protected headers often substitute the exposed
++ ** Subject header with a dummy value (see $$crypt_protected_headers_subject).
++ ** NeoMutt will update its concept of the correct subject \fBafter\fP the
++ ** message is opened, i.e. via the \fC<display-message>\fP function.
++ ** If you reply to a message before opening it, NeoMutt will end up using
++ ** the dummy Subject header, so be sure to open such a message first.
++ ** (Crypto only)
++ */
++ { "crypt_protected_headers_save", DT_BOOL, &C_CryptProtectedHeadersSave, false },
++ /*
++ ** .pp
++ ** When $$crypt_protected_headers_read is set, and a message with a
++ ** protected Subject is opened, NeoMutt will save the updated Subject
++ ** into the header cache by default. This allows searching/limiting
++ ** based on the protected Subject header if the mailbox is
++ ** re-opened, without having to re-open the message each time.
++ ** However, for mbox/mh mailbox types, or if header caching is not
++ ** set up, you would need to re-open the message each time the
++ ** mailbox was reopened before you could see or search/limit on the
++ ** protected subject again.
++ ** .pp
++ ** When this variable is set, NeoMutt additionally saves the protected
++ ** Subject back \fBin the clear-text message headers\fP. This
++ ** provides better usability, but with the tradeoff of reduced
++ ** security. The protected Subject header, which may have
++ ** previously been encrypted, is now stored in clear-text in the
++ ** message headers. Copying the message elsewhere, via NeoMutt or
++ ** external tools, could expose this previously encrypted data.
++ ** Please make sure you understand the consequences of this before
++ ** you enable this variable.
++ ** (Crypto only)
++ */
++ { "crypt_protected_headers_subject", DT_STRING, &C_CryptProtectedHeadersSubject, IP "Encrypted subject" },
++ /*
++ ** .pp
++ ** When $$crypt_protected_headers_write is set, and the message is marked
++ ** for encryption, this will be substituted into the Subject field in the
++ ** message headers.
++ **
++ ** To prevent a subject from being substituted, unset this variable, or set it
++ ** to the empty string.
++ ** (Crypto only)
++ */
++ { "crypt_protected_headers_write", DT_BOOL, &C_CryptProtectedHeadersWrite, false },
++ /*
++ ** .pp
++ ** When set, NeoMutt will generate protected headers ("Memory Hole") for
++ ** signed and encrypted emails.
++ **
++ ** Protected headers are stored inside the encrypted or signed part of an
++ ** an email, to prevent disclosure or tampering.
++ ** For more information see https://github.com/autocrypt/memoryhole.
++ **
++ ** Currently NeoMutt only supports the Subject header.
++ ** (Crypto only)
++ */
++ { "crypt_replyencrypt", DT_BOOL, &C_CryptReplyencrypt, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, automatically PGP or OpenSSL encrypt replies to messages which are
++ ** encrypted.
++ ** (Crypto only)
++ */
++ { "crypt_replysign", DT_BOOL, &C_CryptReplysign, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, automatically PGP or OpenSSL sign replies to messages which are
++ ** signed.
++ ** .pp
++ ** \fBNote:\fP this does not work on messages that are encrypted
++ ** \fIand\fP signed!
++ ** (Crypto only)
++ */
++ { "crypt_replysignencrypted", DT_BOOL, &C_CryptReplysignencrypted, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, automatically PGP or OpenSSL sign replies to messages
++ ** which are encrypted. This makes sense in combination with
++ ** $$crypt_replyencrypt, because it allows you to sign all
++ ** messages which are automatically encrypted. This works around
++ ** the problem noted in $$crypt_replysign, that NeoMutt is not able
++ ** to find out whether an encrypted message is also signed.
++ ** (Crypto only)
++ */
++ { "crypt_timestamp", DT_BOOL, &C_CryptTimestamp, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will include a time stamp in the lines surrounding
++ ** PGP or S/MIME output, so spoofing such lines is more difficult.
++ ** If you are using colors to mark these lines, and rely on these,
++ ** you may \fIunset\fP this setting.
++ ** (Crypto only)
++ */
++ { "crypt_use_gpgme", DT_BOOL, &C_CryptUseGpgme, true },
++ /*
++ ** .pp
++ ** This variable controls the use of the GPGME-enabled crypto backends.
++ ** If it is \fIset\fP and NeoMutt was built with gpgme support, the gpgme code for
++ ** S/MIME and PGP will be used instead of the classic code. Note that
++ ** you need to set this option in .neomuttrc; it won't have any effect when
++ ** used interactively.
++ ** .pp
++ ** Note that the GPGME backend does not support creating old-style inline
++ ** (traditional) PGP encrypted or signed messages (see $$pgp_autoinline).
++ */
++ { "crypt_use_pka", DT_BOOL, &C_CryptUsePka, false },
++ /*
++ ** .pp
++ ** Controls whether NeoMutt uses PKA
++ ** (see http://www.g10code.de/docs/pka-intro.de.pdf) during signature
++ ** verification (only supported by the GPGME backend).
++ */
++ { "crypt_verify_sig", DT_QUAD, &C_CryptVerifySig, MUTT_YES },
++ /*
++ ** .pp
++ ** If \fI"yes"\fP, always attempt to verify PGP or S/MIME signatures.
++ ** If \fI"ask-*"\fP, ask whether or not to verify the signature.
++ ** If \fI"no"\fP, never attempt to verify cryptographic signatures.
++ ** (Crypto only)
++ */
++ { "date_format", DT_STRING|DT_NOT_EMPTY|R_MENU, &C_DateFormat, IP "!%a, %b %d, %Y at %I:%M:%S%p %Z" },
++ /*
++ ** .pp
++ ** This variable controls the format of the date printed by the "%d"
++ ** sequence in $$index_format. This is passed to the \fCstrftime(3)\fP
++ ** function to process the date, see the man page for the proper syntax.
++ ** .pp
++ ** Unless the first character in the string is a bang ("!"), the month
++ ** and week day names are expanded according to the locale.
++ ** If the first character in the string is a
++ ** bang, the bang is discarded, and the month and week day names in the
++ ** rest of the string are expanded in the \fIC\fP locale (that is in US
++ ** English).
++ */
++ { "debug_file", DT_PATH|DT_PATH_FILE, &C_DebugFile, IP "~/.neomuttdebug" },
++ /*
++ ** .pp
++ ** Debug logging is controlled by the variables \fC$$debug_file\fP and \fC$$debug_level\fP.
++ ** \fC$$debug_file\fP specifies the root of the filename. NeoMutt will add "0" to the end.
++ ** Each time NeoMutt is run with logging enabled, the log files are rotated.
++ ** A maximum of five log files are kept, numbered 0 (most recent) to 4 (oldest).
++ ** .pp
++ ** This option can be enabled on the command line, "neomutt -l mylog"
++ ** .pp
++ ** See also: \fC$$debug_level\fP
++ */
++ { "debug_level", DT_NUMBER, &C_DebugLevel, 0, 0, level_validator },
++ /*
++ ** .pp
++ ** Debug logging is controlled by the variables \fC$$debug_file\fP and \fC$$debug_level\fP.
++ ** .pp
++ ** The debug level controls how much information is saved to the log file.
++ ** If you have a problem with NeoMutt, then enabling logging may help find the cause.
++ ** Levels 1-3 will usually provide enough information for writing a bug report.
++ ** Levels 4,5 will be extremely verbose.
++ ** .pp
++ ** Warning: Logging at high levels may save private information to the file.
++ ** .pp
++ ** This option can be enabled on the command line, "neomutt -d 2"
++ ** .pp
++ ** See also: \fC$$debug_file\fP
++ */
++ { "default_hook", DT_STRING, &C_DefaultHook, IP "~f %s !~P | (~P ~C %s)" },
++ /*
++ ** .pp
++ ** This variable controls how "$message-hook", "$reply-hook", "$send-hook",
++ ** "$send2-hook", "$save-hook", and "$fcc-hook" will
++ ** be interpreted if they are specified with only a simple regex,
++ ** instead of a matching pattern. The hooks are expanded when they are
++ ** declared, so a hook will be interpreted according to the value of this
++ ** variable at the time the hook is declared.
++ ** .pp
++ ** The default value matches
++ ** if the message is either from a user matching the regular expression
++ ** given, or if it is from you (if the from address matches
++ ** "$alternates") and is to or cc'ed to a user matching the given
++ ** regular expression.
++ */
++ { "delete", DT_QUAD, &C_Delete, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether or not messages are really deleted when closing or
++ ** synchronizing a mailbox. If set to \fIyes\fP, messages marked for
++ ** deleting will automatically be purged without prompting. If set to
++ ** \fIno\fP, messages marked for deletion will be kept in the mailbox.
++ */
++ { "delete_untag", DT_BOOL, &C_DeleteUntag, true },
++ /*
++ ** .pp
++ ** If this option is \fIset\fP, NeoMutt will untag messages when marking them
++ ** for deletion. This applies when you either explicitly delete a message,
++ ** or when you save it to another folder.
++ */
++ { "digest_collapse", DT_BOOL, &C_DigestCollapse, true },
++ /*
++ ** .pp
++ ** If this option is \fIset\fP, NeoMutt's received-attachments menu will not show the subparts of
++ ** individual messages in a multipart/digest. To see these subparts, press "v" on that menu.
++ */
++ { "display_filter", DT_STRING|DT_COMMAND|R_PAGER, &C_DisplayFilter, 0 },
++ /*
++ ** .pp
++ ** When set, specifies a command used to filter messages. When a message
++ ** is viewed it is passed as standard input to $$display_filter, and the
++ ** filtered message is read from the standard output.
++ ** .pp
++ ** When preparing the message, NeoMutt inserts some escape sequences into the
++ ** text. They are of the form: \fC<esc>]9;XXX<bel>\fP where "XXX" is a random
++ ** 64-bit number.
++ ** .pp
++ ** If these escape sequences interfere with your filter, they can be removed
++ ** using a tool like \fCansifilter\fP or \fCsed 's/^\x1b]9;[0-9]\+\x7//'\fP
++ ** .pp
++ ** If they are removed, then PGP and MIME headers will no longer be coloured.
++ ** This can be fixed by adding this to your config:
++ ** \fCcolor body magenta default '^\[-- .* --\]$$$'\fP.
++ */
++ { "dsn_notify", DT_STRING, &C_DsnNotify, 0 },
++ /*
++ ** .pp
++ ** This variable sets the request for when notification is returned. The
++ ** string consists of a comma separated list (no spaces!) of one or more
++ ** of the following: \fInever\fP, to never request notification,
++ ** \fIfailure\fP, to request notification on transmission failure,
++ ** \fIdelay\fP, to be notified of message delays, \fIsuccess\fP, to be
++ ** notified of successful transmission.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set dsn_notify="failure,delay"
++ ** .te
++ ** .pp
++ ** \fBNote:\fP when using $$sendmail for delivery, you should not enable
++ ** this unless you are either using Sendmail 8.8.x or greater or a MTA
++ ** providing a \fCsendmail(1)\fP-compatible interface supporting the \fC-N\fP option
++ ** for DSN. For SMTP delivery, DSN support is auto-detected so that it
++ ** depends on the server whether DSN will be used or not.
++ */
++ { "dsn_return", DT_STRING, &C_DsnReturn, 0 },
++ /*
++ ** .pp
++ ** This variable controls how much of your message is returned in DSN
++ ** messages. It may be set to either \fIhdrs\fP to return just the
++ ** message header, or \fIfull\fP to return the full message.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set dsn_return=hdrs
++ ** .te
++ ** .pp
++ ** \fBNote:\fP when using $$sendmail for delivery, you should not enable
++ ** this unless you are either using Sendmail 8.8.x or greater or a MTA
++ ** providing a \fCsendmail(1)\fP-compatible interface supporting the \fC-R\fP option
++ ** for DSN. For SMTP delivery, DSN support is auto-detected so that it
++ ** depends on the server whether DSN will be used or not.
++ */
++ { "duplicate_threads", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_DuplicateThreads, true, 0, pager_validator },
++ /*
++ ** .pp
++ ** This variable controls whether NeoMutt, when $$sort is set to \fIthreads\fP, threads
++ ** messages with the same Message-Id together. If it is \fIset\fP, it will indicate
++ ** that it thinks they are duplicates of each other with an equals sign
++ ** in the thread tree.
++ */
++ { "edit_headers", DT_BOOL, &C_EditHeaders, false },
++ /*
++ ** .pp
++ ** This option allows you to edit the header of your outgoing messages
++ ** along with the body of your message.
++ ** .pp
++ ** Although the compose menu may have localized header labels, the
++ ** labels passed to your editor will be standard RFC2822 headers,
++ ** (e.g. To:, Cc:, Subject:). Headers added in your editor must
++ ** also be RFC2822 headers, or one of the pseudo headers listed in
++ ** "$edit-header". NeoMutt will not understand localized header
++ ** labels, just as it would not when parsing an actual email.
++ ** .pp
++ ** \fBNote\fP that changes made to the References: and Date: headers are
++ ** ignored for interoperability reasons.
++ */
++ { "editor", DT_STRING|DT_COMMAND, &C_Editor, IP "vi" },
++ /*
++ ** .pp
++ ** This variable specifies which editor is used by NeoMutt.
++ ** It defaults to the value of the \fC$$$VISUAL\fP, or \fC$$$EDITOR\fP, environment
++ ** variable, or to the string "vi" if neither of those are set.
++ ** .pp
++ ** The \fC$$editor\fP string may contain a \fI%s\fP escape, which will be replaced by the name
++ ** of the file to be edited. If the \fI%s\fP escape does not appear in \fC$$editor\fP, a
++ ** space and the name to be edited are appended.
++ ** .pp
++ ** The resulting string is then executed by running
++ ** .ts
++ ** sh -c 'string'
++ ** .te
++ ** .pp
++ ** where \fIstring\fP is the expansion of \fC$$editor\fP described above.
++ */
++ { "empty_subject", DT_STRING, &C_EmptySubject, IP "Re: your mail" },
++ /*
++ ** .pp
++ ** This variable specifies the subject to be used when replying to an email
++ ** with an empty subject. It defaults to "Re: your mail".
++ */
++ { "encode_from", DT_BOOL, &C_EncodeFrom, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will quoted-printable encode messages when
++ ** they contain the string "From " (note the trailing space) in the beginning of a line.
++ ** This is useful to avoid the tampering certain mail delivery and transport
++ ** agents tend to do with messages (in order to prevent tools from
++ ** misinterpreting the line as a mbox message separator).
++ */
++#ifdef USE_SSL_OPENSSL
++ { "entropy_file", DT_PATH|DT_PATH_FILE, &C_EntropyFile, 0 },
++ /*
++ ** .pp
++ ** The file which includes random data that is used to initialize SSL
++ ** library functions.
++ */
++#endif
++ { "envelope_from_address", DT_ADDRESS, &C_EnvelopeFromAddress, 0 },
++ /*
++ ** .pp
++ ** Manually sets the \fIenvelope\fP sender for outgoing messages.
++ ** This value is ignored if $$use_envelope_from is \fIunset\fP.
++ */
++ { "escape", DT_STRING, &C_Escape, IP "~" },
++ /*
++ ** .pp
++ ** Escape character to use for functions in the built-in editor.
++ */
++ { "external_search_command", DT_STRING|DT_COMMAND, &C_ExternalSearchCommand, 0 },
++ /*
++ ** .pp
++ ** If set, contains the name of the external program used by "~I" patterns.
++ ** This will usually be a wrapper script around mairix, mu, or similar
++ ** indexers other than notmuch (for which there is optional special support).
++ ** .pp
++ ** Here is an example how it works. Let's assume $$external_search_command
++ ** is set to "mairix_filter", and mairix_filter is a script which
++ ** runs the old but well loved mairix indexer with the arguments
++ ** given to mairix_filter, in the "raw" mode of mairix, producing
++ ** on the standard output a list of Message-IDs, one per line.
++ ** .pp
++ ** If possible, it also filters down the results coming from mairix
++ ** such that only messages in the current folder remain. It can do
++ ** this because it gets a hidden first argument which is the path
++ ** to the folder.
++ ** (This can be the type of clean and simple script called a \fIone-liner\fP.)
++ ** .pp
++ ** Now if NeoMutt gets a limit or tag command followed by the pattern
++ ** "~I '-t s:bleeping='", mairix_filter runs mairix with the
++ ** arguments from inside the quotes (the quotes are needed because
++ ** of the space after "-t"), mairix finds all messages with
++ ** "bleeping" in the Subject plus all messages sharing threads
++ ** with these and outputs their file names, and mairix_filter
++ ** translates the file names into Message-IDs. Finally, NeoMutt
++ ** reads the Message-IDs and targets the matching messages with the
++ ** command given to it.
++ ** .pp
++ ** You, the user, still have to rewrite the mairix_filter script to
++ ** match the behavior of your indexer, but this should help users
++ ** of indexers other than notmuch to integrate them cleanly with NeoMutt.
++ */
++ { "fast_reply", DT_BOOL, &C_FastReply, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, the initial prompt for recipients and subject are skipped
++ ** when replying to messages, and the initial prompt for subject is
++ ** skipped when forwarding messages.
++ ** .pp
++ ** \fBNote:\fP this variable has no effect when the $$autoedit
++ ** variable is \fIset\fP.
++ */
++ { "fcc_attach", DT_QUAD, &C_FccAttach, MUTT_YES },
++ /*
++ ** .pp
++ ** This variable controls whether or not attachments on outgoing messages
++ ** are saved along with the main body of your message.
++ */
++ { "fcc_before_send", DT_BOOL, &C_FccBeforeSend, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, FCCs will occur before sending
++ ** the message. Before sending, the message cannot be manipulated,
++ ** so it will be stored the exact same as sent:
++ ** $$fcc_attach and $$fcc_clear will be ignored (using their default
++ ** values).
++ ** .pp
++ ** When \fIunset\fP, the default, FCCs will occur after sending.
++ ** Variables $$fcc_attach and $$fcc_clear will be respected, allowing
++ ** it to be stored without attachments or encryption/signing if
++ ** desired.
++ */
++ { "fcc_clear", DT_BOOL, &C_FccClear, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, FCCs will be stored unencrypted and
++ ** unsigned, even when the actual message is encrypted and/or
++ ** signed.
++ ** (PGP only)
++ */
++ { "flag_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_FlagChars, IP "*!DdrONon- " },
++ /*
++ ** .pp
++ ** Controls the characters used in several flags.
++ ** .dl
++ ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
++ ** .dt 1 .dd * .dd The mail is tagged.
++ ** .dt 2 .dd ! .dd The mail is flagged as important.
++ ** .dt 3 .dd D .dd The mail is marked for deletion.
++ ** .dt 4 .dd d .dd The mail has attachments marked for deletion.
++ ** .dt 5 .dd r .dd The mail has been replied to.
++ ** .dt 6 .dd O .dd The mail is Old (Unread but seen).
++ ** .dt 7 .dd N .dd The mail is New (Unread but not seen).
++ ** .dt 8 .dd o .dd The mail thread is Old (Unread but seen).
++ ** .dt 9 .dd n .dd The mail thread is New (Unread but not seen).
++ ** .dt 10 .dd - .dd The mail is read - %S expando.
++ ** .dt 11 .dd <space> .dd The mail is read - %Z expando.
++ ** .de
++ */
++ { "flag_safe", DT_BOOL, &C_FlagSafe, false },
++ /*
++ ** .pp
++ ** If set, flagged messages can't be deleted.
++ */
++ { "folder", DT_STRING|DT_MAILBOX, &C_Folder, IP "~/Mail" },
++ /*
++ ** .pp
++ ** Specifies the default location of your mailboxes. A "+" or "=" at the
++ ** beginning of a pathname will be expanded to the value of this
++ ** variable. Note that if you change this variable (from the default)
++ ** value you need to make sure that the assignment occurs \fIbefore\fP
++ ** you use "+" or "=" for any other variables since expansion takes place
++ ** when handling the "$mailboxes" command.
++ */
++ { "folder_format", DT_STRING|DT_NOT_EMPTY|R_MENU, &C_FolderFormat, IP "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %i" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the file browser display to your
++ ** personal taste. This string is similar to $$index_format, but has
++ ** its own set of \fCprintf(3)\fP-like sequences:
++ ** .dl
++ ** .dt %C .dd .dd Current file number
++ ** .dt %d .dd .dd Date/time folder was last modified
++ ** .dt %D .dd .dd Date/time folder was last modified using $$date_format.
++ ** .dt %f .dd .dd Filename ("/" is appended to directory names,
++ ** "@" to symbolic links and "*" to executable files)
++ ** .dt %F .dd .dd File permissions
++ ** .dt %g .dd .dd Group name (or numeric gid, if missing)
++ ** .dt %i .dd .dd Description of the folder
++ ** .dt %l .dd .dd Number of hard links
++ ** .dt %m .dd * .dd Number of messages in the mailbox
++ ** .dt %n .dd * .dd Number of unread messages in the mailbox
++ ** .dt %N .dd .dd "N" if mailbox has new mail, blank otherwise
++ ** .dt %s .dd .dd Size in bytes (see $formatstrings-size)
++ ** .dt %t .dd .dd "*" if the file is tagged, blank otherwise
++ ** .dt %u .dd .dd Owner name (or numeric uid, if missing)
++ ** .dt %>X .dd .dd Right justify the rest of the string and pad with character "X"
++ ** .dt %|X .dd .dd Pad to the end of the line with character "X"
++ ** .dt %*X .dd .dd Soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** For an explanation of "soft-fill", see the $$index_format documentation.
++ ** .pp
++ ** * = can be optionally printed if nonzero
++ ** .pp
++ ** %m, %n, and %N only work for monitored mailboxes.
++ ** %m requires $$mail_check_stats to be set.
++ ** %n requires $$mail_check_stats to be set (except for IMAP mailboxes).
++ */
++ { "followup_to", DT_BOOL, &C_FollowupTo, true },
++ /*
++ ** .pp
++ ** Controls whether or not the "Mail-Followup-To:" header field is
++ ** generated when sending mail. When \fIset\fP, NeoMutt will generate this
++ ** field when you are replying to a known mailing list, specified with
++ ** the "$subscribe" or "$lists" commands.
++ ** .pp
++ ** This field has two purposes. First, preventing you from
++ ** receiving duplicate copies of replies to messages which you send
++ ** to mailing lists, and second, ensuring that you do get a reply
++ ** separately for any messages sent to known lists to which you are
++ ** not subscribed.
++ ** .pp
++ ** The header will contain only the list's address
++ ** for subscribed lists, and both the list address and your own
++ ** email address for unsubscribed lists. Without this header, a
++ ** group reply to your message sent to a subscribed list will be
++ ** sent to both the list and your address, resulting in two copies
++ ** of the same email for you.
++ */
++#ifdef USE_NNTP
++ { "followup_to_poster", DT_QUAD, &C_FollowupToPoster, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** If this variable is \fIset\fP and the keyword "poster" is present in
++ ** \fIFollowup-To\fP header, follow-up to newsgroup function is not
++ ** permitted. The message will be mailed to the submitter of the
++ ** message via mail.
++ */
++#endif
++ { "force_name", DT_BOOL, &C_ForceName, false },
++ /*
++ ** .pp
++ ** This variable is similar to $$save_name, except that NeoMutt will
++ ** store a copy of your outgoing message by the username of the address
++ ** you are sending to even if that mailbox does not exist.
++ ** .pp
++ ** Also see the $$record variable.
++ */
++ { "forward_attachments", DT_QUAD, &C_ForwardAttachments, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** When forwarding inline (i.e. $$mime_forward \fIunset\fP or
++ ** answered with ``no'' and $$forward_decode \fIset\fP), attachments
++ ** which cannot be decoded in a reasonable manner will be attached
++ ** to the newly composed message if this quadoption is \fIset\fP or
++ ** answered with ``yes''.
++ */
++ { "forward_attribution_intro", DT_STRING, &C_ForwardAttributionIntro, IP "----- Forwarded message from %f -----" },
++ /*
++ ** .pp
++ ** This is the string that will precede a message which has been forwarded
++ ** in the main body of a message (when $$mime_forward is unset).
++ ** For a full listing of defined \fCprintf(3)\fP-like sequences see
++ ** the section on $$index_format. See also $$attribution_locale.
++ */
++ { "forward_attribution_trailer", DT_STRING, &C_ForwardAttributionTrailer, IP "----- End forwarded message -----" },
++ /*
++ ** .pp
++ ** This is the string that will follow a message which has been forwarded
++ ** in the main body of a message (when $$mime_forward is unset).
++ ** For a full listing of defined \fCprintf(3)\fP-like sequences see
++ ** the section on $$index_format. See also $$attribution_locale.
++ */
++ { "forward_decode", DT_BOOL, &C_ForwardDecode, true },
++ /*
++ ** .pp
++ ** Controls the decoding of complex MIME messages into \fCtext/plain\fP when
++ ** forwarding a message. The message header is also RFC2047 decoded.
++ ** This variable is only used, if $$mime_forward is \fIunset\fP,
++ ** otherwise $$mime_forward_decode is used instead.
++ */
++ { "forward_decrypt", DT_BOOL, &C_ForwardDecrypt, true },
++ /*
++ ** .pp
++ ** Controls the handling of encrypted messages when forwarding a message.
++ ** When \fIset\fP, the outer layer of encryption is stripped off. This
++ ** variable is only used if $$mime_forward is \fIset\fP and
++ ** $$mime_forward_decode is \fIunset\fP.
++ ** (PGP only)
++ */
++ { "forward_edit", DT_QUAD, &C_ForwardEdit, MUTT_YES },
++ /*
++ ** .pp
++ ** This quadoption controls whether or not the user is automatically
++ ** placed in the editor when forwarding messages. For those who always want
++ ** to forward with no modification, use a setting of "no".
++ */
++ { "forward_format", DT_STRING|DT_NOT_EMPTY, &C_ForwardFormat, IP "[%a: %s]" },
++ /*
++ ** .pp
++ ** This variable controls the default subject when forwarding a message.
++ ** It uses the same format sequences as the $$index_format variable.
++ */
++ { "forward_quote", DT_BOOL, &C_ForwardQuote, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, forwarded messages included in the main body of the
++ ** message (when $$mime_forward is \fIunset\fP) will be quoted using
++ ** $$indent_string.
++ */
++ { "forward_references", DT_BOOL, &C_ForwardReferences, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, forwarded messages set the "In-Reply-To:" and
++ ** "References:" headers in the same way as normal replies would. Hence the
++ ** forwarded message becomes part of the original thread instead of starting
++ ** a new one.
++ */
++ { "from", DT_ADDRESS, &C_From, 0 },
++ /*
++ ** .pp
++ ** When \fIset\fP, this variable contains a default "from" address. It
++ ** can be overridden using "$my_hdr" (including from a "$send-hook") and
++ ** $$reverse_name. This variable is ignored if $$use_from is \fIunset\fP.
++ ** .pp
++ ** If not specified, then it may be read from the environment variable \fC$$$EMAIL\fP.
++ */
++ { "from_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_FromChars, 0 },
++ /*
++ ** .pp
++ ** Controls the character used to prefix the %F and %L fields in the
++ ** index.
++ ** .dl
++ ** .dt \fBCharacter\fP .dd \fBDescription\fP
++ ** .dt 1 .dd Mail is written by you and has a To address, or has a known mailing list in the To address.
++ ** .dt 2 .dd Mail is written by you and has a Cc address, or has a known mailing list in the Cc address.
++ ** .dt 3 .dd Mail is written by you and has a Bcc address.
++ ** .dt 4 .dd All remaining cases.
++ ** .de
++ ** .pp
++ ** If this is empty or unset (default), the traditional long "To ",
++ ** "Cc " and "Bcc " prefixes are used. If set but too short to
++ ** include a character for a particular case, a single space will be
++ ** prepended to the field. To prevent any prefix at all from being
++ ** added in a particular case, use the special value CR (aka ^M)
++ ** for the corresponding character.
++ ** .pp
++ ** This slightly odd interface is necessitated by NeoMutt's handling of
++ ** string variables; one can't tell a variable that is unset from one
++ ** that is set to the empty string.
++ */
++ { "gecos_mask", DT_REGEX, &C_GecosMask, IP "^[^,]*" },
++ /*
++ ** .pp
++ ** A regular expression used by NeoMutt to parse the GECOS field of a password
++ ** entry when expanding the alias. The default value
++ ** will return the string up to the first "," encountered.
++ ** If the GECOS field contains a string like "lastname, firstname" then you
++ ** should set it to "\fC.*\fP".
++ ** .pp
++ ** This can be useful if you see the following behavior: you address an e-mail
++ ** to user ID "stevef" whose full name is "Steve Franklin". If NeoMutt expands
++ ** "stevef" to '"Franklin" stevef@foo.bar' then you should set the $$gecos_mask to
++ ** a regular expression that will match the whole name so NeoMutt will expand
++ ** "Franklin" to "Franklin, Steve".
++ */
++#ifdef USE_NNTP
++ { "group_index_format", DT_STRING|DT_NOT_EMPTY|R_INDEX|R_PAGER, &C_GroupIndexFormat, IP "%4C %M%N %5s %-45.45f %d" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the newsgroup browser display to
++ ** your personal taste. This string is similar to "$index_format", but
++ ** has its own set of printf()-like sequences:
++ ** .dl
++ ** .dt %C .dd Current newsgroup number
++ ** .dt %d .dd Description of newsgroup (becomes from server)
++ ** .dt %f .dd Newsgroup name
++ ** .dt %M .dd - if newsgroup not allowed for direct post (moderated for example)
++ ** .dt %N .dd N if newsgroup is new, u if unsubscribed, blank otherwise
++ ** .dt %n .dd Number of new articles in newsgroup
++ ** .dt %s .dd Number of unread articles in newsgroup
++ ** .dt %>X .dd Right justify the rest of the string and pad with character "X"
++ ** .dt %|X .dd Pad to the end of the line with character "X"
++ ** .de
++ */
++#endif
++ { "hdrs", DT_BOOL, &C_Hdrs, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, the header fields normally added by the "$my_hdr"
++ ** command are not created. This variable \fImust\fP be unset before
++ ** composing a new message or replying in order to take effect. If \fIset\fP,
++ ** the user defined header fields are added to every new message.
++ */
++ { "header", DT_BOOL, &C_Header, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, this variable causes NeoMutt to include the header
++ ** of the message you are replying to into the edit buffer.
++ ** The $$weed setting applies.
++ */
++#ifdef USE_HCACHE
++ { "header_cache", DT_PATH, &C_HeaderCache, 0 },
++ /*
++ ** .pp
++ ** This variable points to the header cache database. If the path points to
++ ** an existing directory, NeoMutt will create a dedicated header cache
++ ** database per folder. Otherwise, the path points to a regular file, which
++ ** will be created as needed and used as a shared global header cache for
++ ** all folders.
++ ** By default it is \fIunset\fP so no header caching will be used.
++ ** .pp
++ ** Header caching can greatly improve speed when opening POP, IMAP
++ ** MH or Maildir folders, see "$caching" for details.
++ */
++ { "header_cache_backend", DT_STRING, &C_HeaderCacheBackend, 0, 0, hcache_validator },
++ /*
++ ** .pp
++ ** This variable specifies the header cache backend.
++ */
++#if defined(HAVE_QDBM) || defined(HAVE_TC) || defined(HAVE_KC)
++ { "header_cache_compress", DT_BOOL, &C_HeaderCacheCompress, true },
++ /*
++ ** .pp
++ ** When NeoMutt is compiled with qdbm, tokyocabinet or kyotocabinet
++ ** as header cache backend, this option determines whether the
++ ** database will be compressed. Compression results in database
++ ** files roughly being one fifth of the usual diskspace, but the
++ ** decompression can result in a slower opening of cached folder(s)
++ ** which in general is still much faster than opening non header
++ ** cached folders.
++ */
++#endif /* HAVE_QDBM */
++#if defined(HAVE_GDBM) || defined(HAVE_BDB)
++ { "header_cache_pagesize", DT_LONG|DT_NOT_NEGATIVE, &C_HeaderCachePagesize, 16384 },
++ /*
++ ** .pp
++ ** When NeoMutt is compiled with either gdbm or bdb4 as the header cache backend,
++ ** this option changes the database page size. Too large or too small
++ ** values can waste space, memory, or CPU time. The default should be more
++ ** or less optimal for most use cases.
++ */
++#endif /* HAVE_GDBM || HAVE_BDB */
++#if defined(USE_HCACHE_COMPRESSION)
++#ifdef HAVE_ZSTD
++ { "header_cache_compress_dictionary", DT_STRING|DT_PATH, &C_HeaderCacheCompressDictionary, IP "~/.dictionary" },
++ /*
++ ** .pp
++ ** When NeoMutt is compiled with zstd, the header cache backend can be used together
++ ** with a dictionary to achieve better compression on the cache files.
++ */
++#endif /* HAVE_ZSTD */
++ { "header_cache_compress_level", DT_NUMBER|DT_NOT_NEGATIVE, &C_HeaderCacheCompressLevel, 1 },
++ /*
++ ** .pp
++ ** When NeoMutt is compiled with lz4, zstd or zlib, this option can be used
++ ** to setup the compression level.
++ */
++ { "header_cache_compress_method", DT_STRING, &C_HeaderCacheCompressMethod, 0, 0, compress_validator },
++ /*
++ ** .pp
++ ** When NeoMutt is compiled with lz4, zstd or zlib, the header cache backend
++ ** can use these compression methods for compressing the cache files.
++ ** This results in much smaller cache file sizes and may even improve speed.
++ */
++#endif /* USE_HCACHE_COMPRESSION */
++#endif /* USE_HCACHE */
++ { "header_color_partial", DT_BOOL|R_PAGER_FLOW, &C_HeaderColorPartial, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, color header regexes behave like color body regexes:
++ ** color is applied to the exact text matched by the regex. When
++ ** \fIunset\fP, color is applied to the entire header.
++ ** .pp
++ ** One use of this option might be to apply color to just the header labels.
++ ** .pp
++ ** See "$color" for more details.
++ */
++ { "help", DT_BOOL|R_REFLOW, &C_Help, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, help lines describing the bindings for the major functions
++ ** provided by each menu are displayed on the first line of the screen.
++ ** .pp
++ ** \fBNote:\fP The binding will not be displayed correctly if the
++ ** function is bound to a sequence rather than a single keystroke. Also,
++ ** the help line may not be updated if a binding is changed while NeoMutt is
++ ** running. Since this variable is primarily aimed at new users, neither
++ ** of these should present a major problem.
++ */
++ { "hidden_host", DT_BOOL, &C_HiddenHost, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will skip the host name part of $$hostname variable
++ ** when adding the domain part to addresses. This variable does not
++ ** affect the generation of Message-IDs, and it will not lead to the
++ ** cut-off of first-level domains.
++ */
++ { "hidden_tags", DT_SLIST|SLIST_SEP_COMMA, &C_HiddenTags, IP "unread,draft,flagged,passed,replied,attachment,signed,encrypted" },
++ /*
++ ** .pp
++ ** This variable specifies private notmuch/imap tags which should not be printed
++ ** on screen.
++ */
++ { "hide_limited", DT_BOOL|R_TREE|R_INDEX, &C_HideLimited, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
++ ** by limiting, in the thread tree.
++ */
++ { "hide_missing", DT_BOOL|R_TREE|R_INDEX, &C_HideMissing, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not show the presence of missing messages in the
++ ** thread tree.
++ */
++ { "hide_thread_subject", DT_BOOL|R_TREE|R_INDEX, &C_HideThreadSubject, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not show the subject of messages in the thread
++ ** tree that have the same subject as their parent or closest previously
++ ** displayed sibling.
++ */
++ { "hide_top_limited", DT_BOOL|R_TREE|R_INDEX, &C_HideTopLimited, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not show the presence of messages that are hidden
++ ** by limiting, at the top of threads in the thread tree. Note that when
++ ** $$hide_limited is \fIset\fP, this option will have no effect.
++ */
++ { "hide_top_missing", DT_BOOL|R_TREE|R_INDEX, &C_HideTopMissing, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not show the presence of missing messages at the
++ ** top of threads in the thread tree. Note that when $$hide_missing is
++ ** \fIset\fP, this option will have no effect.
++ */
++ { "history", DT_NUMBER|DT_NOT_NEGATIVE, &C_History, 10 },
++ /*
++ ** .pp
++ ** This variable controls the size (in number of strings remembered) of
++ ** the string history buffer per category. The buffer is cleared each time the
++ ** variable is set.
++ */
++ { "history_file", DT_PATH|DT_PATH_FILE, &C_HistoryFile, IP "~/.mutthistory" },
++ /*
++ ** .pp
++ ** The file in which NeoMutt will save its history.
++ ** .pp
++ ** Also see $$save_history.
++ */
++ { "history_remove_dups", DT_BOOL, &C_HistoryRemoveDups, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, all of the string history will be scanned for duplicates
++ ** when a new entry is added. Duplicate entries in the $$history_file will
++ ** also be removed when it is periodically compacted.
++ */
++ { "honor_disposition", DT_BOOL, &C_HonorDisposition, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not display attachments with a
++ ** disposition of "attachment" inline even if it could
++ ** render the part to plain text. These MIME parts can only
++ ** be viewed from the attachment menu.
++ ** .pp
++ ** If \fIunset\fP, NeoMutt will render all MIME parts it can
++ ** properly transform to plain text.
++ */
++ { "honor_followup_to", DT_QUAD, &C_HonorFollowupTo, MUTT_YES },
++ /*
++ ** .pp
++ ** This variable controls whether or not a Mail-Followup-To header is
++ ** honored when group-replying to a message.
++ */
++ { "hostname", DT_STRING, &C_Hostname, 0 },
++ /*
++ ** .pp
++ ** Specifies the fully-qualified hostname of the system NeoMutt is running on
++ ** containing the host's name and the DNS domain it belongs to. It is used
++ ** as the domain part (after "@") for local email addresses as well as
++ ** Message-Id headers.
++ ** .pp
++ ** If not specified in a config file, then NeoMutt will try to determine the hostname itself.
++ ** .pp
++ ** Optionally, NeoMutt can be compiled with a fixed domain name.
++ ** .pp
++ ** Also see $$use_domain and $$hidden_host.
++ */
++#ifdef HAVE_LIBIDN
++ { "idn_decode", DT_BOOL|R_MENU, &C_IdnDecode, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will show you international domain names decoded.
++ ** Note: You can use IDNs for addresses even if this is \fIunset\fP.
++ ** This variable only affects decoding. (IDN only)
++ */
++ { "idn_encode", DT_BOOL|R_MENU, &C_IdnEncode, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will encode international domain names using
++ ** IDN. Unset this if your SMTP server can handle newer (RFC6531)
++ ** UTF-8 encoded domains. (IDN only)
++ */
++#endif /* HAVE_LIBIDN */
++ { "ignore_list_reply_to", DT_BOOL, &C_IgnoreListReplyTo, false },
++ /*
++ ** .pp
++ ** Affects the behavior of the \fC<reply>\fP function when replying to
++ ** messages from mailing lists (as defined by the "$subscribe" or
++ ** "$lists" commands). When \fIset\fP, if the "Reply-To:" field is
++ ** set to the same value as the "To:" field, NeoMutt assumes that the
++ ** "Reply-To:" field was set by the mailing list to automate responses
++ ** to the list, and will ignore this field. To direct a response to the
++ ** mailing list when this option is \fIset\fP, use the \fC$<list-reply>\fP
++ ** function; \fC<group-reply>\fP will reply to both the sender and the
++ ** list.
++ */
++#ifdef USE_IMAP
++ { "imap_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_ImapAuthenticators, 0 },
++ /*
++ ** .pp
++ ** This is a colon-delimited list of authentication methods NeoMutt may
++ ** attempt to use to log in to an IMAP server, in the order NeoMutt should
++ ** try them. Authentication methods are either "login" or the right
++ ** side of an IMAP "AUTH=xxx" capability string, e.g. "digest-md5", "gssapi"
++ ** or "cram-md5". This option is case-insensitive. If it's
++ ** \fIunset\fP (the default) NeoMutt will try all available methods,
++ ** in order from most-secure to least-secure.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set imap_authenticators="gssapi:cram-md5:login"
++ ** .te
++ ** .pp
++ ** \fBNote:\fP NeoMutt will only fall back to other authentication methods if
++ ** the previous methods are unavailable. If a method is available but
++ ** authentication fails, NeoMutt will not connect to the IMAP server.
++ */
++ { "imap_check_subscribed", DT_BOOL, &C_ImapCheckSubscribed, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will fetch the set of subscribed folders from
++ ** your server whenever a mailbox is \fBselected\fP, and add them to the set
++ ** of mailboxes it polls for new mail just as if you had issued individual
++ ** "$mailboxes" commands.
++ */
++ { "imap_condstore", DT_BOOL, &C_ImapCondstore, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will use the CONDSTORE extension (RFC7162)
++ ** if advertised by the server. NeoMutt's current implementation is basic,
++ ** used only for initial message fetching and flag updates.
++ ** .pp
++ ** For some IMAP servers, enabling this will slightly speed up
++ ** downloading initial messages. Unfortunately, Gmail is not one
++ ** those, and displays worse performance when enabled. Your
++ ** mileage may vary.
++ */
++#ifdef USE_ZLIB
++ { "imap_deflate", DT_BOOL, &C_ImapDeflate, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, mutt will use the COMPRESS=DEFLATE extension (RFC4978)
++ ** if advertised by the server.
++ ** .pp
++ ** In general a good compression efficiency can be achieved, which
++ ** speeds up reading large mailboxes also on fairly good connections.
++ */
++#endif
++ { "imap_delim_chars", DT_STRING, &C_ImapDelimChars, IP "/." },
++ /*
++ ** .pp
++ ** This contains the list of characters which you would like to treat
++ ** as folder separators for displaying IMAP paths. In particular it
++ ** helps in using the "=" shortcut for your \fIfolder\fP variable.
++ */
++ { "imap_fetch_chunk_size", DT_LONG|DT_NOT_NEGATIVE, &C_ImapFetchChunkSize, 0 },
++ /*
++ ** .pp
++ ** When set to a value greater than 0, new headers will be downloaded
++ ** in sets of this size. If you have a very large mailbox, this might
++ ** prevent a timeout and disconnect when opening the mailbox, by sending
++ ** a FETCH per set of this size instead of a single FETCH for all new
++ ** headers.
++ */
++ { "imap_headers", DT_STRING|R_INDEX, &C_ImapHeaders, 0 },
++ /*
++ ** .pp
++ ** NeoMutt requests these header fields in addition to the default headers
++ ** ("Date:", "From:", "Sender:", "Subject:", "To:", "Cc:", "Message-Id:",
++ ** "References:", "Content-Type:", "Content-Description:", "In-Reply-To:",
++ ** "Reply-To:", "Lines:", "List-Post:", "X-Label:") from IMAP
++ ** servers before displaying the index menu. You may want to add more
++ ** headers for spam detection.
++ ** .pp
++ ** \fBNote:\fP This is a space separated list, items should be uppercase
++ ** and not contain the colon, e.g. "X-BOGOSITY X-SPAM-STATUS" for the
++ ** "X-Bogosity:" and "X-Spam-Status:" header fields.
++ */
++ { "imap_idle", DT_BOOL, &C_ImapIdle, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will attempt to use the IMAP IDLE extension
++ ** to check for new mail in the current mailbox. Some servers
++ ** (dovecot was the inspiration for this option) react badly
++ ** to NeoMutt's implementation. If your connection seems to freeze
++ ** up periodically, try unsetting this.
++ */
++ { "imap_keepalive", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapKeepalive, 300 },
++ /*
++ ** .pp
++ ** This variable specifies the maximum amount of time in seconds that NeoMutt
++ ** will wait before polling open IMAP connections, to prevent the server
++ ** from closing them before NeoMutt has finished with them. The default is
++ ** well within the RFC-specified minimum amount of time (30 minutes) before
++ ** a server is allowed to do this, but in practice the RFC does get
++ ** violated every now and then. Reduce this number if you find yourself
++ ** getting disconnected from your IMAP server due to inactivity.
++ */
++ { "imap_list_subscribed", DT_BOOL, &C_ImapListSubscribed, false },
++ /*
++ ** .pp
++ ** This variable configures whether IMAP folder browsing will look for
++ ** only subscribed folders or all folders. This can be toggled in the
++ ** IMAP browser with the \fC<toggle-subscribed>\fP function.
++ */
++ { "imap_login", DT_STRING|DT_SENSITIVE, &C_ImapLogin, 0 },
++ /*
++ ** .pp
++ ** Your login name on the IMAP server.
++ ** .pp
++ ** This variable defaults to the value of $$imap_user.
++ */
++ { "imap_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_ImapOauthRefreshCommand, 0 },
++ /*
++ ** .pp
++ ** The command to run to generate an OAUTH refresh token for
++ ** authorizing your connection to your IMAP server. This command will be
++ ** run on every connection attempt that uses the OAUTHBEARER authentication
++ ** mechanism. See "$oauth" for details.
++ */
++ { "imap_pass", DT_STRING|DT_SENSITIVE, &C_ImapPass, 0 },
++ /*
++ ** .pp
++ ** Specifies the password for your IMAP account. If \fIunset\fP, NeoMutt will
++ ** prompt you for your password when you invoke the \fC<imap-fetch-mail>\fP function
++ ** or try to open an IMAP folder.
++ ** .pp
++ ** \fBWarning\fP: you should only use this option when you are on a
++ ** fairly secure machine, because the superuser can read your neomuttrc even
++ ** if you are the only one who can read the file.
++ */
++ { "imap_passive", DT_BOOL, &C_ImapPassive, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will not open new IMAP connections to check for new
++ ** mail. NeoMutt will only check for new mail over existing IMAP
++ ** connections. This is useful if you don't want to be prompted for
++ ** user/password pairs on NeoMutt invocation, or if opening the connection
++ ** is slow.
++ */
++ { "imap_peek", DT_BOOL, &C_ImapPeek, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will avoid implicitly marking your mail as read whenever
++ ** you fetch a message from the server. This is generally a good thing,
++ ** but can make closing an IMAP folder somewhat slower. This option
++ ** exists to appease speed freaks.
++ */
++ { "imap_pipeline_depth", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapPipelineDepth, 15 },
++ /*
++ ** .pp
++ ** Controls the number of IMAP commands that may be queued up before they
++ ** are sent to the server. A deeper pipeline reduces the amount of time
++ ** NeoMutt must wait for the server, and can make IMAP servers feel much
++ ** more responsive. But not all servers correctly handle pipelined commands,
++ ** so if you have problems you might want to try setting this variable to 0.
++ ** .pp
++ ** \fBNote:\fP Changes to this variable have no effect on open connections.
++ */
++ { "imap_poll_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_ImapPollTimeout, 15 },
++ /*
++ ** .pp
++ ** This variable specifies the maximum amount of time in seconds
++ ** that NeoMutt will wait for a response when polling IMAP connections
++ ** for new mail, before timing out and closing the connection. Set
++ ** to 0 to disable timing out.
++ */
++ { "imap_qresync", DT_BOOL, &C_ImapQresync, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will use the QRESYNC extension (RFC7162)
++ ** if advertised by the server. NeoMutt's current implementation is basic,
++ ** used only for initial message fetching and flag updates.
++ ** .pp
++ ** Note: this feature is currently experimental. If you experience
++ ** strange behavior, such as duplicate or missing messages please
++ ** file a bug report to let us know.
++ */
++ { "imap_rfc5161", DT_BOOL, &C_ImapRfc5161, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will use the IMAP ENABLE extension (RFC5161) to
++ ** select CAPABILITIES. Some servers (notably Coremail System IMap Server) do
++ ** not properly respond to ENABLE commands, which might cause NeoMutt to hang.
++ ** If your connection seems to freeze at login, try unsetting this. See also
++ ** https://github.com/neomutt/neomutt/issues/1689
++ */
++ { "imap_servernoise", DT_BOOL, &C_ImapServernoise, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will display warning messages from the IMAP
++ ** server as error messages. Since these messages are often
++ ** harmless, or generated due to configuration problems on the
++ ** server which are out of the users' hands, you may wish to suppress
++ ** them at some point.
++ */
++ { "imap_user", DT_STRING|DT_SENSITIVE, &C_ImapUser, 0 },
++ /*
++ ** .pp
++ ** The name of the user whose mail you intend to access on the IMAP
++ ** server.
++ ** .pp
++ ** This variable defaults to your user name on the local machine.
++ */
++#endif
++ { "implicit_autoview", DT_BOOL, &C_ImplicitAutoview, false },
++ /*
++ ** .pp
++ ** If set to "yes", NeoMutt will look for a mailcap entry with the
++ ** "\fCcopiousoutput\fP" flag set for \fIevery\fP MIME attachment it doesn't have
++ ** an internal viewer defined for. If such an entry is found, NeoMutt will
++ ** use the viewer defined in that entry to convert the body part to text
++ ** form.
++ */
++ { "include", DT_QUAD, &C_Include, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether or not a copy of the message(s) you are replying to
++ ** is included in your reply.
++ */
++ { "include_encrypted", DT_BOOL, &C_IncludeEncrypted, false },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt includes separately encrypted attachment
++ ** contents when replying.
++ ** .pp
++ ** This variable was added to prevent accidental exposure of encrypted
++ ** contents when replying to an attacker. If a previously encrypted message
++ ** were attached by the attacker, they could trick an unwary recipient into
++ ** decrypting and including the message in their reply.
++ */
++ { "include_onlyfirst", DT_BOOL, &C_IncludeOnlyfirst, false },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt includes only the first attachment
++ ** of the message you are replying.
++ */
++ { "indent_string", DT_STRING, &C_IndentString, IP "> " },
++ /*
++ ** .pp
++ ** Specifies the string to prepend to each line of text quoted in a
++ ** message to which you are replying. You are strongly encouraged not to
++ ** change this value, as it tends to agitate the more fanatical netizens.
++ ** .pp
++ ** The value of this option is ignored if $$text_flowed is set, because
++ ** the quoting mechanism is strictly defined for format=flowed.
++ ** .pp
++ ** This option is a format string, please see the description of
++ ** $$index_format for supported \fCprintf(3)\fP-style sequences.
++ */
++ { "index_format", DT_STRING|DT_NOT_EMPTY|R_INDEX|R_PAGER, &C_IndexFormat, IP "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the message index display to
++ ** your personal taste.
++ ** .pp
++ ** "Format strings" are similar to the strings used in the C
++ ** function \fCprintf(3)\fP to format output (see the man page for more details).
++ ** For an explanation of the %? construct, see the $status_format description.
++ ** The following sequences are defined in NeoMutt:
++ ** .dl
++ ** .dt %a .dd Address of the author
++ ** .dt %A .dd Reply-to address (if present; otherwise: address of author)
++ ** .dt %b .dd Filename of the original message folder (think mailbox)
++ ** .dt %B .dd The list to which the letter was sent, or else the folder name (%b).
++ ** .dt %C .dd Current message number
++ ** .dt %c .dd Number of characters (bytes) in the body of the message (see $formatstrings-size)
++ ** .dt %cr .dd Number of characters (bytes) in the raw message, including the header (see $formatstrings-size)
++ ** .dt %D .dd Date and time of message using $date_format and local timezone
++ ** .dt %d .dd Date and time of message using $date_format and sender's timezone
++ ** .dt %e .dd Current message number in thread
++ ** .dt %E .dd Number of messages in current thread
++ ** .dt %F .dd Author name, or recipient name if the message is from you
++ ** .dt %Fp .dd Like %F, but plain. No contextual formatting is applied to recipient name
++ ** .dt %f .dd Sender (address + real name), either From: or Return-Path:
++ ** .dt %g .dd Newsgroup name (if compiled with NNTP support)
++ ** .dt %g .dd Message tags (e.g. notmuch tags/imap flags)
++ ** .dt %Gx .dd Individual message tag (e.g. notmuch tags/imap flags)
++ ** .dt %H .dd Spam attribute(s) of this message
++ ** .dt %I .dd Initials of author
++ ** .dt %i .dd Message-id of the current message
++ ** .dt %J .dd Message tags (if present, tree unfolded, and != parent's tags)
++ ** .dt %K .dd The list to which the letter was sent (if any; otherwise: empty)
++ ** .dt %L .dd If an address in the "To:" or "Cc:" header field matches an address
++ ** Defined by the users "$subscribe" command, this displays
++ ** "To <list-name>", otherwise the same as %F
++ ** .dt %l .dd number of lines in the unprocessed message (may not work with
++ ** maildir, mh, and IMAP folders)
++ ** .dt %M .dd Number of hidden messages if the thread is collapsed
++ ** .dt %m .dd Total number of message in the mailbox
++ ** .dt %N .dd Message score
++ ** .dt %n .dd Author's real name (or address if missing)
++ ** .dt %O .dd Original save folder where NeoMutt would formerly have
++ ** Stashed the message: list name or recipient name
++ ** If not sent to a list
++ ** .dt %P .dd Progress indicator for the built-in pager (how much of the file has been displayed)
++ ** .dt %q .dd Newsgroup name (if compiled with NNTP support)
++ ** .dt %R .dd Comma separated list of "Cc:" recipients
++ ** .dt %r .dd Comma separated list of "To:" recipients
++ ** .dt %S .dd Single character status of the message ("N"/"O"/"D"/"d"/"!"/"r"/"\(as")
++ ** .dt %s .dd Subject of the message
++ ** .dt %T .dd The appropriate character from the $$to_chars string
++ ** .dt %t .dd "To:" field (recipients)
++ ** .dt %u .dd User (login) name of the author
++ ** .dt %v .dd First name of the author, or the recipient if the message is from you
++ ** .dt %W .dd Name of organization of author ("Organization:" field)
++ ** .dt %x .dd "X-Comment-To:" field (if present and compiled with NNTP support)
++ ** .dt %X .dd Number of MIME attachments
++ ** (please see the "$attachments" section for possible speed effects)
++ ** .dt %Y .dd "X-Label:" field, if present, and \fI(1)\fP not at part of a thread tree,
++ ** \fI(2)\fP at the top of a thread, or \fI(3)\fP "X-Label:" is different from
++ ** Preceding message's "X-Label:"
++ ** .dt %y .dd "X-Label:" field, if present
++ ** .dt %Z .dd A three character set of message status flags.
++ ** The first character is new/read/replied flags ("n"/"o"/"r"/"O"/"N").
++ ** The second is deleted or encryption flags ("D"/"d"/"S"/"P"/"s"/"K").
++ ** The third is either tagged/flagged ("\(as"/"!"), or one of the characters
++ ** Listed in $$to_chars.
++ ** .dt %zc .dd Message crypto flags
++ ** .dt %zs .dd Message status flags
++ ** .dt %zt .dd Message tag flags
++ ** .dt %@name@ .dd insert and evaluate format-string from the matching
++ ** ``$index-format-hook'' command
++ ** .dt %{fmt} .dd the date and time of the message is converted to sender's
++ ** time zone, and "fmt" is expanded by the library function
++ ** \fCstrftime(3)\fP; a leading bang disables locales
++ ** .dt %[fmt] .dd the date and time of the message is converted to the local
++ ** time zone, and "fmt" is expanded by the library function
++ ** \fCstrftime(3)\fP; a leading bang disables locales
++ ** .dt %(fmt) .dd the local date and time when the message was received.
++ ** "fmt" is expanded by the library function \fCstrftime(3)\fP;
++ ** a leading bang disables locales
++ ** .dt %>X .dd right justify the rest of the string and pad with character "X"
++ ** .dt %|X .dd pad to the end of the line with character "X"
++ ** .dt %*X .dd soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** Date format expressions can be constructed based on relative dates. Using
++ ** the date formatting operators along with nested conditionals, the date
++ ** format can be modified based on how old a message is. See the section on
++ ** "Conditional Dates" for an explanation and examples
++ ** .pp
++ ** Note that for mbox/mmdf, ``%l'' applies to the unprocessed message, and
++ ** for maildir/mh, the value comes from the ``Lines:'' header field when
++ ** present (the meaning is normally the same). Thus the value depends on
++ ** the encodings used in the different parts of the message and has little
++ ** meaning in practice.
++ ** .pp
++ ** "Soft-fill" deserves some explanation: Normal right-justification
++ ** will print everything to the left of the "%>", displaying padding and
++ ** whatever lies to the right only if there's room. By contrast,
++ ** soft-fill gives priority to the right-hand side, guaranteeing space
++ ** to display it and showing padding only if there's still room. If
++ ** necessary, soft-fill will eat text leftwards to make room for
++ ** rightward text.
++ ** .pp
++ ** Note that these expandos are supported in
++ ** ``$save-hook'', ``$fcc-hook'' and ``$fcc-save-hook'', too.
++ */
++#ifdef USE_NNTP
++ { "inews", DT_STRING|DT_COMMAND, &C_Inews, 0 },
++ /*
++ ** .pp
++ ** If set, specifies the program and arguments used to deliver news posted
++ ** by NeoMutt. Otherwise, NeoMutt posts article using current connection to
++ ** news server. The following printf-style sequence is understood:
++ ** .dl
++ ** .dt %a .dd account url
++ ** .dt %p .dd port
++ ** .dt %P .dd port if specified
++ ** .dt %s .dd news server name
++ ** .dt %S .dd url schema
++ ** .dt %u .dd username
++ ** .de
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set inews="/usr/local/bin/inews -hS"
++ ** .te
++ */
++#endif
++ { "ispell", DT_STRING|DT_COMMAND, &C_Ispell, IP ISPELL },
++ /*
++ ** .pp
++ ** How to invoke ispell (GNU's spell-checking software).
++ */
++ { "keep_flagged", DT_BOOL, &C_KeepFlagged, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, read messages marked as flagged will not be moved
++ ** from your spool mailbox to your $$mbox mailbox, or as a result of
++ ** a "$mbox-hook" command.
++ */
++ { "mail_check", DT_NUMBER|DT_NOT_NEGATIVE, &C_MailCheck, 5 },
++ /*
++ ** .pp
++ ** This variable configures how often (in seconds) NeoMutt should look for
++ ** new mail. Also see the $$timeout variable.
++ */
++ { "mail_check_recent", DT_BOOL, &C_MailCheckRecent, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will only notify you about new mail that has been received
++ ** since the last time you opened the mailbox. When \fIunset\fP, NeoMutt will notify you
++ ** if any new mail exists in the mailbox, regardless of whether you have visited it
++ ** recently.
++ ** .pp
++ ** When \fI$$mark_old\fP is set, NeoMutt does not consider the mailbox to contain new
++ ** mail if only old messages exist.
++ */
++ { "mail_check_stats", DT_BOOL, &C_MailCheckStats, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will periodically calculate message
++ ** statistics of a mailbox while polling for new mail. It will
++ ** check for unread, flagged, and total message counts. Because
++ ** this operation is more performance intensive, it defaults to
++ ** \fIunset\fP, and has a separate option, $$mail_check_stats_interval, to
++ ** control how often to update these counts.
++ ** .pp
++ ** Message statistics can also be explicitly calculated by invoking the
++ ** \fC<check-stats>\fP function.
++ */
++ { "mail_check_stats_interval", DT_NUMBER|DT_NOT_NEGATIVE, &C_MailCheckStatsInterval, 60 },
++ /*
++ ** .pp
++ ** When $$mail_check_stats is \fIset\fP, this variable configures
++ ** how often (in seconds) NeoMutt will update message counts.
++ */
++ { "mailcap_path", DT_SLIST|SLIST_SEP_COLON, &C_MailcapPath, IP "~/.mailcap:" PKGDATADIR "/mailcap:" SYSCONFDIR "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap" },
++ /*
++ ** .pp
++ ** This variable specifies which files to consult when attempting to
++ ** display MIME bodies not directly supported by NeoMutt. The default value
++ ** is generated during startup: see the ``$mailcap'' section of the manual.
++ ** .pp
++ ** $$mailcap_path is overridden by the environment variable \fC$$$MAILCAPS\fP.
++ ** .pp
++ ** The default search path is from RFC1524.
++ */
++ { "mailcap_sanitize", DT_BOOL, &C_MailcapSanitize, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will restrict possible characters in mailcap % expandos
++ ** to a well-defined set of safe characters. This is the safe setting,
++ ** but we are not sure it doesn't break some more advanced MIME stuff.
++ ** .pp
++ ** \fBDON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
++ ** DOING!\fP
++ */
++ { "maildir_check_cur", DT_BOOL, &C_MaildirCheckCur, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will poll both the new and cur directories of
++ ** a maildir folder for new messages. This might be useful if other
++ ** programs interacting with the folder (e.g. dovecot) are moving new
++ ** messages to the cur directory. Note that setting this option may
++ ** slow down polling for new messages in large folders, since NeoMutt has
++ ** to scan all cur messages.
++ */
++#ifdef USE_HCACHE
++ { "maildir_header_cache_verify", DT_BOOL, &C_MaildirHeaderCacheVerify, true },
++ /*
++ ** .pp
++ ** Check for Maildir unaware programs other than NeoMutt having modified maildir
++ ** files when the header cache is in use. This incurs one \fCstat(2)\fP per
++ ** message every time the folder is opened (which can be very slow for NFS
++ ** folders).
++ */
++#endif
++ { "maildir_trash", DT_BOOL, &C_MaildirTrash, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, messages marked as deleted will be saved with the maildir
++ ** trashed flag instead of unlinked. \fBNote:\fP this only applies
++ ** to maildir-style mailboxes. Setting it will have no effect on other
++ ** mailbox types.
++ */
++ { "mark_macro_prefix", DT_STRING, &C_MarkMacroPrefix, IP "'" },
++ /*
++ ** .pp
++ ** Prefix for macros created using mark-message. A new macro
++ ** automatically generated with \fI<mark-message>a\fP will be composed
++ ** from this prefix and the letter \fIa\fP.
++ */
++ { "mark_old", DT_BOOL|R_INDEX|R_PAGER, &C_MarkOld, true },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt marks \fInew\fP \fBunread\fP
++ ** messages as \fIold\fP if you exit a mailbox without reading them.
++ ** With this option \fIset\fP, the next time you start NeoMutt, the messages
++ ** will show up with an "O" next to them in the index menu,
++ ** indicating that they are old.
++ */
++ { "markers", DT_BOOL|R_PAGER_FLOW, &C_Markers, true },
++ /*
++ ** .pp
++ ** Controls the display of wrapped lines in the internal pager. If set, a
++ ** "+" marker is displayed at the beginning of wrapped lines.
++ ** .pp
++ ** Also see the $$smart_wrap variable.
++ */
++ { "mask", DT_REGEX|DT_REGEX_MATCH_CASE|DT_REGEX_ALLOW_NOT|DT_REGEX_NOSUB, &C_Mask, IP "!^\\.[^.]" },
++ /*
++ ** .pp
++ ** A regular expression used in the file browser, optionally preceded by
++ ** the \fInot\fP operator "!". Only files whose names match this mask
++ ** will be shown. The match is always case-sensitive.
++ */
++ { "mbox", DT_STRING|DT_MAILBOX|R_INDEX|R_PAGER, &C_Mbox, IP "~/mbox" },
++ /*
++ ** .pp
++ ** This specifies the folder into which read mail in your $$spoolfile
++ ** folder will be appended.
++ ** .pp
++ ** Also see the $$move variable.
++ */
++ { "mbox_type", DT_ENUM, &C_MboxType, MUTT_MBOX, IP &MagicDef },
++ /*
++ ** .pp
++ ** The default mailbox type used when creating new folders. May be any of
++ ** "mbox", "MMDF", "MH" or "Maildir".
++ ** .pp
++ ** This can also be set using the \fC-m\fP command-line option.
++ */
++ { "menu_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_MenuContext, 0 },
++ /*
++ ** .pp
++ ** This variable controls the number of lines of context that are given
++ ** when scrolling through menus. (Similar to $$pager_context.)
++ */
++ { "menu_move_off", DT_BOOL, &C_MenuMoveOff, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, the bottom entry of menus will never scroll up past
++ ** the bottom of the screen, unless there are less entries than lines.
++ ** When \fIset\fP, the bottom entry may move off the bottom.
++ */
++ { "menu_scroll", DT_BOOL, &C_MenuScroll, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, menus will be scrolled up or down one line when you
++ ** attempt to move across a screen boundary. If \fIunset\fP, the screen
++ ** is cleared and the next or previous page of the menu is displayed
++ ** (useful for slow links to avoid many redraws).
++ */
++#if defined(USE_IMAP) || defined(USE_POP)
++ { "message_cache_clean", DT_BOOL, &C_MessageCacheClean, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will clean out obsolete entries from the message cache when
++ ** the mailbox is synchronized. You probably only want to set it
++ ** every once in a while, since it can be a little slow
++ ** (especially for large folders).
++ */
++ { "message_cachedir", DT_PATH|DT_PATH_DIR, &C_MessageCachedir, 0 },
++ /*
++ ** .pp
++ ** Set this to a directory and NeoMutt will cache copies of messages from
++ ** your IMAP and POP servers here. You are free to remove entries at any
++ ** time.
++ ** .pp
++ ** When setting this variable to a directory, NeoMutt needs to fetch every
++ ** remote message only once and can perform regular expression searches
++ ** as fast as for local folders.
++ ** .pp
++ ** Also see the $$message_cache_clean variable.
++ */
++#endif
++ { "message_format", DT_STRING|DT_NOT_EMPTY, &C_MessageFormat, IP "%s" },
++ /*
++ ** .pp
++ ** This is the string displayed in the "attachment" menu for
++ ** attachments of type \fCmessage/rfc822\fP. For a full listing of defined
++ ** \fCprintf(3)\fP-like sequences see the section on $$index_format.
++ */
++ { "meta_key", DT_BOOL, &C_MetaKey, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, forces NeoMutt to interpret keystrokes with the high bit (bit 8)
++ ** set as if the user had pressed the Esc key and whatever key remains
++ ** after having the high bit removed. For example, if the key pressed
++ ** has an ASCII value of \fC0xf8\fP, then this is treated as if the user had
++ ** pressed Esc then "x". This is because the result of removing the
++ ** high bit from \fC0xf8\fP is \fC0x78\fP, which is the ASCII character
++ ** "x".
++ */
++ { "metoo", DT_BOOL, &C_Metoo, false },
++ /*
++ ** .pp
++ ** If \fIunset\fP, NeoMutt will remove your address (see the "$alternates"
++ ** command) from the list of recipients when replying to a message.
++ */
++ { "mh_purge", DT_BOOL, &C_MhPurge, false },
++ /*
++ ** .pp
++ ** When \fIunset\fP, NeoMutt will mimic mh's behavior and rename deleted messages
++ ** to \fI,<old file name>\fP in mh folders instead of really deleting
++ ** them. This leaves the message on disk but makes programs reading the folder
++ ** ignore it. If the variable is \fIset\fP, the message files will simply be
++ ** deleted.
++ ** .pp
++ ** This option is similar to $$maildir_trash for Maildir folders.
++ */
++ { "mh_seq_flagged", DT_STRING, &C_MhSeqFlagged, IP "flagged" },
++ /*
++ ** .pp
++ ** The name of the MH sequence used for flagged messages.
++ */
++ { "mh_seq_replied", DT_STRING, &C_MhSeqReplied, IP "replied" },
++ /*
++ ** .pp
++ ** The name of the MH sequence used to tag replied messages.
++ */
++ { "mh_seq_unseen", DT_STRING, &C_MhSeqUnseen, IP "unseen" },
++ /*
++ ** .pp
++ ** The name of the MH sequence used for unseen messages.
++ */
++ { "mime_forward", DT_QUAD, &C_MimeForward, MUTT_NO },
++ /*
++ ** .pp
++ ** When \fIset\fP, the message you are forwarding will be attached as a
++ ** separate \fCmessage/rfc822\fP MIME part instead of included in the main body of the
++ ** message. This is useful for forwarding MIME messages so the receiver
++ ** can properly view the message as it was delivered to you. If you like
++ ** to switch between MIME and not MIME from mail to mail, set this
++ ** variable to "ask-no" or "ask-yes".
++ ** .pp
++ ** Also see $$forward_decode and $$mime_forward_decode.
++ */
++ { "mime_forward_decode", DT_BOOL, &C_MimeForwardDecode, false },
++ /*
++ ** .pp
++ ** Controls the decoding of complex MIME messages into \fCtext/plain\fP when
++ ** forwarding a message while $$mime_forward is \fIset\fP. Otherwise
++ ** $$forward_decode is used instead.
++ */
++ { "mime_forward_rest", DT_QUAD, &C_MimeForwardRest, MUTT_YES },
++ /*
++ ** .pp
++ ** When forwarding multiple attachments of a MIME message from the attachment
++ ** menu, attachments which can't be decoded in a reasonable manner will
++ ** be attached to the newly composed message if this option is \fIset\fP.
++ */
++#ifdef USE_NNTP
++ { "mime_subject", DT_BOOL, &C_MimeSubject, true },
++ /*
++ ** .pp
++ ** If \fIunset\fP, 8-bit "subject:" line in article header will not be
++ ** encoded according to RFC2047 to base64. This is useful when message
++ ** is Usenet article, because MIME for news is nonstandard feature.
++ */
++#endif
++ { "mime_type_query_command", DT_STRING|DT_COMMAND, &C_MimeTypeQueryCommand, 0 },
++ /*
++ ** .pp
++ ** This specifies a command to run, to determine the mime type of a
++ ** new attachment when composing a message. Unless
++ ** $$mime_type_query_first is set, this will only be run if the
++ ** attachment's extension is not found in the mime.types file.
++ ** .pp
++ ** The string may contain a "%s", which will be substituted with the
++ ** attachment filename. NeoMutt will add quotes around the string substituted
++ ** for "%s" automatically according to shell quoting rules, so you should
++ ** avoid adding your own. If no "%s" is found in the string, NeoMutt will
++ ** append the attachment filename to the end of the string.
++ ** .pp
++ ** The command should output a single line containing the
++ ** attachment's mime type.
++ ** .pp
++ ** Suggested values are "xdg-mime query filetype" or
++ ** "file -bi".
++ */
++ { "mime_type_query_first", DT_BOOL, &C_MimeTypeQueryFirst, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, the $$mime_type_query_command will be run before the
++ ** mime.types lookup.
++ */
++#ifdef MIXMASTER
++ { "mix_entry_format", DT_STRING|DT_NOT_EMPTY, &C_MixEntryFormat, IP "%4n %c %-16s %a" },
++ /*
++ ** .pp
++ ** This variable describes the format of a remailer line on the mixmaster
++ ** chain selection screen. The following \fCprintf(3)\fP-like sequences are
++ ** supported:
++ ** .dl
++ ** .dt %a .dd The remailer's e-mail address
++ ** .dt %c .dd Remailer capabilities
++ ** .dt %n .dd The running number on the menu
++ ** .dt %s .dd The remailer's short name
++ ** .de
++ */
++ { "mixmaster", DT_STRING|DT_COMMAND, &C_Mixmaster, IP MIXMASTER },
++ /*
++ ** .pp
++ ** This variable contains the path to the Mixmaster binary on your
++ ** system. It is used with various sets of parameters to gather the
++ ** list of known remailers, and to finally send a message through the
++ ** mixmaster chain.
++ */
++#endif
++ { "move", DT_QUAD, &C_Move, MUTT_NO },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt will move read messages
++ ** from your spool mailbox to your $$mbox mailbox, or as a result of
++ ** a "$mbox-hook" command.
++ */
++ { "narrow_tree", DT_BOOL|R_TREE|R_INDEX, &C_NarrowTree, false },
++ /*
++ ** .pp
++ ** This variable, when \fIset\fP, makes the thread tree narrower, allowing
++ ** deeper threads to fit on the screen.
++ */
++#ifdef USE_SOCKET
++ { "net_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_NetInc, 10 },
++ /*
++ ** .pp
++ ** Operations that expect to transfer a large amount of data over the
++ ** network will update their progress every $$net_inc kilobytes.
++ ** If set to 0, no progress messages will be displayed.
++ ** .pp
++ ** See also $$read_inc, $$write_inc and $$net_inc.
++ */
++#endif
++ { "new_mail_command", DT_STRING|DT_COMMAND, &C_NewMailCommand, 0 },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will call this command after a new message is received.
++ ** See the $$status_format documentation for the values that can be formatted
++ ** into this command.
++ */
++#ifdef USE_NNTP
++ { "news_cache_dir", DT_PATH|DT_PATH_DIR, &C_NewsCacheDir, IP "~/.neomutt" },
++ /*
++ ** .pp
++ ** This variable pointing to directory where NeoMutt will save cached news
++ ** articles and headers in. If \fIunset\fP, articles and headers will not be
++ ** saved at all and will be reloaded from the server each time.
++ */
++ { "news_server", DT_STRING, &C_NewsServer, 0 },
++ /*
++ ** .pp
++ ** This variable specifies domain name or address of NNTP server.
++ ** .pp
++ ** You can also specify username and an alternative port for each news server,
++ ** e.g. \fC[[s]news://][username[:password]@]server[:port]\fP
++ ** .pp
++ ** This option can also be set using the command line option "-g", the
++ ** environment variable \fC$$$NNTPSERVER\fP, or putting the server name in the
++ ** file "/etc/nntpserver".
++ */
++ { "newsgroups_charset", DT_STRING, &C_NewsgroupsCharset, IP "utf-8", 0, charset_validator },
++ /*
++ ** .pp
++ ** Character set of newsgroups descriptions.
++ */
++ { "newsrc", DT_PATH|DT_PATH_FILE, &C_Newsrc, IP "~/.newsrc" },
++ /*
++ ** .pp
++ ** The file, containing info about subscribed newsgroups - names and
++ ** indexes of read articles. The following printf-style sequence
++ ** is understood:
++ ** .dl
++ ** .dt \fBExpando\fP .dd \fBDescription\fP .dd \fBExample\fP
++ ** .dt %a .dd Account url .dd \fCnews:news.gmane.org\fP
++ ** .dt %p .dd Port .dd \fC119\fP
++ ** .dt %P .dd Port if specified .dd \fC10119\fP
++ ** .dt %s .dd News server name .dd \fCnews.gmane.org\fP
++ ** .dt %S .dd Url schema .dd \fCnews\fP
++ ** .dt %u .dd Username .dd \fCusername\fP
++ ** .de
++ */
++#endif
++#ifdef USE_NOTMUCH
++ { "nm_db_limit", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmDbLimit, 0 },
++ /*
++ ** .pp
++ ** This variable specifies the default limit used in notmuch queries.
++ */
++ { "nm_default_url", DT_STRING, &C_NmDefaultUrl, 0 },
++ /*
++ ** .pp
++ ** This variable specifies the default Notmuch database in format
++ ** notmuch://<absolute path>.
++ */
++ { "nm_exclude_tags", DT_STRING, &C_NmExcludeTags, 0 },
++ /*
++ ** .pp
++ ** The messages tagged with these tags are excluded and not loaded
++ ** from notmuch DB to NeoMutt unless specified explicitly.
++ */
++ { "nm_flagged_tag", DT_STRING, &C_NmFlaggedTag, IP "flagged" },
++ /*
++ ** .pp
++ ** This variable specifies notmuch tag which is used for flagged messages. The
++ ** variable is used to count flagged messages in DB and set the flagged flag when
++ ** modifying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
++ */
++ { "nm_open_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmOpenTimeout, 5 },
++ /*
++ ** .pp
++ ** This variable specifies the timeout for database open in seconds.
++ */
++ { "nm_query_type", DT_STRING, &C_NmQueryType, IP "messages" },
++ /*
++ ** .pp
++ ** This variable specifies the default query type (threads or messages) used in notmuch queries.
++ */
++ { "nm_query_window_current_position", DT_NUMBER, &C_NmQueryWindowCurrentPosition, 0 },
++ /*
++ ** .pp
++ ** This variable contains the position of the current search for window based vfolder.
++ */
++ { "nm_query_window_current_search", DT_STRING, &C_NmQueryWindowCurrentSearch, 0 },
++ /*
++ ** .pp
++ ** This variable contains the currently setup notmuch search for window based vfolder.
++ */
++ { "nm_query_window_duration", DT_NUMBER|DT_NOT_NEGATIVE, &C_NmQueryWindowDuration, 0 },
++ /*
++ ** .pp
++ ** This variable sets the time duration of a windowed notmuch query.
++ ** Accepted values all non negative integers. A value of 0 disables the feature.
++ */
++ { "nm_query_window_timebase", DT_STRING, &C_NmQueryWindowTimebase, IP "week" },
++ /*
++ ** .pp
++ ** This variable sets the time base of a windowed notmuch query.
++ ** Accepted values are 'minute', 'hour', 'day', 'week', 'month', 'year'
++ */
++ { "nm_record", DT_BOOL, &C_NmRecord, false },
++ /*
++ ** .pp
++ ** This variable specifies if the NeoMutt record should indexed by notmuch.
++ */
++ { "nm_record_tags", DT_STRING, &C_NmRecordTags, 0 },
++ /*
++ ** .pp
++ ** This variable specifies the default tags applied to messages stored to the NeoMutt record.
++ ** When set to 0 this variable disable the window feature.
++ */
++ { "nm_replied_tag", DT_STRING, &C_NmRepliedTag, IP "replied" },
++ /*
++ ** .pp
++ ** This variable specifies notmuch tag which is used for replied messages. The
++ ** variable is used to set the replied flag when modifiying tags. All other NeoMutt
++ ** commands use standard (e.g. maildir) flags.
++ */
++ { "nm_unread_tag", DT_STRING, &C_NmUnreadTag, IP "unread" },
++ /*
++ ** .pp
++ ** This variable specifies notmuch tag which is used for unread messages. The
++ ** variable is used to count unread messages in DB and set the unread flag when
++ ** modifiying tags. All other NeoMutt commands use standard (e.g. maildir) flags.
++ */
++#endif
++#ifdef USE_NNTP
++ { "nntp_authenticators", DT_STRING, &C_NntpAuthenticators, 0 },
++ /*
++ ** .pp
++ ** This is a colon-delimited list of authentication methods NeoMutt may
++ ** attempt to use to log in to a news server, in the order NeoMutt should
++ ** try them. Authentication methods are either "user" or any
++ ** SASL mechanism, e.g. "digest-md5", "gssapi" or "cram-md5".
++ ** This option is case-insensitive. If it's \fIunset\fP (the default)
++ ** NeoMutt will try all available methods, in order from most-secure to
++ ** least-secure.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set nntp_authenticators="digest-md5:user"
++ ** .te
++ ** .pp
++ ** \fBNote:\fP NeoMutt will only fall back to other authentication methods if
++ ** the previous methods are unavailable. If a method is available but
++ ** authentication fails, NeoMutt will not connect to the IMAP server.
++ */
++ { "nntp_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_NntpContext, 1000 },
++ /*
++ ** .pp
++ ** This variable defines number of articles which will be in index when
++ ** newsgroup entered. If active newsgroup have more articles than this
++ ** number, oldest articles will be ignored. Also controls how many
++ ** articles headers will be saved in cache when you quit newsgroup.
++ */
++ { "nntp_listgroup", DT_BOOL, &C_NntpListgroup, true },
++ /*
++ ** .pp
++ ** This variable controls whether or not existence of each article is
++ ** checked when newsgroup is entered.
++ */
++ { "nntp_load_description", DT_BOOL, &C_NntpLoadDescription, true },
++ /*
++ ** .pp
++ ** This variable controls whether or not descriptions for each newsgroup
++ ** must be loaded when newsgroup is added to list (first time list
++ ** loading or new newsgroup adding).
++ */
++ { "nntp_pass", DT_STRING|DT_SENSITIVE, &C_NntpPass, 0 },
++ /*
++ ** .pp
++ ** Your password for NNTP account.
++ */
++ { "nntp_poll", DT_NUMBER|DT_NOT_NEGATIVE, &C_NntpPoll, 60 },
++ /*
++ ** .pp
++ ** The time in seconds until any operations on newsgroup except post new
++ ** article will cause recheck for new news. If set to 0, NeoMutt will
++ ** recheck newsgroup on each operation in index (stepping, read article,
++ ** etc.).
++ */
++ { "nntp_user", DT_STRING|DT_SENSITIVE, &C_NntpUser, 0 },
++ /*
++ ** .pp
++ ** Your login name on the NNTP server. If \fIunset\fP and NNTP server requires
++ ** authentication, NeoMutt will prompt you for your account name when you
++ ** connect to news server.
++ */
++#endif
++ { "pager", DT_STRING|DT_COMMAND, &C_Pager, IP "builtin" },
++ /*
++ ** .pp
++ ** This variable specifies which pager you would like to use to view
++ ** messages. The value "builtin" means to use the built-in pager, otherwise this
++ ** variable should specify the pathname of the external pager you would
++ ** like to use.
++ ** .pp
++ ** Using an external pager may have some disadvantages: Additional
++ ** keystrokes are necessary because you can't call NeoMutt functions
++ ** directly from the pager, and screen resizes cause lines longer than
++ ** the screen width to be badly formatted in the help menu.
++ */
++ { "pager_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_PagerContext, 0 },
++ /*
++ ** .pp
++ ** This variable controls the number of lines of context that are given
++ ** when displaying the next or previous page in the internal pager. By
++ ** default, NeoMutt will display the line after the last one on the screen
++ ** at the top of the next page (0 lines of context).
++ ** .pp
++ ** This variable also specifies the amount of context given for search
++ ** results. If positive, this many lines will be given before a match,
++ ** if 0, the match will be top-aligned.
++ */
++ { "pager_format", DT_STRING|R_PAGER, &C_PagerFormat, IP "-%Z- %C/%m: %-20.20n %s%* -- (%P)" },
++ /*
++ ** .pp
++ ** This variable controls the format of the one-line message "status"
++ ** displayed before each message in either the internal or an external
++ ** pager. The valid sequences are listed in the $$index_format
++ ** section.
++ */
++ { "pager_index_lines", DT_NUMBER|DT_NOT_NEGATIVE|R_PAGER|R_REFLOW, &C_PagerIndexLines, 0 },
++ /*
++ ** .pp
++ ** Determines the number of lines of a mini-index which is shown when in
++ ** the pager. The current message, unless near the top or bottom of the
++ ** folder, will be roughly one third of the way down this mini-index,
++ ** giving the reader the context of a few messages before and after the
++ ** message. This is useful, for example, to determine how many messages
++ ** remain to be read in the current thread. One of the lines is reserved
++ ** for the status bar from the index, so a setting of 6
++ ** will only show 5 lines of the actual index. A value of 0 results in
++ ** no index being shown. If the number of messages in the current folder
++ ** is less than $$pager_index_lines, then the index will only use as
++ ** many lines as it needs.
++ */
++ { "pager_stop", DT_BOOL, &C_PagerStop, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, the internal-pager will \fBnot\fP move to the next message
++ ** when you are at the end of a message and invoke the \fC<next-page>\fP
++ ** function.
++ */
++ { "pgp_auto_decode", DT_BOOL, &C_PgpAutoDecode, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will automatically attempt to decrypt traditional PGP
++ ** messages whenever the user performs an operation which ordinarily would
++ ** result in the contents of the message being operated on. For example,
++ ** if the user displays a pgp-traditional message which has not been manually
++ ** checked with the \fC$<check-traditional-pgp>\fP function, NeoMutt will automatically
++ ** check the message for traditional pgp.
++ */
++ { "pgp_autoinline", DT_BOOL, &C_PgpAutoinline, false },
++ /*
++ ** .pp
++ ** This option controls whether NeoMutt generates old-style inline
++ ** (traditional) PGP encrypted or signed messages under certain
++ ** circumstances. This can be overridden by use of the pgp menu,
++ ** when inline is not required. The GPGME backend does not support
++ ** this option.
++ ** .pp
++ ** Note that NeoMutt might automatically use PGP/MIME for messages
++ ** which consist of more than a single MIME part. NeoMutt can be
++ ** configured to ask before sending PGP/MIME messages when inline
++ ** (traditional) would not work.
++ ** .pp
++ ** Also see the $$pgp_mime_auto variable.
++ ** .pp
++ ** Also note that using the old-style PGP message format is \fBstrongly\fP
++ ** \fBdeprecated\fP.
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_check_exit", DT_BOOL, &C_PgpCheckExit, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will check the exit code of the PGP subprocess when
++ ** signing or encrypting. A non-zero exit code means that the
++ ** subprocess failed.
++ ** (PGP only)
++ */
++ { "pgp_check_gpg_decrypt_status_fd", DT_BOOL, &C_PgpCheckGpgDecryptStatusFd, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will check the status file descriptor output
++ ** of $$pgp_decrypt_command and $$pgp_decode_command for GnuPG status codes
++ ** indicating successful decryption. This will check for the presence of
++ ** DECRYPTION_OKAY, absence of DECRYPTION_FAILED, and that all
++ ** PLAINTEXT occurs between the BEGIN_DECRYPTION and END_DECRYPTION
++ ** status codes.
++ ** .pp
++ ** If \fIunset\fP, NeoMutt will instead match the status fd output
++ ** against $$pgp_decryption_okay.
++ ** (PGP only)
++ */
++ { "pgp_clearsign_command", DT_STRING|DT_COMMAND, &C_PgpClearsignCommand, 0 },
++ /*
++ ** .pp
++ ** This format is used to create an old-style "clearsigned" PGP
++ ** message. Note that the use of this format is \fBstrongly\fP
++ ** \fBdeprecated\fP.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** Note that in this case, %r expands to the search string, which is a list of
++ ** one or more quoted values such as email address, name, or keyid.
++ ** (PGP only)
++ */
++ { "pgp_decode_command", DT_STRING|DT_COMMAND, &C_PgpDecodeCommand, 0 },
++ /*
++ ** .pp
++ ** This format strings specifies a command which is used to decode
++ ** application/pgp attachments.
++ ** .pp
++ ** The PGP command formats have their own set of \fCprintf(3)\fP-like sequences:
++ ** .dl
++ ** .dt %p .dd Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
++ ** string otherwise. Note: This may be used with a %? construct.
++ ** .dt %f .dd Expands to the name of a file containing a message.
++ ** .dt %s .dd Expands to the name of a file containing the signature part
++ ** . of a \fCmultipart/signed\fP attachment when verifying it.
++ ** .dt %a .dd The value of $$pgp_sign_as if set, otherwise the value
++ ** of $$pgp_default_key.
++ ** .dt %r .dd One or more key IDs (or fingerprints if available).
++ ** .de
++ ** .pp
++ ** For examples on how to configure these formats for the various versions
++ ** of PGP which are floating around, see the pgp and gpg sample configuration files in
++ ** the \fCsamples/\fP subdirectory which has been installed on your system
++ ** alongside the documentation.
++ ** (PGP only)
++ */
++ { "pgp_decrypt_command", DT_STRING|DT_COMMAND, &C_PgpDecryptCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to decrypt a PGP encrypted message.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ ** .pp
++ ** Note: When decrypting messages using \fCgpg\fP, a pinentry program needs to
++ ** be invoked unless the password is cached within \fCgpg-agent\fP.
++ ** Currently, the \fCpinentry-tty\fP program (usually distributed with
++ ** \fCgpg\fP) isn't suitable for being invoked by NeoMutt. You are encouraged
++ ** to use a different pinentry-program when running NeoMutt in order to avoid
++ ** problems.
++ ** .pp
++ ** See also: https://github.com/neomutt/neomutt/issues/1014
++ */
++ { "pgp_decryption_okay", DT_REGEX, &C_PgpDecryptionOkay, 0 },
++ /*
++ ** .pp
++ ** If you assign text to this variable, then an encrypted PGP
++ ** message is only considered successfully decrypted if the output
++ ** from $$pgp_decrypt_command contains the text. This is used to
++ ** protect against a spoofed encrypted message, with multipart/encrypted
++ ** headers but containing a block that is not actually encrypted.
++ ** (e.g. simply signed and ascii armored text).
++ ** .pp
++ ** Note that if $$pgp_check_gpg_decrypt_status_fd is set, this variable
++ ** is ignored.
++ ** (PGP only)
++ */
++#endif
++ { "pgp_default_key", DT_STRING, &C_PgpDefaultKey, 0 },
++ /*
++ ** .pp
++ ** This is the default key-pair to use for PGP operations. It will be
++ ** used for encryption (see $$postpone_encrypt and $$pgp_self_encrypt).
++ ** .pp
++ ** It will also be used for signing unless $$pgp_sign_as is set.
++ ** .pp
++ ** The (now deprecated) \fIpgp_self_encrypt_as\fP is an alias for this
++ ** variable, and should no longer be used.
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_encrypt_only_command", DT_STRING|DT_COMMAND, &C_PgpEncryptOnlyCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to encrypt a body part without signing it.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** Note that in this case, %r expands to the search string, which is a list of
++ ** one or more quoted values such as email address, name, or keyid.
++ ** (PGP only)
++ */
++ { "pgp_encrypt_sign_command", DT_STRING|DT_COMMAND, &C_PgpEncryptSignCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to both sign and encrypt a body part.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++#endif
++ { "pgp_entry_format", DT_STRING|DT_NOT_EMPTY, &C_PgpEntryFormat, IP "%4n %t%f %4l/0x%k %-4a %2c %u" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the PGP key selection menu to
++ ** your personal taste. This string is similar to $$index_format, but
++ ** has its own set of \fCprintf(3)\fP-like sequences:
++ ** .dl
++ ** .dt %a .dd Algorithm
++ ** .dt %c .dd Capabilities
++ ** .dt %f .dd Flags
++ ** .dt %k .dd Key id
++ ** .dt %l .dd Key length
++ ** .dt %n .dd Number
++ ** .dt %p .dd Protocol
++ ** .dt %t .dd Trust/validity of the key-uid association
++ ** .dt %u .dd User id
++ ** .dt %[<s>] .dd Date of the key where <s> is an \fCstrftime(3)\fP expression
++ ** .de
++ ** .pp
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_export_command", DT_STRING|DT_COMMAND, &C_PgpExportCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to export a public key from the user's
++ ** key ring.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++ { "pgp_getkeys_command", DT_STRING|DT_COMMAND, &C_PgpGetkeysCommand, 0 },
++ /*
++ ** .pp
++ ** This command is invoked whenever NeoMutt needs to fetch the public key associated with
++ ** an email address. Of the sequences supported by $$pgp_decode_command, %r is
++ ** the only \fCprintf(3)\fP-like sequence used with this format. Note that
++ ** in this case, %r expands to the email address, not the public key ID (the key ID is
++ ** unknown, which is why NeoMutt is invoking this command).
++ ** (PGP only)
++ */
++ { "pgp_good_sign", DT_REGEX, &C_PgpGoodSign, 0 },
++ /*
++ ** .pp
++ ** If you assign a text to this variable, then a PGP signature is only
++ ** considered verified if the output from $$pgp_verify_command contains
++ ** the text. Use this variable if the exit code from the command is 0
++ ** even for bad signatures.
++ ** (PGP only)
++ */
++#endif
++ { "pgp_ignore_subkeys", DT_BOOL, &C_PgpIgnoreSubkeys, true },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to ignore OpenPGP subkeys. Instead,
++ ** the principal key will inherit the subkeys' capabilities. \fIUnset\fP this
++ ** if you want to play interesting key selection games.
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_import_command", DT_STRING|DT_COMMAND, &C_PgpImportCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to import a key from a message into
++ ** the user's public key ring.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++ { "pgp_list_pubring_command", DT_STRING|DT_COMMAND, &C_PgpListPubringCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to list the public key ring's contents. The
++ ** output format must be analogous to the one used by
++ ** .ts
++ ** gpg --list-keys --with-colons --with-fingerprint
++ ** .te
++ ** .pp
++ ** Note: gpg's \fCfixed-list-mode\fP option should not be used. It
++ ** produces a different date format which may result in NeoMutt showing
++ ** incorrect key generation dates.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++ { "pgp_list_secring_command", DT_STRING|DT_COMMAND, &C_PgpListSecringCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to list the secret key ring's contents. The
++ ** output format must be analogous to the one used by:
++ ** .ts
++ ** gpg --list-keys --with-colons --with-fingerprint
++ ** .te
++ ** .pp
++ ** Note: gpg's \fCfixed-list-mode\fP option should not be used. It
++ ** produces a different date format which may result in NeoMutt showing
++ ** incorrect key generation dates.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++#endif
++ { "pgp_long_ids", DT_BOOL, &C_PgpLongIds, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, use 64 bit PGP key IDs, if \fIunset\fP use the normal 32 bit key IDs.
++ ** NOTE: Internally, NeoMutt has transitioned to using fingerprints (or long key IDs
++ ** as a fallback). This option now only controls the display of key IDs
++ ** in the key selection menu and a few other places.
++ ** (PGP only)
++ */
++ { "pgp_mime_auto", DT_QUAD, &C_PgpMimeAuto, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** This option controls whether NeoMutt will prompt you for
++ ** automatically sending a (signed/encrypted) message using
++ ** PGP/MIME when inline (traditional) fails (for any reason).
++ ** .pp
++ ** Also note that using the old-style PGP message format is \fBstrongly\fP
++ ** \fBdeprecated\fP.
++ ** (PGP only)
++ */
++ { "pgp_replyinline", DT_BOOL, &C_PgpReplyinline, false },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to always attempt to
++ ** create an inline (traditional) message when replying to a
++ ** message which is PGP encrypted/signed inline. This can be
++ ** overridden by use of the pgp menu, when inline is not
++ ** required. This option does not automatically detect if the
++ ** (replied-to) message is inline; instead it relies on NeoMutt
++ ** internals for previously checked/flagged messages.
++ ** .pp
++ ** Note that NeoMutt might automatically use PGP/MIME for messages
++ ** which consist of more than a single MIME part. NeoMutt can be
++ ** configured to ask before sending PGP/MIME messages when inline
++ ** (traditional) would not work.
++ ** .pp
++ ** Also see the $$pgp_mime_auto variable.
++ ** .pp
++ ** Also note that using the old-style PGP message format is \fBstrongly\fP
++ ** \fBdeprecated\fP.
++ ** (PGP only)
++ */
++ { "pgp_retainable_sigs", DT_BOOL, &C_PgpRetainableSigs, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, signed and encrypted messages will consist of nested
++ ** \fCmultipart/signed\fP and \fCmultipart/encrypted\fP body parts.
++ ** .pp
++ ** This is useful for applications like encrypted and signed mailing
++ ** lists, where the outer layer (\fCmultipart/encrypted\fP) can be easily
++ ** removed, while the inner \fCmultipart/signed\fP part is retained.
++ ** (PGP only)
++ */
++ { "pgp_self_encrypt", DT_BOOL, &C_PgpSelfEncrypt, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, PGP encrypted messages will also be encrypted
++ ** using the key in $$pgp_default_key.
++ ** (PGP only)
++ */
++ { "pgp_show_unusable", DT_BOOL, &C_PgpShowUnusable, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will display non-usable keys on the PGP key selection
++ ** menu. This includes keys which have been revoked, have expired, or
++ ** have been marked as "disabled" by the user.
++ ** (PGP only)
++ */
++ { "pgp_sign_as", DT_STRING, &C_PgpSignAs, 0 },
++ /*
++ ** .pp
++ ** If you have a different key pair to use for signing, you should
++ ** set this to the signing key. Most people will only need to set
++ ** $$pgp_default_key. It is recommended that you use the keyid form
++ ** to specify your key (e.g. \fC0x00112233\fP).
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_sign_command", DT_STRING|DT_COMMAND, &C_PgpSignCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to create the detached PGP signature for a
++ ** \fCmultipart/signed\fP PGP/MIME body part.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++#endif
++ { "pgp_sort_keys", DT_SORT|DT_SORT_KEYS, &C_PgpSortKeys, SORT_ADDRESS },
++ /*
++ ** .pp
++ ** Specifies how the entries in the pgp menu are sorted. The
++ ** following are legal values:
++ ** .dl
++ ** .dt address .dd sort alphabetically by user id
++ ** .dt keyid .dd sort alphabetically by key id
++ ** .dt date .dd sort by key creation date
++ ** .dt trust .dd sort by the trust of the key
++ ** .de
++ ** .pp
++ ** If you prefer reverse order of the above values, prefix it with
++ ** "reverse-".
++ ** (PGP only)
++ */
++ { "pgp_strict_enc", DT_BOOL, &C_PgpStrictEnc, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will automatically encode PGP/MIME signed messages as
++ ** quoted-printable. Please note that unsetting this variable may
++ ** lead to problems with non-verifyable PGP signatures, so only change
++ ** this if you know what you are doing.
++ ** (PGP only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_PGP
++ { "pgp_timeout", DT_LONG|DT_NOT_NEGATIVE, &C_PgpTimeout, 300 },
++ /*
++ ** .pp
++ ** The number of seconds after which a cached passphrase will expire if
++ ** not used.
++ ** (PGP only)
++ */
++ { "pgp_use_gpg_agent", DT_BOOL, &C_PgpUseGpgAgent, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt expects a \fCgpg-agent(1)\fP process will handle
++ ** private key passphrase prompts. If \fIunset\fP, NeoMutt will prompt
++ ** for the passphrase and pass it via stdin to the pgp command.
++ ** .pp
++ ** Note that as of version 2.1, GnuPG automatically spawns an agent
++ ** and requires the agent be used for passphrase management. Since
++ ** that version is increasingly prevalent, this variable now
++ ** defaults \fIset\fP.
++ ** .pp
++ ** NeoMutt works with a GUI or curses pinentry program. A TTY pinentry
++ ** should not be used.
++ ** .pp
++ ** If you are using an older version of GnuPG without an agent running,
++ ** or another encryption program without an agent, you will need to
++ ** \fIunset\fP this variable.
++ ** (PGP only)
++ */
++ { "pgp_verify_command", DT_STRING|DT_COMMAND, &C_PgpVerifyCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to verify PGP signatures.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++ { "pgp_verify_key_command", DT_STRING|DT_COMMAND, &C_PgpVerifyKeyCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to verify key information from the key selection
++ ** menu.
++ ** .pp
++ ** This is a format string, see the $$pgp_decode_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (PGP only)
++ */
++#endif
++ { "pipe_decode", DT_BOOL, &C_PipeDecode, false },
++ /*
++ ** .pp
++ ** Used in connection with the \fC<pipe-message>\fP command. When \fIunset\fP,
++ ** NeoMutt will pipe the messages without any preprocessing. When \fIset\fP, NeoMutt
++ ** will weed headers and will attempt to decode the messages
++ ** first.
++ */
++ { "pipe_sep", DT_STRING, &C_PipeSep, IP "\n" },
++ /*
++ ** .pp
++ ** The separator to add between messages when piping a list of tagged
++ ** messages to an external Unix command.
++ */
++ { "pipe_split", DT_BOOL, &C_PipeSplit, false },
++ /*
++ ** .pp
++ ** Used in connection with the \fC<pipe-message>\fP function following
++ ** \fC<tag-prefix>\fP. If this variable is \fIunset\fP, when piping a list of
++ ** tagged messages NeoMutt will concatenate the messages and will pipe them
++ ** all concatenated. When \fIset\fP, NeoMutt will pipe the messages one by one.
++ ** In both cases the messages are piped in the current sorted order,
++ ** and the $$pipe_sep separator is added after each message.
++ */
++#ifdef USE_POP
++ { "pop_auth_try_all", DT_BOOL, &C_PopAuthTryAll, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will try all available authentication methods.
++ ** When \fIunset\fP, NeoMutt will only fall back to other authentication
++ ** methods if the previous methods are unavailable. If a method is
++ ** available but authentication fails, NeoMutt will not connect to the POP server.
++ */
++ { "pop_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_PopAuthenticators, 0 },
++ /*
++ ** .pp
++ ** This is a colon-delimited list of authentication methods NeoMutt may
++ ** attempt to use to log in to an POP server, in the order NeoMutt should
++ ** try them. Authentication methods are either "user", "apop" or any
++ ** SASL mechanism, e.g. "digest-md5", "gssapi" or "cram-md5".
++ ** This option is case-insensitive. If this option is \fIunset\fP
++ ** (the default) NeoMutt will try all available methods, in order from
++ ** most-secure to least-secure.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set pop_authenticators="digest-md5:apop:user"
++ ** .te
++ */
++ { "pop_checkinterval", DT_NUMBER|DT_NOT_NEGATIVE, &C_PopCheckinterval, 60 },
++ /*
++ ** .pp
++ ** This variable configures how often (in seconds) NeoMutt should look for
++ ** new mail in the currently selected mailbox if it is a POP mailbox.
++ */
++ { "pop_delete", DT_QUAD, &C_PopDelete, MUTT_ASKNO },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will delete successfully downloaded messages from the POP
++ ** server when using the \fC$<fetch-mail>\fP function. When \fIunset\fP, NeoMutt will
++ ** download messages but also leave them on the POP server.
++ */
++ { "pop_host", DT_STRING, &C_PopHost, 0 },
++ /*
++ ** .pp
++ ** The name of your POP server for the \fC$<fetch-mail>\fP function. You
++ ** can also specify an alternative port, username and password, i.e.:
++ ** .ts
++ ** [pop[s]://][username[:password]@]popserver[:port]
++ ** .te
++ ** .pp
++ ** where "[...]" denotes an optional part.
++ */
++ { "pop_last", DT_BOOL, &C_PopLast, false },
++ /*
++ ** .pp
++ ** If this variable is \fIset\fP, NeoMutt will try to use the "\fCLAST\fP" POP command
++ ** for retrieving only unread messages from the POP server when using
++ ** the \fC$<fetch-mail>\fP function.
++ */
++ { "pop_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_PopOauthRefreshCommand, 0 },
++ /*
++ ** .pp
++ ** The command to run to generate an OAUTH refresh token for
++ ** authorizing your connection to your POP server. This command will be
++ ** run on every connection attempt that uses the OAUTHBEARER authentication
++ ** mechanism. See "$oauth" for details.
++ */
++ { "pop_pass", DT_STRING|DT_SENSITIVE, &C_PopPass, 0 },
++ /*
++ ** .pp
++ ** Specifies the password for your POP account. If \fIunset\fP, NeoMutt will
++ ** prompt you for your password when you open a POP mailbox.
++ ** .pp
++ ** \fBWarning\fP: you should only use this option when you are on a
++ ** fairly secure machine, because the superuser can read your neomuttrc
++ ** even if you are the only one who can read the file.
++ */
++ { "pop_reconnect", DT_QUAD, &C_PopReconnect, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt will try to reconnect to the POP server if
++ ** the connection is lost.
++ */
++ { "pop_user", DT_STRING|DT_SENSITIVE, &C_PopUser, 0 },
++ /*
++ ** .pp
++ ** Your login name on the POP server.
++ ** .pp
++ ** This variable defaults to your user name on the local machine.
++ */
++#endif /* USE_POP */
++ { "post_indent_string", DT_STRING, &C_PostIndentString, 0 },
++ /*
++ ** .pp
++ ** Similar to the $$attribution variable, NeoMutt will append this
++ ** string after the inclusion of a message which is being replied to.
++ */
++#ifdef USE_NNTP
++ { "post_moderated", DT_QUAD, &C_PostModerated, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** If set to \fIyes\fP, NeoMutt will post article to newsgroup that have
++ ** not permissions to posting (e.g. moderated). \fBNote:\fP if news server
++ ** does not support posting to that newsgroup or totally read-only, that
++ ** posting will not have an effect.
++ */
++#endif
++ { "postpone", DT_QUAD, &C_Postpone, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether or not messages are saved in the $$postponed
++ ** mailbox when you elect not to send immediately. If set to
++ ** \fIask-yes\fP or \fIask-no\fP, you will be prompted with "Save
++ ** (postpone) draft message?" when quitting from the "compose"
++ ** screen.
++ ** .pp
++ ** Also see the $$recall variable.
++ */
++ { "postpone_encrypt", DT_BOOL, &C_PostponeEncrypt, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, postponed messages that are marked for encryption will be
++ ** self-encrypted. NeoMutt will first try to encrypt using the value specified
++ ** in $$pgp_default_key or $$smime_default_key. If those are not
++ ** set, it will try the deprecated $$postpone_encrypt_as.
++ ** (Crypto only)
++ */
++ { "postpone_encrypt_as", DT_STRING, &C_PostponeEncryptAs, 0 },
++ /*
++ ** .pp
++ ** This is a deprecated fall-back variable for $$postpone_encrypt.
++ ** Please use $$pgp_default_key or $$smime_default_key.
++ ** (Crypto only)
++ */
++ { "postponed", DT_STRING|DT_MAILBOX|R_INDEX, &C_Postponed, IP "~/postponed" },
++ /*
++ ** .pp
++ ** NeoMutt allows you to indefinitely "$postpone sending a message" which
++ ** you are editing. When you choose to postpone a message, NeoMutt saves it
++ ** in the mailbox specified by this variable.
++ ** .pp
++ ** Also see the $$postpone variable.
++ */
++#ifdef USE_SOCKET
++ { "preconnect", DT_STRING, &C_Preconnect, 0 },
++ /*
++ ** .pp
++ ** If \fIset\fP, a shell command to be executed if NeoMutt fails to establish
++ ** a connection to the server. This is useful for setting up secure
++ ** connections, e.g. with \fCssh(1)\fP. If the command returns a nonzero
++ ** status, NeoMutt gives up opening the server. Example:
++ ** .ts
++ ** set preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net \(rs
++ ** sleep 20 < /dev/null > /dev/null"
++ ** .te
++ ** .pp
++ ** Mailbox "foo" on "mailhost.net" can now be reached
++ ** as "{localhost:1234}foo".
++ ** .pp
++ ** Note: For this example to work, you must be able to log in to the
++ ** remote machine without having to enter a password.
++ */
++#endif /* USE_SOCKET */
++ { "preferred_languages", DT_SLIST|SLIST_SEP_COMMA, &C_PreferredLanguages, 0 },
++ /*
++ ** .pp
++ ** RFC8255 : user preferred languages to be search in parts and display
++ ** Ex. : set preferred_languages="en,fr,de"
++ */
++ { "print", DT_QUAD, &C_Print, MUTT_ASKNO },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt really prints messages.
++ ** This is set to "ask-no" by default, because some people
++ ** accidentally hit "p" often.
++ */
++ { "print_command", DT_STRING|DT_COMMAND, &C_PrintCommand, IP "lpr" },
++ /*
++ ** .pp
++ ** This specifies the command pipe that should be used to print messages.
++ */
++ { "print_decode", DT_BOOL, &C_PrintDecode, true },
++ /*
++ ** .pp
++ ** Used in connection with the \fC<print-message>\fP command. If this
++ ** option is \fIset\fP, the message is decoded before it is passed to the
++ ** external command specified by $$print_command. If this option
++ ** is \fIunset\fP, no processing will be applied to the message when
++ ** printing it. The latter setting may be useful if you are using
++ ** some advanced printer filter which is able to properly format
++ ** e-mail messages for printing.
++ */
++ { "print_split", DT_BOOL, &C_PrintSplit, false },
++ /*
++ ** .pp
++ ** Used in connection with the \fC<print-message>\fP command. If this option
++ ** is \fIset\fP, the command specified by $$print_command is executed once for
++ ** each message which is to be printed. If this option is \fIunset\fP,
++ ** the command specified by $$print_command is executed only once, and
++ ** all the messages are concatenated, with a form feed as the message
++ ** separator.
++ ** .pp
++ ** Those who use the \fCenscript\fP(1) program's mail-printing mode will
++ ** most likely want to \fIset\fP this option.
++ */
++ { "prompt_after", DT_BOOL, &C_PromptAfter, true },
++ /*
++ ** .pp
++ ** If you use an \fIexternal\fP $$pager, setting this variable will
++ ** cause NeoMutt to prompt you for a command when the pager exits rather
++ ** than returning to the index menu. If \fIunset\fP, NeoMutt will return to the
++ ** index menu when the external pager exits.
++ */
++ { "query_command", DT_STRING|DT_COMMAND, &C_QueryCommand, 0 },
++ /*
++ ** .pp
++ ** This specifies the command NeoMutt will use to make external address
++ ** queries. The string may contain a "%s", which will be substituted
++ ** with the query string the user types. NeoMutt will add quotes around the
++ ** string substituted for "%s" automatically according to shell quoting
++ ** rules, so you should avoid adding your own. If no "%s" is found in
++ ** the string, NeoMutt will append the user's query to the end of the string.
++ ** See "$query" for more information.
++ */
++ { "query_format", DT_STRING|DT_NOT_EMPTY, &C_QueryFormat, IP "%4c %t %-25.25a %-25.25n %?e?(%e)?" },
++ /*
++ ** .pp
++ ** This variable describes the format of the "query" menu. The
++ ** following \fCprintf(3)\fP-style sequences are understood:
++ ** .dl
++ ** .dt %a .dd .dd Destination address
++ ** .dt %c .dd .dd Current entry number
++ ** .dt %e .dd * .dd Extra information
++ ** .dt %n .dd .dd Destination name
++ ** .dt %t .dd .dd "*" if current entry is tagged, a space otherwise
++ ** .dt %>X .dd .dd Right justify the rest of the string and pad with "X"
++ ** .dt %|X .dd .dd Pad to the end of the line with "X"
++ ** .dt %*X .dd .dd Soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** For an explanation of "soft-fill", see the $$index_format documentation.
++ ** .pp
++ ** * = can be optionally printed if nonzero, see the $$status_format documentation.
++ */
++ { "quit", DT_QUAD, &C_Quit, MUTT_YES },
++ /*
++ ** .pp
++ ** This variable controls whether "quit" and "exit" actually quit
++ ** from NeoMutt. If this option is \fIset\fP, they do quit, if it is \fIunset\fP, they
++ ** have no effect, and if it is set to \fIask-yes\fP or \fIask-no\fP, you are
++ ** prompted for confirmation when you try to quit.
++ */
++ { "quote_regex", DT_REGEX|R_PAGER, &C_QuoteRegex, IP "^([ \t]*[|>:}#])+" },
++ /*
++ ** .pp
++ ** A regular expression used in the internal pager to determine quoted
++ ** sections of text in the body of a message. Quoted text may be filtered
++ ** out using the \fC<toggle-quoted>\fP command, or colored according to the
++ ** "color quoted" family of directives.
++ ** .pp
++ ** Higher levels of quoting may be colored differently ("color quoted1",
++ ** "color quoted2", etc.). The quoting level is determined by removing
++ ** the last character from the matched text and recursively reapplying
++ ** the regular expression until it fails to produce a match.
++ ** .pp
++ ** Match detection may be overridden by the $$smileys regular expression.
++ */
++ { "toggle_quoted_show_levels", DT_NUMBER|DT_NOT_NEGATIVE, &C_ToggleQuotedShowLevels, 0 },
++ /*
++ ** .pp
++ ** Quoted text may be filtered out using the \fC<toggle-quoted>\fP command.
++ ** If set to a number greater than 0, then the \fC<toggle-quoted>\fP
++ ** command will only filter out quote levels above this number.
++ */
++ { "read_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_ReadInc, 10 },
++ /*
++ ** .pp
++ ** If set to a value greater than 0, NeoMutt will display which message it
++ ** is currently on when reading a mailbox or when performing search actions
++ ** such as search and limit. The message is printed after
++ ** this many messages have been read or searched (e.g., if set to 25, NeoMutt will
++ ** print a message when it is at message 25, and then again when it gets
++ ** to message 50). This variable is meant to indicate progress when
++ ** reading or searching large mailboxes which may take some time.
++ ** When set to 0, only a single message will appear before the reading
++ ** the mailbox.
++ ** .pp
++ ** Also see the $$write_inc, $$net_inc and $$time_inc variables and the
++ ** "$tuning" section of the manual for performance considerations.
++ */
++ { "read_only", DT_BOOL, &C_ReadOnly, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, all folders are opened in read-only mode.
++ */
++ { "realname", DT_STRING|R_INDEX|R_PAGER, &C_Realname, 0 },
++ /*
++ ** .pp
++ ** This variable specifies what "real" or "personal" name should be used
++ ** when sending messages.
++ ** .pp
++ ** If not specified, then the user's "real name" will be read from \fC/etc/passwd\fP.
++ ** This option will not be used, if "$$from" is set.
++ */
++ { "recall", DT_QUAD, &C_Recall, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** Controls whether or not NeoMutt recalls postponed messages
++ ** when composing a new message.
++ ** .pp
++ ** Setting this variable to \fIyes\fP is not generally useful, and thus not
++ ** recommended. Note that the \fC<recall-message>\fP function can be used
++ ** to manually recall postponed messages.
++ ** .pp
++ ** Also see $$postponed variable.
++ */
++ { "record", DT_STRING|DT_MAILBOX, &C_Record, IP "~/sent" },
++ /*
++ ** .pp
++ ** This specifies the file into which your outgoing messages should be
++ ** appended. (This is meant as the primary method for saving a copy of
++ ** your messages, but another way to do this is using the "$my_hdr"
++ ** command to create a "Bcc:" field with your email address in it.)
++ ** .pp
++ ** The value of \fI$$record\fP is overridden by the $$force_name and
++ ** $$save_name variables, and the "$fcc-hook" command. Also see $$copy
++ ** and $$write_bcc.
++ */
++ { "reflow_space_quotes", DT_BOOL, &C_ReflowSpaceQuotes, true },
++ /*
++ ** .pp
++ ** This option controls how quotes from format=flowed messages are displayed
++ ** in the pager and when replying (with $$text_flowed \fIunset\fP).
++ ** When set, this option adds spaces after each level of quote marks, turning
++ ** ">>>foo" into "> > > foo".
++ ** .pp
++ ** \fBNote:\fP If $$reflow_text is \fIunset\fP, this option has no effect.
++ ** Also, this option does not affect replies when $$text_flowed is \fIset\fP.
++ */
++ { "reflow_text", DT_BOOL, &C_ReflowText, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will reformat paragraphs in text/plain
++ ** parts marked format=flowed. If \fIunset\fP, NeoMutt will display paragraphs
++ ** unaltered from how they appear in the message body. See RFC3676 for
++ ** details on the \fIformat=flowed\fP format.
++ ** .pp
++ ** Also see $$reflow_wrap, and $$wrap.
++ */
++ { "reflow_wrap", DT_NUMBER, &C_ReflowWrap, 78 },
++ /*
++ ** .pp
++ ** This variable controls the maximum paragraph width when reformatting text/plain
++ ** parts when $$reflow_text is \fIset\fP. When the value is 0, paragraphs will
++ ** be wrapped at the terminal's right margin. A positive value sets the
++ ** paragraph width relative to the left margin. A negative value set the
++ ** paragraph width relative to the right margin.
++ ** .pp
++ ** Also see $$wrap.
++ */
++ { "reply_regex", DT_REGEX|R_INDEX|R_RESORT, &C_ReplyRegex, IP "^((re|aw|sv)(\\[[0-9]+\\])*:[ \t]*)*", 0, reply_validator },
++ /*
++ ** .pp
++ ** A regular expression used to recognize reply messages when threading
++ ** and replying. The default value corresponds to the English "Re:", the
++ ** German "Aw:" and the Swedish "Sv:".
++ */
++ { "reply_self", DT_BOOL, &C_ReplySelf, false },
++ /*
++ ** .pp
++ ** If \fIunset\fP and you are replying to a message sent by you, NeoMutt will
++ ** assume that you want to reply to the recipients of that message rather
++ ** than to yourself.
++ ** .pp
++ ** Also see the "$alternates" command.
++ */
++ { "reply_to", DT_QUAD, &C_ReplyTo, MUTT_ASKYES },
++ /*
++ ** .pp
++ ** If \fIset\fP, when replying to a message, NeoMutt will use the address listed
++ ** in the Reply-to: header as the recipient of the reply. If \fIunset\fP,
++ ** it will use the address in the From: header field instead. This
++ ** option is useful for reading a mailing list that sets the Reply-To:
++ ** header field to the list address and you want to send a private
++ ** message to the author of a message.
++ */
++ { "reply_with_xorig", DT_BOOL, &C_ReplyWithXorig, false },
++ /*
++ ** .pp
++ ** This variable provides a toggle. When active, the From: header will be
++ ** extracted from the current mail's 'X-Original-To:' header. This setting
++ ** does not have precedence over "$reverse_realname".
++ ** .pp
++ ** Assuming 'fast_reply' is disabled, this option will prompt the user with a
++ ** prefilled From: header.
++ */
++ { "resolve", DT_BOOL, &C_Resolve, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, the cursor will be automatically advanced to the next
++ ** (possibly undeleted) message whenever a command that modifies the
++ ** current message is executed.
++ */
++ { "resume_draft_files", DT_BOOL, &C_ResumeDraftFiles, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, draft files (specified by \fC-H\fP on the command
++ ** line) are processed similarly to when resuming a postponed
++ ** message. Recipients are not prompted for; send-hooks are not
++ ** evaluated; no alias expansion takes place; user-defined headers
++ ** and signatures are not added to the message.
++ */
++ { "resume_edited_draft_files", DT_BOOL, &C_ResumeEditedDraftFiles, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, draft files previously edited (via \fC-E -H\fP on
++ ** the command line) will have $$resume_draft_files automatically
++ ** set when they are used as a draft file again.
++ ** .pp
++ ** The first time a draft file is saved, NeoMutt will add a header,
++ ** X-Mutt-Resume-Draft to the saved file. The next time the draft
++ ** file is read in, if NeoMutt sees the header, it will set
++ ** $$resume_draft_files.
++ ** .pp
++ ** This option is designed to prevent multiple signatures,
++ ** user-defined headers, and other processing effects from being
++ ** made multiple times to the draft file.
++ */
++ { "reverse_alias", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseAlias, false },
++ /*
++ ** .pp
++ ** This variable controls whether or not NeoMutt will display the "personal"
++ ** name from your aliases in the index menu if it finds an alias that
++ ** matches the message's sender. For example, if you have the following
++ ** alias:
++ ** .ts
++ ** alias juser abd30425@somewhere.net (Joe User)
++ ** .te
++ ** .pp
++ ** and then you receive mail which contains the following header:
++ ** .ts
++ ** From: abd30425@somewhere.net
++ ** .te
++ ** .pp
++ ** It would be displayed in the index menu as "Joe User" instead of
++ ** "abd30425@somewhere.net." This is useful when the person's e-mail
++ ** address is not human friendly.
++ */
++ { "reverse_name", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseName, false },
++ /*
++ ** .pp
++ ** It may sometimes arrive that you receive mail to a certain machine,
++ ** move the messages to another machine, and reply to some the messages
++ ** from there. If this variable is \fIset\fP, the default \fIFrom:\fP line of
++ ** the reply messages is built using the address where you received the
++ ** messages you are replying to \fBif\fP that address matches your
++ ** "$alternates". If the variable is \fIunset\fP, or the address that would be
++ ** used doesn't match your "$alternates", the \fIFrom:\fP line will use
++ ** your address on the current machine.
++ ** .pp
++ ** Also see the "$alternates" command and $$reverse_realname.
++ */
++ { "reverse_realname", DT_BOOL|R_INDEX|R_PAGER, &C_ReverseRealname, true },
++ /*
++ ** .pp
++ ** This variable fine-tunes the behavior of the $$reverse_name feature.
++ ** .pp
++ ** When it is \fIunset\fP, NeoMutt will remove the real name part of a
++ ** matching address. This allows the use of the email address
++ ** without having to also use what the sender put in the real name
++ ** field.
++ ** .pp
++ ** When it is \fIset\fP, NeoMutt will use the matching address as-is.
++ ** .pp
++ ** In either case, a missing real name will be filled in afterwards
++ ** using the value of $$realname.
++ */
++ { "rfc2047_parameters", DT_BOOL, &C_Rfc2047Parameters, false },
++ /*
++ ** .pp
++ ** When this variable is \fIset\fP, NeoMutt will decode RFC2047-encoded MIME
++ ** parameters. You want to set this variable when NeoMutt suggests you
++ ** to save attachments to files named like:
++ ** .ts
++ ** =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
++ ** .te
++ ** .pp
++ ** When this variable is \fIset\fP interactively, the change won't be
++ ** active until you change folders.
++ ** .pp
++ ** Note that this use of RFC2047's encoding is explicitly
++ ** prohibited by the standard, but nevertheless encountered in the
++ ** wild.
++ ** .pp
++ ** Also note that setting this parameter will \fInot\fP have the effect
++ ** that NeoMutt \fIgenerates\fP this kind of encoding. Instead, NeoMutt will
++ ** unconditionally use the encoding specified in RFC2231.
++ */
++ { "save_address", DT_BOOL, &C_SaveAddress, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will take the sender's full address when choosing a
++ ** default folder for saving a mail. If $$save_name or $$force_name
++ ** is \fIset\fP too, the selection of the Fcc folder will be changed as well.
++ */
++ { "save_empty", DT_BOOL, &C_SaveEmpty, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, mailboxes which contain no saved messages will be removed
++ ** when closed (the exception is $$spoolfile which is never removed).
++ ** If \fIset\fP, mailboxes are never removed.
++ ** .pp
++ ** \fBNote:\fP This only applies to mbox and MMDF folders, NeoMutt does not
++ ** delete MH and Maildir directories.
++ */
++ { "save_history", DT_NUMBER|DT_NOT_NEGATIVE, &C_SaveHistory, 0 },
++ /*
++ ** .pp
++ ** This variable controls the size of the history (per category) saved in the
++ ** $$history_file file.
++ */
++ { "save_name", DT_BOOL, &C_SaveName, false },
++ /*
++ ** .pp
++ ** This variable controls how copies of outgoing messages are saved.
++ ** When \fIset\fP, a check is made to see if a mailbox specified by the
++ ** recipient address exists (this is done by searching for a mailbox in
++ ** the $$folder directory with the \fIusername\fP part of the
++ ** recipient address). If the mailbox exists, the outgoing message will
++ ** be saved to that mailbox, otherwise the message is saved to the
++ ** $$record mailbox.
++ ** .pp
++ ** Also see the $$force_name variable.
++ */
++#ifdef USE_NNTP
++ { "save_unsubscribed", DT_BOOL, &C_SaveUnsubscribed, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, info about unsubscribed newsgroups will be saved into
++ ** "newsrc" file and into cache.
++ */
++#endif
++ { "score", DT_BOOL, &C_Score, true },
++ /*
++ ** .pp
++ ** When this variable is \fIunset\fP, scoring is turned off. This can
++ ** be useful to selectively disable scoring for certain folders when the
++ ** $$score_threshold_delete variable and related are used.
++ */
++ { "score_threshold_delete", DT_NUMBER, &C_ScoreThresholdDelete, -1 },
++ /*
++ ** .pp
++ ** Messages which have been assigned a score equal to or lower than the value
++ ** of this variable are automatically marked for deletion by NeoMutt. Since
++ ** NeoMutt scores are always greater than or equal to zero, the default setting
++ ** of this variable will never mark a message for deletion.
++ */
++ { "score_threshold_flag", DT_NUMBER, &C_ScoreThresholdFlag, 9999 },
++ /*
++ ** .pp
++ ** Messages which have been assigned a score greater than or equal to this
++ ** variable's value are automatically marked "flagged".
++ */
++ { "score_threshold_read", DT_NUMBER, &C_ScoreThresholdRead, -1 },
++ /*
++ ** .pp
++ ** Messages which have been assigned a score equal to or lower than the value
++ ** of this variable are automatically marked as read by NeoMutt. Since
++ ** NeoMutt scores are always greater than or equal to zero, the default setting
++ ** of this variable will never mark a message read.
++ */
++ { "search_context", DT_NUMBER|DT_NOT_NEGATIVE, &C_SearchContext, 0 },
++ /*
++ ** .pp
++ ** For the pager, this variable specifies the number of lines shown
++ ** before search results. By default, search results will be top-aligned.
++ */
++ { "send_charset", DT_STRING, &C_SendCharset, IP "us-ascii:iso-8859-1:utf-8", 0, charset_validator },
++ /*
++ ** .pp
++ ** A colon-delimited list of character sets for outgoing messages. NeoMutt will use the
++ ** first character set into which the text can be converted exactly.
++ ** If your $$charset is not "iso-8859-1" and recipients may not
++ ** understand "UTF-8", it is advisable to include in the list an
++ ** appropriate widely used standard character set (such as
++ ** "iso-8859-2", "koi8-r" or "iso-2022-jp") either instead of or after
++ ** "iso-8859-1".
++ ** .pp
++ ** In case the text can't be converted into one of these exactly,
++ ** NeoMutt uses $$charset as a fallback.
++ */
++ { "sendmail", DT_STRING|DT_COMMAND, &C_Sendmail, IP SENDMAIL " -oem -oi" },
++ /*
++ ** .pp
++ ** Specifies the program and arguments used to deliver mail sent by NeoMutt.
++ ** NeoMutt expects that the specified program interprets additional
++ ** arguments as recipient addresses. NeoMutt appends all recipients after
++ ** adding a \fC--\fP delimiter (if not already present). Additional
++ ** flags, such as for $$use_8bitmime, $$use_envelope_from,
++ ** $$dsn_notify, or $$dsn_return will be added before the delimiter.
++ ** .pp
++ ** \fBSee also:\fP $$write_bcc.
++ */
++ { "sendmail_wait", DT_NUMBER, &C_SendmailWait, 0 },
++ /*
++ ** .pp
++ ** Specifies the number of seconds to wait for the $$sendmail process
++ ** to finish before giving up and putting delivery in the background.
++ ** .pp
++ ** NeoMutt interprets the value of this variable as follows:
++ ** .dl
++ ** .dt >0 .dd number of seconds to wait for sendmail to finish before continuing
++ ** .dt 0 .dd wait forever for sendmail to finish
++ ** .dt <0 .dd always put sendmail in the background without waiting
++ ** .de
++ ** .pp
++ ** Note that if you specify a value other than 0, the output of the child
++ ** process will be put in a temporary file. If there is some error, you
++ ** will be informed as to where to find the output.
++ */
++ { "shell", DT_STRING|DT_COMMAND, &C_Shell, IP "/bin/sh" },
++ /*
++ ** .pp
++ ** Command to use when spawning a subshell.
++ ** If not specified, then the user's login shell from \fC/etc/passwd\fP is used.
++ */
++ { "show_multipart_alternative", DT_STRING, &C_ShowMultipartAlternative, 0, 0, multipart_validator },
++ /*
++ ** .pp
++ ** When \fIset\fP to \fCinfo\fP, the multipart/alternative information is shown.
++ ** When \fIset\fP to \fCinline\fP, all of the alternatives are displayed.
++ ** When not set, the default behavior is to show only the chosen alternative.
++ */
++#ifdef USE_NNTP
++ { "show_new_news", DT_BOOL, &C_ShowNewNews, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, news server will be asked for new newsgroups on entering
++ ** the browser. Otherwise, it will be done only once for a news server.
++ ** Also controls whether or not number of new articles of subscribed
++ ** newsgroups will be then checked.
++ */
++ { "show_only_unread", DT_BOOL, &C_ShowOnlyUnread, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, only subscribed newsgroups that contain unread articles
++ ** will be displayed in browser.
++ */
++#endif
++#ifdef USE_SIDEBAR
++ { "sidebar_component_depth", DT_NUMBER|R_SIDEBAR, &C_SidebarComponentDepth, 0 },
++ /*
++ ** .pp
++ ** By default the sidebar will show the mailbox's path, relative to the
++ ** $$folder variable. This specifies the number of parent directories to hide
++ ** from display in the sidebar. For example: If a maildir is normally
++ ** displayed in the sidebar as dir1/dir2/dir3/maildir, setting
++ ** \fCsidebar_component_depth=2\fP will display it as dir3/maildir, having
++ ** truncated the 2 highest directories.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_short_path
++ */
++ { "sidebar_delim_chars", DT_STRING|R_SIDEBAR, &C_SidebarDelimChars, IP "/." },
++ /*
++ ** .pp
++ ** This contains the list of characters which you would like to treat
++ ** as folder separators for displaying paths in the sidebar.
++ ** .pp
++ ** Local mail is often arranged in directories: 'dir1/dir2/mailbox'.
++ ** .ts
++ ** set sidebar_delim_chars='/'
++ ** .te
++ ** .pp
++ ** IMAP mailboxes are often named: 'folder1.folder2.mailbox'.
++ ** .ts
++ ** set sidebar_delim_chars='.'
++ ** .te
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_folder_indent, $$sidebar_indent_string.
++ */
++ { "sidebar_divider_char", DT_STRING|R_SIDEBAR, &C_SidebarDividerChar, 0 },
++ /*
++ ** .pp
++ ** This specifies the characters to be drawn between the sidebar (when
++ ** visible) and the other NeoMutt panels. ASCII and Unicode line-drawing
++ ** characters are supported.
++ */
++ { "sidebar_folder_indent", DT_BOOL|R_SIDEBAR, &C_SidebarFolderIndent, false },
++ /*
++ ** .pp
++ ** Set this to indent mailboxes in the sidebar.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_indent_string, $$sidebar_delim_chars.
++ */
++ { "sidebar_format", DT_STRING|DT_NOT_EMPTY|R_SIDEBAR, &C_SidebarFormat, IP "%B%* %n" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the sidebar display. This string is
++ ** similar to $$index_format, but has its own set of \fCprintf(3)\fP-like
++ ** sequences:
++ ** .dl
++ ** .dt %B .dd .dd Name of the mailbox
++ ** .dt %d .dd * @ .dd Number of deleted messages in the mailbox
++ ** .dt %D .dd .dd Descriptive name of the mailbox
++ ** .dt %F .dd * .dd Number of flagged messages in the mailbox
++ ** .dt %L .dd * @ .dd Number of messages after limiting
++ ** .dt %n .dd .dd 'N' if mailbox has new mail, ' ' (space) otherwise
++ ** .dt %N .dd * .dd Number of unread messages in the mailbox (seen or unseen)
++ ** .dt %o .dd * .dd Number of old messages in the mailbox (unread, seen)
++ ** .dt %r .dd * .dd Number of read messages in the mailbox (read, seen)
++ ** .dt %S .dd * .dd Size of mailbox (total number of messages)
++ ** .dt %t .dd * @ .dd Number of tagged messages in the mailbox
++ ** .dt %Z .dd * .dd Number of new messages in the mailbox (unread, unseen)
++ ** .dt %! .dd .dd "!" : one flagged message;
++ ** "!!" : two flagged messages;
++ ** "n!" : n flagged messages (for n > 2).
++ ** Otherwise prints nothing.
++ ** .dt %>X .dd .dd Right justify the rest of the string and pad with "X"
++ ** .dt %|X .dd .dd Pad to the end of the line with "X"
++ ** .dt %*X .dd .dd Soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** * = Can be optionally printed if nonzero
++ ** .pp
++ ** @ = Only applicable to the current folder
++ ** .pp
++ ** In order to use %S, %N, %F, and %!, $$mail_check_stats must
++ ** be \fIset\fP. When thus set, a suggested value for this option is
++ ** "%B%?F? [%F]?%* %?N?%N/?%S".
++ */
++ { "sidebar_indent_string", DT_STRING|R_SIDEBAR, &C_SidebarIndentString, IP " " },
++ /*
++ ** .pp
++ ** This specifies the string that is used to indent mailboxes in the sidebar.
++ ** It defaults to two spaces.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_short_path, $$sidebar_folder_indent, $$sidebar_delim_chars.
++ */
++ { "sidebar_new_mail_only", DT_BOOL|R_SIDEBAR, &C_SidebarNewMailOnly, false },
++ /*
++ ** .pp
++ ** When set, the sidebar will only display mailboxes containing new, or
++ ** flagged, mail.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_whitelist, $$sidebar_non_empty_mailbox_only.
++ */
++ { "sidebar_next_new_wrap", DT_BOOL, &C_SidebarNextNewWrap, false },
++ /*
++ ** .pp
++ ** When set, the \fC<sidebar-next-new>\fP command will not stop and the end of
++ ** the list of mailboxes, but wrap around to the beginning. The
++ ** \fC<sidebar-prev-new>\fP command is similarly affected, wrapping around to
++ ** the end of the list.
++ */
++ { "sidebar_non_empty_mailbox_only", DT_BOOL|R_SIDEBAR, &C_SidebarNonEmptyMailboxOnly, false },
++ /*
++ ** .pp
++ ** When set, the sidebar will only display mailboxes that contain one or more mails.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_new_mail_only, $$sidebar_whitelist.
++ */
++ { "sidebar_on_right", DT_BOOL|R_INDEX|R_PAGER|R_REFLOW, &C_SidebarOnRight, false },
++ /*
++ ** .pp
++ ** When set, the sidebar will appear on the right-hand side of the screen.
++ */
++ { "sidebar_short_path", DT_BOOL|R_SIDEBAR, &C_SidebarShortPath, false },
++ /*
++ ** .pp
++ ** By default the sidebar will show the mailbox's path, relative to the
++ ** $$folder variable. Setting \fCsidebar_shortpath=yes\fP will shorten the
++ ** names relative to the previous name. Here's an example:
++ ** .dl
++ ** .dt \fBshortpath=no\fP .dd \fBshortpath=yes\fP .dd \fBshortpath=yes, folderindent=yes, indentstr=".."\fP
++ ** .dt \fCfruit\fP .dd \fCfruit\fP .dd \fCfruit\fP
++ ** .dt \fCfruit.apple\fP .dd \fCapple\fP .dd \fC..apple\fP
++ ** .dt \fCfruit.banana\fP .dd \fCbanana\fP .dd \fC..banana\fP
++ ** .dt \fCfruit.cherry\fP .dd \fCcherry\fP .dd \fC..cherry\fP
++ ** .de
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_delim_chars, $$sidebar_folder_indent,
++ ** $$sidebar_indent_string, $$sidebar_component_depth.
++ */
++ { "sidebar_sort_method", DT_SORT|DT_SORT_SIDEBAR|R_SIDEBAR, &C_SidebarSortMethod, SORT_ORDER },
++ /*
++ ** .pp
++ ** Specifies how to sort entries in the file browser. By default, the
++ ** entries are sorted alphabetically. Valid values:
++ ** .il
++ ** .dd alpha (alphabetically)
++ ** .dd count (all message count)
++ ** .dd flagged (flagged message count)
++ ** .dd name (alphabetically)
++ ** .dd new (unread message count)
++ ** .dd path (alphabetically)
++ ** .dd unread (unread message count)
++ ** .dd unsorted
++ ** .ie
++ ** .pp
++ ** You may optionally use the "reverse-" prefix to specify reverse sorting
++ ** order (example: "\fCset sort_browser=reverse-date\fP").
++ */
++ { "sidebar_visible", DT_BOOL|R_REFLOW, &C_SidebarVisible, false },
++ /*
++ ** .pp
++ ** This specifies whether or not to show sidebar. The sidebar shows a list of
++ ** all your mailboxes.
++ ** .pp
++ ** \fBSee also:\fP $$sidebar_format, $$sidebar_width
++ */
++ { "sidebar_width", DT_NUMBER|DT_NOT_NEGATIVE|R_REFLOW, &C_SidebarWidth, 30 },
++ /*
++ ** .pp
++ ** This controls the width of the sidebar. It is measured in screen columns.
++ ** For example: sidebar_width=20 could display 20 ASCII characters, or 10
++ ** Chinese characters.
++ */
++#endif
++ { "sig_dashes", DT_BOOL, &C_SigDashes, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, a line containing "-- " (note the trailing space) will be inserted before your
++ ** $$signature. It is \fBstrongly\fP recommended that you not \fIunset\fP
++ ** this variable unless your signature contains just your name. The
++ ** reason for this is because many software packages use "-- \n" to
++ ** detect your signature. For example, NeoMutt has the ability to highlight
++ ** the signature in a different color in the built-in pager.
++ */
++ { "sig_on_top", DT_BOOL, &C_SigOnTop, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, the signature will be included before any quoted or forwarded
++ ** text. It is \fBstrongly\fP recommended that you do not set this variable
++ ** unless you really know what you are doing, and are prepared to take
++ ** some heat from netiquette guardians.
++ */
++ { "signature", DT_PATH|DT_PATH_FILE, &C_Signature, IP "~/.signature" },
++ /*
++ ** .pp
++ ** Specifies the filename of your signature, which is appended to all
++ ** outgoing messages. If the filename ends with a pipe ("|"), it is
++ ** assumed that filename is a shell command and input should be read from
++ ** its standard output.
++ */
++ { "simple_search", DT_STRING, &C_SimpleSearch, IP "~f %s | ~s %s" },
++ /*
++ ** .pp
++ ** Specifies how NeoMutt should expand a simple search into a real search
++ ** pattern. A simple search is one that does not contain any of the "~" pattern
++ ** operators. See "$patterns" for more information on search patterns.
++ ** .pp
++ ** For example, if you simply type "joe" at a search or limit prompt, NeoMutt
++ ** will automatically expand it to the value specified by this variable by
++ ** replacing "%s" with the supplied string.
++ ** For the default value, "joe" would be expanded to: "~f joe | ~s joe".
++ */
++ { "size_show_bytes", DT_BOOL|R_MENU, &C_SizeShowBytes, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, message sizes will display bytes for values less than
++ ** 1 kilobyte. See $formatstrings-size.
++ */
++ { "size_show_fractions", DT_BOOL|R_MENU, &C_SizeShowFractions, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, message sizes will be displayed with a single decimal value
++ ** for sizes from 0 to 10 kilobytes and 1 to 10 megabytes.
++ ** See $formatstrings-size.
++ */
++ { "size_show_mb", DT_BOOL|R_MENU, &C_SizeShowMb, true },
++ /*
++ ** .pp
++ ** If \fIset\fP, message sizes will display megabytes for values greater than
++ ** or equal to 1 megabyte. See $formatstrings-size.
++ */
++ { "size_units_on_left", DT_BOOL|R_MENU, &C_SizeUnitsOnLeft, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, message sizes units will be displayed to the left of the number.
++ ** See $formatstrings-size.
++ */
++ { "skip_quoted_offset", DT_NUMBER|DT_NOT_NEGATIVE, &C_SkipQuotedOffset, 0 },
++ /*
++ ** .pp
++ ** Lines of quoted text that are displayed before the unquoted text after
++ ** "skip to quoted" command (S)
++ */
++ { "sleep_time", DT_NUMBER|DT_NOT_NEGATIVE, &C_SleepTime, 1 },
++ /*
++ ** .pp
++ ** Specifies time, in seconds, to pause while displaying certain informational
++ ** messages, while moving from folder to folder and after expunging
++ ** messages from the current folder. The default is to pause one second, so
++ ** a value of zero for this option suppresses the pause.
++ */
++ { "smart_wrap", DT_BOOL|R_PAGER_FLOW, &C_SmartWrap, true },
++ /*
++ ** .pp
++ ** Controls the display of lines longer than the screen width in the
++ ** internal pager. If \fIset\fP, long lines are wrapped at a word boundary. If
++ ** \fIunset\fP, lines are simply wrapped at the screen edge. Also see the
++ ** $$markers variable.
++ */
++ { "smileys", DT_REGEX|R_PAGER, &C_Smileys, IP "(>From )|(:[-^]?[][)(><}{|/DP])" },
++ /*
++ ** .pp
++ ** The \fIpager\fP uses this variable to catch some common false
++ ** positives of $$quote_regex, most notably smileys and not consider
++ ** a line quoted text if it also matches $$smileys. This mostly
++ ** happens at the beginning of a line.
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_SMIME
++ { "smime_ask_cert_label", DT_BOOL, &C_SmimeAskCertLabel, true },
++ /*
++ ** .pp
++ ** This flag controls whether you want to be asked to enter a label
++ ** for a certificate about to be added to the database or not. It is
++ ** \fIset\fP by default.
++ ** (S/MIME only)
++ */
++ { "smime_ca_location", DT_PATH|DT_PATH_FILE, &C_SmimeCaLocation, 0 },
++ /*
++ ** .pp
++ ** This variable contains the name of either a directory, or a file which
++ ** contains trusted certificates for use with OpenSSL.
++ ** (S/MIME only)
++ */
++ { "smime_certificates", DT_PATH|DT_PATH_DIR, &C_SmimeCertificates, 0 },
++ /*
++ ** .pp
++ ** Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
++ ** storage and retrieval of keys by itself. This is very basic right
++ ** now, and keys and certificates are stored in two different
++ ** directories, both named as the hash-value retrieved from
++ ** OpenSSL. There is an index file which contains mailbox-address
++ ** keyid pairs, and which can be manually edited. This option points to
++ ** the location of the certificates.
++ ** (S/MIME only)
++ */
++ { "smime_decrypt_command", DT_STRING|DT_COMMAND, &C_SmimeDecryptCommand, 0 },
++ /*
++ ** .pp
++ ** This format string specifies a command which is used to decrypt
++ ** \fCapplication/x-pkcs7-mime\fP attachments.
++ ** .pp
++ ** The OpenSSL command formats have their own set of \fCprintf(3)\fP-like sequences
++ ** similar to PGP's:
++ ** .dl
++ ** .dt %f .dd Expands to the name of a file containing a message.
++ ** .dt %s .dd Expands to the name of a file containing the signature part
++ ** . of a \fCmultipart/signed\fP attachment when verifying it.
++ ** .dt %k .dd The key-pair specified with $$smime_default_key
++ ** .dt %i .dd Intermediate certificates
++ ** .dt %c .dd One or more certificate IDs.
++ ** .dt %a .dd The algorithm used for encryption.
++ ** .dt %d .dd The message digest algorithm specified with $$smime_sign_digest_alg.
++ ** .dt %C .dd CA location: Depending on whether $$smime_ca_location
++ ** . points to a directory or file, this expands to
++ ** . "-CApath $$smime_ca_location" or "-CAfile $$smime_ca_location".
++ ** .de
++ ** .pp
++ ** For examples on how to configure these formats, see the \fCsmime.rc\fP in
++ ** the \fCsamples/\fP subdirectory which has been installed on your system
++ ** alongside the documentation.
++ ** (S/MIME only)
++ */
++ { "smime_decrypt_use_default_key", DT_BOOL, &C_SmimeDecryptUseDefaultKey, true },
++ /*
++ ** .pp
++ ** If \fIset\fP (default) this tells NeoMutt to use the default key for decryption. Otherwise,
++ ** if managing multiple certificate-key-pairs, NeoMutt will try to use the mailbox-address
++ ** to determine the key to use. It will ask you to supply a key, if it can't find one.
++ ** (S/MIME only)
++ */
++#endif
++ { "smime_default_key", DT_STRING, &C_SmimeDefaultKey, 0 },
++ /*
++ ** .pp
++ ** This is the default key-pair to use for S/MIME operations, and must be
++ ** set to the keyid (the hash-value that OpenSSL generates) to work properly.
++ ** .pp
++ ** It will be used for encryption (see $$postpone_encrypt and
++ ** $$smime_self_encrypt).
++ ** .pp
++ ** It will be used for decryption unless $$smime_decrypt_use_default_key
++ ** is \fIunset\fP.
++ ** .pp
++ ** It will also be used for signing unless $$smime_sign_as is set.
++ ** .pp
++ ** The (now deprecated) \fIsmime_self_encrypt_as\fP is an alias for this
++ ** variable, and should no longer be used.
++ ** (S/MIME only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_SMIME
++ { "smime_encrypt_command", DT_STRING|DT_COMMAND, &C_SmimeEncryptCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to create encrypted S/MIME messages.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ /*
++ ** .pp
++ ** Encrypt the message to $$smime_default_key too.
++ ** (S/MIME only)
++ */
++#endif
++ { "smime_encrypt_with", DT_STRING, &C_SmimeEncryptWith, IP "aes256" },
++ /*
++ ** .pp
++ ** This sets the algorithm that should be used for encryption.
++ ** Valid choices are "aes128", "aes192", "aes256", "des", "des3", "rc2-40", "rc2-64", "rc2-128".
++ ** (S/MIME only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_SMIME
++ { "smime_get_cert_command", DT_STRING|DT_COMMAND, &C_SmimeGetCertCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to extract X509 certificates from a PKCS7 structure.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ { "smime_get_cert_email_command", DT_STRING|DT_COMMAND, &C_SmimeGetCertEmailCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to extract the mail address(es) used for storing
++ ** X509 certificates, and for verification purposes (to check whether the
++ ** certificate was issued for the sender's mailbox).
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ { "smime_get_signer_cert_command", DT_STRING|DT_COMMAND, &C_SmimeGetSignerCertCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to extract only the signers X509 certificate from a S/MIME
++ ** signature, so that the certificate's owner may get compared to the
++ ** email's "From:" field.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ { "smime_import_cert_command", DT_STRING|DT_COMMAND, &C_SmimeImportCertCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to import a certificate via smime_keys.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences. NOTE: %c and %k will default
++ ** to $$smime_sign_as if set, otherwise $$smime_default_key.
++ ** (S/MIME only)
++ */
++#endif
++ { "smime_is_default", DT_BOOL, &C_SmimeIsDefault, false },
++ /*
++ ** .pp
++ ** The default behavior of NeoMutt is to use PGP on all auto-sign/encryption
++ ** operations. To override and to use OpenSSL instead this must be \fIset\fP.
++ ** However, this has no effect while replying, since NeoMutt will automatically
++ ** select the same application that was used to sign/encrypt the original
++ ** message. (Note that this variable can be overridden by unsetting $$crypt_autosmime.)
++ ** (S/MIME only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_SMIME
++ { "smime_keys", DT_PATH|DT_PATH_DIR, &C_SmimeKeys, 0 },
++ /*
++ ** .pp
++ ** Since for S/MIME there is no pubring/secring as with PGP, NeoMutt has to handle
++ ** storage and retrieval of keys/certs by itself. This is very basic right now,
++ ** and stores keys and certificates in two different directories, both
++ ** named as the hash-value retrieved from OpenSSL. There is an index file
++ ** which contains mailbox-address keyid pair, and which can be manually
++ ** edited. This option points to the location of the private keys.
++ ** (S/MIME only)
++ */
++ { "smime_pk7out_command", DT_STRING|DT_COMMAND, &C_SmimePk7outCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to extract PKCS7 structures of S/MIME signatures,
++ ** in order to extract the public X509 certificate(s).
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++#endif
++ { "smime_self_encrypt", DT_BOOL, &C_SmimeSelfEncrypt, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, S/MIME encrypted messages will also be encrypted
++ ** using the certificate in $$smime_default_key.
++ ** (S/MIME only)
++ */
++ { "smime_sign_as", DT_STRING, &C_SmimeSignAs, 0 },
++ /*
++ ** .pp
++ ** If you have a separate key to use for signing, you should set this
++ ** to the signing key. Most people will only need to set $$smime_default_key.
++ ** (S/MIME only)
++ */
++#ifdef CRYPT_BACKEND_CLASSIC_SMIME
++ { "smime_sign_command", DT_STRING|DT_COMMAND, &C_SmimeSignCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to created S/MIME signatures of type
++ ** \fCmultipart/signed\fP, which can be read by all mail clients.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ { "smime_sign_digest_alg", DT_STRING, &C_SmimeSignDigestAlg, IP "sha256" },
++ /*
++ ** .pp
++ ** This sets the algorithm that should be used for the signature message digest.
++ ** Valid choices are "md5", "sha1", "sha224", "sha256", "sha384", "sha512".
++ ** (S/MIME only)
++ */
++ { "smime_timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_SmimeTimeout, 300 },
++ /*
++ ** .pp
++ ** The number of seconds after which a cached passphrase will expire if
++ ** not used.
++ ** (S/MIME only)
++ */
++ { "smime_verify_command", DT_STRING|DT_COMMAND, &C_SmimeVerifyCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to verify S/MIME signatures of type \fCmultipart/signed\fP.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++ { "smime_verify_opaque_command", DT_STRING|DT_COMMAND, &C_SmimeVerifyOpaqueCommand, 0 },
++ /*
++ ** .pp
++ ** This command is used to verify S/MIME signatures of type
++ ** \fCapplication/x-pkcs7-mime\fP.
++ ** .pp
++ ** This is a format string, see the $$smime_decrypt_command command for
++ ** possible \fCprintf(3)\fP-like sequences.
++ ** (S/MIME only)
++ */
++#endif
++#ifdef USE_SMTP
++ { "smtp_authenticators", DT_SLIST|SLIST_SEP_COLON, &C_SmtpAuthenticators, 0 },
++ /*
++ ** .pp
++ ** This is a colon-delimited list of authentication methods NeoMutt may
++ ** attempt to use to log in to an SMTP server, in the order NeoMutt should
++ ** try them. Authentication methods are any SASL mechanism, e.g. "plain",
++ ** "digest-md5", "gssapi" or "cram-md5".
++ ** This option is case-insensitive. If it is "unset"
++ ** (the default) NeoMutt will try all available methods, in order from
++ ** most-secure to least-secure. Support for the "plain" mechanism is
++ ** bundled; other mechanisms are provided by an external SASL library (look
++ ** for +USE_SASL in the output of neomutt -v).
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set smtp_authenticators="digest-md5:cram-md5"
++ ** .te
++ */
++ { "smtp_oauth_refresh_command", DT_STRING|DT_COMMAND|DT_SENSITIVE, &C_SmtpOauthRefreshCommand, 0 },
++ /*
++ ** .pp
++ ** The command to run to generate an OAUTH refresh token for
++ ** authorizing your connection to your SMTP server. This command will be
++ ** run on every connection attempt that uses the OAUTHBEARER authentication
++ ** mechanism. See "$oauth" for details.
++ */
++ { "smtp_pass", DT_STRING|DT_SENSITIVE, &C_SmtpPass, 0 },
++ /*
++ ** .pp
++ ** Specifies the password for your SMTP account. If \fIunset\fP, NeoMutt will
++ ** prompt you for your password when you first send mail via SMTP.
++ ** See $$smtp_url to configure NeoMutt to send mail via SMTP.
++ ** .pp
++ ** \fBWarning\fP: you should only use this option when you are on a
++ ** fairly secure machine, because the superuser can read your neomuttrc even
++ ** if you are the only one who can read the file.
++ */
++ { "smtp_user", DT_STRING|DT_SENSITIVE, &C_SmtpUser, 0 },
++ /*
++ ** .pp
++ ** The username for the SMTP server.
++ ** .pp
++ ** This variable defaults to your user name on the local machine.
++ */
++ { "smtp_url", DT_STRING|DT_SENSITIVE, &C_SmtpUrl, 0 },
++ /*
++ ** .pp
++ ** Defines the SMTP smarthost where sent messages should relayed for
++ ** delivery. This should take the form of an SMTP URL, e.g.:
++ ** .ts
++ ** smtp[s]://[user[:pass]@]host[:port]
++ ** .te
++ ** .pp
++ ** where "[...]" denotes an optional part.
++ ** Setting this variable overrides the value of the $$sendmail
++ ** variable.
++ ** .pp
++ ** Also see $$write_bcc.
++ */
++#endif /* USE_SMTP */
++ { "sort", DT_SORT|R_INDEX|R_RESORT, &C_Sort, SORT_DATE, 0, pager_validator },
++ /*
++ ** .pp
++ ** Specifies how to sort messages in the "index" menu. Valid values
++ ** are:
++ ** .il
++ ** .dd date or date-sent
++ ** .dd date-received
++ ** .dd from
++ ** .dd mailbox-order (unsorted)
++ ** .dd score
++ ** .dd size
++ ** .dd spam
++ ** .dd subject
++ ** .dd threads
++ ** .dd to
++ ** .ie
++ ** .pp
++ ** You may optionally use the "reverse-" prefix to specify reverse sorting
++ ** order.
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set sort=reverse-date-sent
++ ** .te
++ */
++ { "sort_alias", DT_SORT|DT_SORT_ALIAS, &C_SortAlias, SORT_ALIAS },
++ /*
++ ** .pp
++ ** Specifies how the entries in the "alias" menu are sorted. The
++ ** following are legal values:
++ ** .il
++ ** .dd address (sort alphabetically by email address)
++ ** .dd alias (sort alphabetically by alias name)
++ ** .dd unsorted (leave in order specified in .neomuttrc)
++ ** .ie
++ */
++ { "sort_aux", DT_SORT|DT_SORT_AUX|R_INDEX|R_RESORT|R_RESORT_SUB, &C_SortAux, SORT_DATE },
++ /*
++ ** .pp
++ ** This provides a secondary sort for messages in the "index" menu, used
++ ** when the $$sort value is equal for two messages.
++ ** .pp
++ ** When sorting by threads, this variable controls how threads are sorted
++ ** in relation to other threads, and how the branches of the thread trees
++ ** are sorted. This can be set to any value that $$sort can, except
++ ** "threads" (in that case, NeoMutt will just use "date-sent"). You can also
++ ** specify the "last-" prefix in addition to the "reverse-" prefix, but "last-"
++ ** must come after "reverse-". The "last-" prefix causes messages to be
++ ** sorted against its siblings by which has the last descendant, using
++ ** the rest of $$sort_aux as an ordering. For instance,
++ ** .ts
++ ** set sort_aux=last-date-received
++ ** .te
++ ** .pp
++ ** would mean that if a new message is received in a
++ ** thread, that thread becomes the last one displayed (or the first, if
++ ** you have "\fCset sort=reverse-threads\fP".)
++ ** .pp
++ ** Note: For reversed-threads $$sort
++ ** order, $$sort_aux is reversed again (which is not the right thing to do,
++ ** but kept to not break any existing configuration setting).
++ */
++ { "sort_browser", DT_SORT|DT_SORT_BROWSER, &C_SortBrowser, SORT_ALPHA },
++ /*
++ ** .pp
++ ** Specifies how to sort entries in the file browser. By default, the
++ ** entries are sorted alphabetically. Valid values:
++ ** .il
++ ** .dd alpha (alphabetically)
++ ** .dd count (all message count)
++ ** .dd date
++ ** .dd desc (description)
++ ** .dd new (new message count)
++ ** .dd size
++ ** .dd unsorted
++ ** .ie
++ ** .pp
++ ** You may optionally use the "reverse-" prefix to specify reverse sorting
++ ** order (example: "\fCset sort_browser=reverse-date\fP").
++ */
++ { "sort_re", DT_BOOL|R_INDEX|R_RESORT|R_RESORT_INIT, &C_SortRe, true, 0, pager_validator },
++ /*
++ ** .pp
++ ** This variable is only useful when sorting by mailboxes in sidebar. By default,
++ ** entries are unsorted. Valid values:
++ ** .il
++ ** .dd count (all message count)
++ ** .dd desc (virtual mailbox description)
++ ** .dd new (new message count)
++ ** .dd path
++ ** .dd unsorted
++ ** .ie
++ */
++ { "spam_separator", DT_STRING, &C_SpamSeparator, IP "," },
++ /*
++ ** .pp
++ ** This variable controls what happens when multiple spam headers
++ ** are matched: if \fIunset\fP, each successive header will overwrite any
++ ** previous matches value for the spam label. If \fIset\fP, each successive
++ ** match will append to the previous, using this variable's value as a
++ ** separator.
++ */
++ { "spoolfile", DT_STRING|DT_MAILBOX, &C_Spoolfile, 0 },
++ /*
++ ** .pp
++ ** If your spool mailbox is in a non-default place where NeoMutt can't find
++ ** it, you can specify its location with this variable. The description from
++ ** "named-mailboxes" or "virtual-mailboxes" may be used for the spoolfile.
++ ** .pp
++ ** If not specified, then the environment variables \fC$$$MAIL\fP and
++ ** \fC$$$MAILDIR\fP will be checked.
++ */
++#ifdef USE_SSL
++#ifdef USE_SSL_GNUTLS
++ { "ssl_ca_certificates_file", DT_PATH|DT_PATH_FILE, &C_SslCaCertificatesFile, 0 },
++ /*
++ ** .pp
++ ** This variable specifies a file containing trusted CA certificates.
++ ** Any server certificate that is signed with one of these CA
++ ** certificates is also automatically accepted. (GnuTLS only)
++ ** .pp
++ ** Example:
++ ** .ts
++ ** set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
++ ** .te
++ */
++#endif /* USE_SSL_GNUTLS */
++ { "ssl_ciphers", DT_STRING, &C_SslCiphers, 0 },
++ /*
++ ** .pp
++ ** Contains a colon-separated list of ciphers to use when using SSL.
++ ** For OpenSSL, see ciphers(1) for the syntax of the string.
++ ** .pp
++ ** For GnuTLS, this option will be used in place of "NORMAL" at the
++ ** start of the priority string. See gnutls_priority_init(3) for the
++ ** syntax and more details. (Note: GnuTLS version 2.1.7 or higher is
++ ** required.)
++ */
++ { "ssl_client_cert", DT_PATH|DT_PATH_FILE, &C_SslClientCert, 0 },
++ /*
++ ** .pp
++ ** The file containing a client certificate and its associated private
++ ** key.
++ */
++ { "ssl_force_tls", DT_BOOL, &C_SslForceTls, true },
++ /*
++ ** .pp
++ ** If this variable is \fIset\fP, NeoMutt will require that all connections
++ ** to remote servers be encrypted. Furthermore it will attempt to
++ ** negotiate TLS even if the server does not advertise the capability,
++ ** since it would otherwise have to abort the connection anyway. This
++ ** option supersedes $$ssl_starttls.
++ */
++#ifdef USE_SSL_GNUTLS
++ { "ssl_min_dh_prime_bits", DT_NUMBER|DT_NOT_NEGATIVE, &C_SslMinDhPrimeBits, 0 },
++ /*
++ ** .pp
++ ** This variable specifies the minimum acceptable prime size (in bits)
++ ** for use in any Diffie-Hellman key exchange. A value of 0 will use
++ ** the default from the GNUTLS library. (GnuTLS only)
++ */
++#endif /* USE_SSL_GNUTLS */
++ { "ssl_starttls", DT_QUAD, &C_SslStarttls, MUTT_YES },
++ /*
++ ** .pp
++ ** If \fIset\fP (the default), NeoMutt will attempt to use \fCSTARTTLS\fP on servers
++ ** advertising the capability. When \fIunset\fP, NeoMutt will not attempt to
++ ** use \fCSTARTTLS\fP regardless of the server's capabilities.
++ */
++#ifdef USE_SSL_OPENSSL
++ { "ssl_use_sslv2", DT_BOOL, &C_SslUseSslv2, false },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use SSLv2 when communicating with servers that
++ ** request it. \fBN.B. As of 2011, SSLv2 is considered insecure, and using
++ ** is inadvisable. See https://tools.ietf.org/html/rfc6176 .\fP
++ ** (OpenSSL only)
++ */
++#endif /* defined USE_SSL_OPENSSL */
++ { "ssl_use_sslv3", DT_BOOL, &C_SslUseSslv3, false },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use SSLv3 when communicating with servers that
++ ** request it. \fBN.B. As of 2015, SSLv3 is considered insecure, and using
++ ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
++ */
++ { "ssl_use_tlsv1", DT_BOOL, &C_SslUseTlsv1, false },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use TLSv1.0 when communicating with servers that
++ ** request it. \fBN.B. As of 2015, TLSv1.0 is considered insecure, and using
++ ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
++ */
++ { "ssl_use_tlsv1_1", DT_BOOL, &C_SslUseTlsv11, false },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use TLSv1.1 when communicating with servers that
++ ** request it. \fBN.B. As of 2015, TLSv1.1 is considered insecure, and using
++ ** it is inadvisable. See https://tools.ietf.org/html/rfc7525 .\fP
++ */
++ { "ssl_use_tlsv1_2", DT_BOOL, &C_SslUseTlsv12, true },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use TLSv1.2 when communicating with servers that
++ ** request it.
++ */
++ { "ssl_use_tlsv1_3", DT_BOOL, &C_SslUseTlsv13, true },
++ /*
++ ** .pp
++ ** If \fIset\fP , NeoMutt will use TLSv1.3 when communicating with servers that
++ ** request it.
++ */
++#ifdef USE_SSL_OPENSSL
++ { "ssl_usesystemcerts", DT_BOOL, &C_SslUsesystemcerts, true },
++ /*
++ ** .pp
++ ** If set to \fIyes\fP, NeoMutt will use CA certificates in the
++ ** system-wide certificate store when checking if a server certificate
++ ** is signed by a trusted CA. (OpenSSL only)
++ */
++#endif
++ { "ssl_verify_dates", DT_BOOL, &C_SslVerifyDates, true },
++ /*
++ ** .pp
++ ** If \fIset\fP (the default), NeoMutt will not automatically accept a server
++ ** certificate that is either not yet valid or already expired. You should
++ ** only unset this for particular known hosts, using the
++ ** \fC$<account-hook>\fP function.
++ */
++ { "ssl_verify_host", DT_BOOL, &C_SslVerifyHost, true },
++ /*
++ ** .pp
++ ** If \fIset\fP (the default), NeoMutt will not automatically accept a server
++ ** certificate whose host name does not match the host used in your folder
++ ** URL. You should only unset this for particular known hosts, using
++ ** the \fC$<account-hook>\fP function.
++ */
++#ifdef USE_SSL_OPENSSL
++#ifdef HAVE_SSL_PARTIAL_CHAIN
++ { "ssl_verify_partial_chains", DT_BOOL, &C_SslVerifyPartialChains, false },
++ /*
++ ** .pp
++ ** This option should not be changed from the default unless you understand
++ ** what you are doing.
++ ** .pp
++ ** Setting this variable to \fIyes\fP will permit verifying partial
++ ** certification chains, i. e. a certificate chain where not the root,
++ ** but an intermediate certificate CA, or the host certificate, are
++ ** marked trusted (in $$certificate_file), without marking the root
++ ** signing CA as trusted.
++ ** .pp
++ ** (OpenSSL 1.0.2b and newer only).
++ */
++#endif /* defined HAVE_SSL_PARTIAL_CHAIN */
++#endif /* defined USE_SSL_OPENSSL */
++#endif /* defined(USE_SSL) */
++ { "status_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_StatusChars, IP "-*%A" },
++ /*
++ ** .pp
++ ** Controls the characters used by the "%r" indicator in $$status_format.
++ ** .dl
++ ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
++ ** .dt 1 .dd - .dd Mailbox is unchanged
++ ** .dt 2 .dd * .dd Mailbox has been changed and needs to be resynchronized
++ ** .dt 3 .dd % .dd Mailbox is read-only, or will not be written when exiting.
++ ** (You can toggle whether to write changes to a mailbox
++ ** with the \fC<toggle-write>\fP operation, bound by default
++ ** to "%")
++ ** .dt 4 .dd A .dd Folder opened in attach-message mode.
++ ** (Certain operations like composing a new mail, replying,
++ ** forwarding, etc. are not permitted in this mode)
++ ** .de
++ */
++ { "status_format", DT_STRING|R_INDEX|R_PAGER, &C_StatusFormat, IP "-%r-NeoMutt: %D [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---" },
++ /*
++ ** .pp
++ ** Controls the format of the status line displayed in the "index"
++ ** menu. This string is similar to $$index_format, but has its own
++ ** set of \fCprintf(3)\fP-like sequences:
++ ** .dl
++ ** .dt %b .dd * .dd Number of mailboxes with new mail
++ ** .dt %d .dd * .dd Number of deleted messages
++ ** .dt %D .dd .dd Description of the mailbox
++ ** .dt %f .dd .dd The full pathname of the current mailbox
++ ** .dt %F .dd * .dd Number of flagged messages
++ ** .dt %h .dd .dd Local hostname
++ ** .dt %l .dd * .dd Size (in bytes) of the current mailbox (see $formatstrings-size)
++ ** .dt %L .dd * .dd Size (in bytes) of the messages shown
++ ** (i.e., which match the current limit) (see $formatstrings-size)
++ ** .dt %m .dd * .dd The number of messages in the mailbox
++ ** .dt %M .dd * .dd The number of messages shown (i.e., which match the current limit)
++ ** .dt %n .dd * .dd Number of new messages in the mailbox (unread, unseen)
++ ** .dt %o .dd * .dd Number of old messages in the mailbox (unread, seen)
++ ** .dt %p .dd * .dd Number of postponed messages
++ ** .dt %P .dd .dd Percentage of the way through the index
++ ** .dt %r .dd .dd Modified/read-only/won't-write/attach-message indicator,
++ ** According to $$status_chars
++ ** .dt %R .dd * .dd Number of read messages in the mailbox (read, seen)
++ ** .dt %s .dd .dd Current sorting mode ($$sort)
++ ** .dt %S .dd .dd Current aux sorting method ($$sort_aux)
++ ** .dt %t .dd * .dd Number of tagged messages in the mailbox
++ ** .dt %u .dd * .dd Number of unread messages in the mailbox (seen or unseen)
++ ** .dt %v .dd .dd NeoMutt version string
++ ** .dt %V .dd * .dd Currently active limit pattern, if any
++ ** .dt %>X .dd .dd Right justify the rest of the string and pad with "X"
++ ** .dt %|X .dd .dd Pad to the end of the line with "X"
++ ** .dt %*X .dd .dd Soft-fill with character "X" as pad
++ ** .de
++ ** .pp
++ ** For an explanation of "soft-fill", see the $$index_format documentation.
++ ** .pp
++ ** * = can be optionally printed if nonzero
++ ** .pp
++ ** Some of the above sequences can be used to optionally print a string
++ ** if their value is nonzero. For example, you may only want to see the
++ ** number of flagged messages if such messages exist, since zero is not
++ ** particularly meaningful. To optionally print a string based upon one
++ ** of the above sequences, the following construct is used:
++ ** .pp
++ ** \fC%?<sequence_char>?<optional_string>?\fP
++ ** .pp
++ ** where \fIsequence_char\fP is a character from the table above, and
++ ** \fIoptional_string\fP is the string you would like printed if
++ ** \fIsequence_char\fP is nonzero. \fIoptional_string\fP \fBmay\fP contain
++ ** other sequences as well as normal text, but you may \fBnot\fP nest
++ ** optional strings.
++ ** .pp
++ ** Here is an example illustrating how to optionally print the number of
++ ** new messages in a mailbox:
++ ** .pp
++ ** \fC%?n?%n new messages.?\fP
++ ** .pp
++ ** You can also switch between two strings using the following construct:
++ ** .pp
++ ** \fC%?<sequence_char>?<if_string>&<else_string>?\fP
++ ** .pp
++ ** If the value of \fIsequence_char\fP is non-zero, \fIif_string\fP will
++ ** be expanded, otherwise \fIelse_string\fP will be expanded.
++ ** .pp
++ ** You can force the result of any \fCprintf(3)\fP-like sequence to be lowercase
++ ** by prefixing the sequence character with an underscore ("_") sign.
++ ** For example, if you want to display the local hostname in lowercase,
++ ** you would use: "\fC%_h\fP".
++ ** .pp
++ ** If you prefix the sequence character with a colon (":") character, NeoMutt
++ ** will replace any dots in the expansion by underscores. This might be helpful
++ ** with IMAP folders that don't like dots in folder names.
++ */
++ { "status_on_top", DT_BOOL|R_REFLOW, &C_StatusOnTop, false },
++ /*
++ ** .pp
++ ** Setting this variable causes the "status bar" to be displayed on
++ ** the first line of the screen rather than near the bottom. If $$help
++ ** is \fIset\fP, too it'll be placed at the bottom.
++ */
++ { "strict_threads", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_StrictThreads, false, 0, pager_validator },
++ /*
++ ** .pp
++ ** If \fIset\fP, threading will only make use of the "In-Reply-To" and
++ ** "References:" fields when you $$sort by message threads. By
++ ** default, messages with the same subject are grouped together in
++ ** "pseudo threads.". This may not always be desirable, such as in a
++ ** personal mailbox where you might have several unrelated messages with
++ ** the subjects like "hi" which will get grouped together. See also
++ ** $$sort_re for a less drastic way of controlling this
++ ** behavior.
++ */
++ { "suspend", DT_BOOL, &C_Suspend, true },
++ /*
++ ** .pp
++ ** When \fIunset\fP, NeoMutt won't stop when the user presses the terminal's
++ ** \fIsusp\fP key, usually "^Z". This is useful if you run NeoMutt
++ ** inside an xterm using a command like "\fCxterm -e neomutt\fP".
++ */
++ { "text_flowed", DT_BOOL, &C_TextFlowed, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will generate "format=flowed" bodies with a content type
++ ** of "\fCtext/plain; format=flowed\fP".
++ ** This format is easier to handle for some mailing software, and generally
++ ** just looks like ordinary text. To actually make use of this format's
++ ** features, you'll need support in your editor.
++ ** .pp
++ ** The option only controls newly composed messages. Postponed messages,
++ ** resent messages, and draft messages (via -H on the command line) will
++ ** use the content-type of the source message.
++ ** .pp
++ ** Note that $$indent_string is ignored when this option is \fIset\fP.
++ */
++ { "thorough_search", DT_BOOL, &C_ThoroughSearch, true },
++ /*
++ ** .pp
++ ** Affects the \fC~b\fP and \fC~h\fP search operations described in
++ ** section "$patterns". If \fIset\fP, the headers and body/attachments of
++ ** messages to be searched are decoded before searching. If \fIunset\fP,
++ ** messages are searched as they appear in the folder.
++ ** .pp
++ ** Users searching attachments or for non-ASCII characters should \fIset\fP
++ ** this value because decoding also includes MIME parsing/decoding and possible
++ ** character set conversions. Otherwise NeoMutt will attempt to match against the
++ ** raw message received (for example quoted-printable encoded or with encoded
++ ** headers) which may lead to incorrect search results.
++ */
++ { "thread_received", DT_BOOL|R_RESORT|R_RESORT_INIT|R_INDEX, &C_ThreadReceived, false, 0, pager_validator },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt uses the date received rather than the date sent
++ ** to thread messages by subject.
++ */
++ { "tilde", DT_BOOL|R_PAGER, &C_Tilde, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, the internal-pager will pad blank lines to the bottom of the
++ ** screen with a tilde ("~").
++ */
++ { "time_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_TimeInc, 0 },
++ /*
++ ** .pp
++ ** Along with $$read_inc, $$write_inc, and $$net_inc, this
++ ** variable controls the frequency with which progress updates are
++ ** displayed. It suppresses updates less than $$time_inc milliseconds
++ ** apart. This can improve throughput on systems with slow terminals,
++ ** or when running NeoMutt on a remote system.
++ ** .pp
++ ** Also see the "$tuning" section of the manual for performance considerations.
++ */
++ { "timeout", DT_NUMBER|DT_NOT_NEGATIVE, &C_Timeout, 600 },
++ /*
++ ** .pp
++ ** When NeoMutt is waiting for user input either idling in menus or
++ ** in an interactive prompt, NeoMutt would block until input is
++ ** present. Depending on the context, this would prevent certain
++ ** operations from working, like checking for new mail or keeping
++ ** an IMAP connection alive.
++ ** .pp
++ ** This variable controls how many seconds NeoMutt will at most wait
++ ** until it aborts waiting for input, performs these operations and
++ ** continues to wait for input.
++ ** .pp
++ ** A value of zero or less will cause NeoMutt to never time out.
++ */
++ { "tmpdir", DT_PATH|DT_PATH_DIR|DT_NOT_EMPTY, &C_Tmpdir, IP "/tmp" },
++ /*
++ ** .pp
++ ** This variable allows you to specify where NeoMutt will place its
++ ** temporary files needed for displaying and composing messages.
++ ** .pp
++ ** If this variable is not set, the environment variable \fC$$$TMPDIR\fP is
++ ** used. Failing that, then "\fC/tmp\fP" is used.
++ */
++ { "to_chars", DT_MBTABLE|R_INDEX|R_PAGER, &C_ToChars, IP " +TCFLR" },
++ /*
++ ** .pp
++ ** Controls the character used to indicate mail addressed to you.
++ ** .dl
++ ** .dt \fBCharacter\fP .dd \fBDefault\fP .dd \fBDescription\fP
++ ** .dt 1 .dd <space> .dd The mail is \fInot\fP addressed to your address.
++ ** .dt 2 .dd + .dd You are the only recipient of the message.
++ ** .dt 3 .dd T .dd Your address appears in the "To:" header field, but you are not the only recipient of the message.
++ ** .dt 4 .dd C .dd Your address is specified in the "Cc:" header field, but you are not the only recipient.
++ ** .dt 5 .dd F .dd Indicates the mail that was sent by \fIyou\fP.
++ ** .dt 6 .dd L .dd Indicates the mail was sent to a mailing-list you subscribe to.
++ ** .dt 7 .dd R .dd Your address appears in the "Reply-To:" header field but none of the above applies.
++ ** .de
++ */
++ { "trash", DT_STRING|DT_MAILBOX, &C_Trash, 0 },
++ /*
++ ** .pp
++ ** If set, this variable specifies the path of the trash folder where the
++ ** mails marked for deletion will be moved, instead of being irremediably
++ ** purged.
++ ** .pp
++ ** NOTE: When you delete a message in the trash folder, it is really
++ ** deleted, so that you have a way to clean the trash.
++ */
++ { "ts_enabled", DT_BOOL|R_INDEX|R_PAGER, &C_TsEnabled, false },
++ /* The default must be off to force in the validity checking. */
++ /*
++ ** .pp
++ ** Controls whether NeoMutt tries to set the terminal status line and icon name.
++ ** Most terminal emulators emulate the status line in the window title.
++ */
++ { "ts_icon_format", DT_STRING|R_INDEX|R_PAGER, &C_TsIconFormat, IP "M%?n?AIL&ail?" },
++ /*
++ ** .pp
++ ** Controls the format of the icon title, as long as "$$ts_enabled" is set.
++ ** This string is identical in formatting to the one used by
++ ** "$$status_format".
++ */
++ { "ts_status_format", DT_STRING|R_INDEX|R_PAGER, &C_TsStatusFormat, IP "NeoMutt with %?m?%m messages&no messages?%?n? [%n NEW]?" },
++ /*
++ ** .pp
++ ** Controls the format of the terminal status line (or window title),
++ ** provided that "$$ts_enabled" has been set. This string is identical in
++ ** formatting to the one used by "$$status_format".
++ */
++#ifdef USE_SOCKET
++ { "tunnel", DT_STRING|DT_COMMAND, &C_Tunnel, 0 },
++ /*
++ ** .pp
++ ** Setting this variable will cause NeoMutt to open a pipe to a command
++ ** instead of a raw socket. You may be able to use this to set up
++ ** preauthenticated connections to your IMAP/POP3/SMTP server. Example:
++ ** .ts
++ ** set tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
++ ** .te
++ ** .pp
++ ** Note: For this example to work you must be able to log in to the remote
++ ** machine without having to enter a password.
++ ** .pp
++ ** When set, NeoMutt uses the tunnel for all remote connections.
++ ** Please see "$account-hook" in the manual for how to use different
++ ** tunnel commands per connection.
++ */
++#endif
++ { "uncollapse_jump", DT_BOOL, &C_UncollapseJump, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will jump to the next unread message, if any,
++ ** when the current thread is \fIun\fPcollapsed.
++ */
++ { "uncollapse_new", DT_BOOL, &C_UncollapseNew, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will automatically uncollapse any collapsed thread
++ ** that receives a new message. When \fIunset\fP, collapsed threads will
++ ** remain collapsed. the presence of the new message will still affect
++ ** index sorting, though.
++ */
++ { "use_8bitmime", DT_BOOL, &C_Use8bitmime, false },
++ /*
++ ** .pp
++ ** \fBWarning:\fP do not set this variable unless you are using a version
++ ** of sendmail which supports the \fC-B8BITMIME\fP flag (such as sendmail
++ ** 8.8.x) or you may not be able to send mail.
++ ** .pp
++ ** When \fIset\fP, NeoMutt will invoke $$sendmail with the \fC-B8BITMIME\fP
++ ** flag when sending 8-bit messages to enable ESMTP negotiation.
++ */
++ { "use_domain", DT_BOOL, &C_UseDomain, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will qualify all local addresses (ones without the
++ ** "@host" portion) with the value of $$hostname. If \fIunset\fP, no
++ ** addresses will be qualified.
++ */
++ { "use_envelope_from", DT_BOOL, &C_UseEnvelopeFrom, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will set the \fIenvelope\fP sender of the message.
++ ** If $$envelope_from_address is \fIset\fP, it will be used as the sender
++ ** address. If \fIunset\fP, NeoMutt will attempt to derive the sender from the
++ ** "From:" header.
++ ** .pp
++ ** Note that this information is passed to sendmail command using the
++ ** \fC-f\fP command line switch. Therefore setting this option is not useful
++ ** if the $$sendmail variable already contains \fC-f\fP or if the
++ ** executable pointed to by $$sendmail doesn't support the \fC-f\fP switch.
++ */
++ { "use_from", DT_BOOL, &C_UseFrom, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will generate the "From:" header field when
++ ** sending messages. If \fIunset\fP, no "From:" header field will be
++ ** generated unless the user explicitly sets one using the "$my_hdr"
++ ** command.
++ */
++#ifdef HAVE_GETADDRINFO
++ { "use_ipv6", DT_BOOL, &C_UseIpv6, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will look for IPv6 addresses of hosts it tries to
++ ** contact. If this option is \fIunset\fP, NeoMutt will restrict itself to IPv4 addresses.
++ ** Normally, the default should work.
++ */
++#endif /* HAVE_GETADDRINFO */
++ { "user_agent", DT_BOOL, &C_UserAgent, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will add a "User-Agent:" header to outgoing
++ ** messages, indicating which version of NeoMutt was used for composing
++ ** them.
++ */
++#ifdef USE_NOTMUCH
++ { "vfolder_format", DT_STRING|DT_NOT_EMPTY|R_INDEX, &C_VfolderFormat, IP "%2C %?n?%4n/& ?%4m %f" },
++ /*
++ ** .pp
++ ** This variable allows you to customize the file browser display for virtual
++ ** folders to your personal taste. This string uses many of the same
++ ** expandos as $$folder_format.
++ */
++ { "virtual_spoolfile", DT_BOOL, &C_VirtualSpoolfile, false },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will use the first defined virtual mailbox (see
++ ** virtual-mailboxes) as a spool file.
++ **
++ ** This command is now unnecessary. $$spoolfile has been extended to support
++ ** mailbox descriptions as a value.
++ */
++#endif
++ { "visual", DT_STRING|DT_COMMAND, &C_Visual, IP "vi" },
++ /*
++ ** .pp
++ ** Specifies the visual editor to invoke when the "\fC~v\fP" command is
++ ** given in the built-in editor.
++ ** .pp
++ ** $$visual is overridden by the environment variable \fC$$$VISUAL\fP or \fC$$$EDITOR\fP.
++ */
++ { "wait_key", DT_BOOL, &C_WaitKey, true },
++ /*
++ ** .pp
++ ** Controls whether NeoMutt will ask you to press a key after an external command
++ ** has been invoked by these functions: \fC<shell-escape>\fP,
++ ** \fC<pipe-message>\fP, \fC<pipe-entry>\fP, \fC<print-message>\fP,
++ ** and \fC<print-entry>\fP commands.
++ ** .pp
++ ** It is also used when viewing attachments with "$auto_view", provided
++ ** that the corresponding mailcap entry has a \fIneedsterminal\fP flag,
++ ** and the external program is interactive.
++ ** .pp
++ ** When \fIset\fP, NeoMutt will always ask for a key. When \fIunset\fP, NeoMutt will wait
++ ** for a key only if the external command returned a non-zero status.
++ */
++ { "weed", DT_BOOL, &C_Weed, true },
++ /*
++ ** .pp
++ ** When \fIset\fP, NeoMutt will weed headers when displaying, forwarding,
++ ** printing, or replying to messages.
++ */
++ { "wrap", DT_NUMBER|R_PAGER_FLOW, &C_Wrap, 0 },
++ /*
++ ** .pp
++ ** When set to a positive value, NeoMutt will wrap text at $$wrap characters.
++ ** When set to a negative value, NeoMutt will wrap text so that there are $$wrap
++ ** characters of empty space on the right side of the terminal. Setting it
++ ** to zero makes NeoMutt wrap at the terminal width.
++ ** .pp
++ ** Also see $$reflow_wrap.
++ */
++ { "wrap_headers", DT_NUMBER|DT_NOT_NEGATIVE|R_PAGER, &C_WrapHeaders, 78, 0, wrapheaders_validator },
++ /*
++ ** .pp
++ ** This option specifies the number of characters to use for wrapping
++ ** an outgoing message's headers. Allowed values are between 78 and 998
++ ** inclusive.
++ ** .pp
++ ** \fBNote:\fP This option usually shouldn't be changed. RFC5233
++ ** recommends a line length of 78 (the default), so \fBplease only change
++ ** this setting when you know what you're doing\fP.
++ */
++ { "wrap_search", DT_BOOL, &C_WrapSearch, true },
++ /*
++ ** .pp
++ ** Controls whether searches wrap around the end.
++ ** .pp
++ ** When \fIset\fP, searches will wrap around the first (or last) item. When
++ ** \fIunset\fP, incremental searches will not wrap.
++ */
++ { "write_bcc", DT_BOOL, &C_WriteBcc, false },
++ /*
++ ** .pp
++ ** Controls whether mutt writes out the ``Bcc:'' header when
++ ** preparing messages to be sent. Some MTAs, such as Exim and
++ ** Courier, do not strip the ``Bcc:'' header; so it is advisable to
++ ** leave this unset unless you have a particular need for the header
++ ** to be in the sent message.
++ ** .pp
++ ** If mutt is set to deliver directly via SMTP(see $$smtp_url),
++ ** this option does nothing: mutt will never write out the ``Bcc:''
++ ** header in this case.
++ ** .pp
++ ** Note this option only affects the sending of messages. Fcc'ed
++ ** copies of a message will always contain the ``Bcc:'' header if
++ ** one exists.
++ */
++ { "write_inc", DT_NUMBER|DT_NOT_NEGATIVE, &C_WriteInc, 10 },
++ /*
++ ** .pp
++ ** When writing a mailbox, a message will be printed every
++ ** $$write_inc messages to indicate progress. If set to 0, only a
++ ** single message will be displayed before writing a mailbox.
++ ** .pp
++ ** Also see the $$read_inc, $$net_inc and $$time_inc variables and the
++ ** "$tuning" section of the manual for performance considerations.
++ */
++#ifdef USE_NNTP
++ { "x_comment_to", DT_BOOL, &C_XCommentTo, false },
++ /*
++ ** .pp
++ ** If \fIset\fP, NeoMutt will add "X-Comment-To:" field (that contains full
++ ** name of original article author) to article that followuped to newsgroup.
++ */
++#endif
++ /*--*/
++
++ { "ignore_linear_white_space", DT_DEPRECATED|DT_BOOL, &C_IgnoreLinearWhiteSpace, false },
++ { "pgp_encrypt_self", DT_DEPRECATED|DT_QUAD, &C_PgpEncryptSelf, MUTT_NO },
++ { "smime_encrypt_self", DT_DEPRECATED|DT_QUAD, &C_SmimeEncryptSelf, MUTT_NO },
++
++ { "abort_noattach_regexp", DT_SYNONYM, NULL, IP "abort_noattach_regex", },
++ { "attach_keyword", DT_SYNONYM, NULL, IP "abort_noattach_regex", },
++ { "edit_hdrs", DT_SYNONYM, NULL, IP "edit_headers", },
++ { "envelope_from", DT_SYNONYM, NULL, IP "use_envelope_from", },
++ { "forw_decode", DT_SYNONYM, NULL, IP "forward_decode", },
++ { "forw_decrypt", DT_SYNONYM, NULL, IP "forward_decrypt", },
++ { "forw_format", DT_SYNONYM, NULL, IP "forward_format", },
++ { "forw_quote", DT_SYNONYM, NULL, IP "forward_quote", },
++ { "hdr_format", DT_SYNONYM, NULL, IP "index_format", },
++ { "indent_str", DT_SYNONYM, NULL, IP "indent_string", },
++ { "mime_fwd", DT_SYNONYM, NULL, IP "mime_forward", },
++ { "msg_format", DT_SYNONYM, NULL, IP "message_format", },
++#ifdef USE_NOTMUCH
++ { "nm_default_uri", DT_SYNONYM, NULL, IP "nm_default_url" },
++#endif
++ { "pgp_autoencrypt", DT_SYNONYM, NULL, IP "crypt_autoencrypt", },
++ { "pgp_autosign", DT_SYNONYM, NULL, IP "crypt_autosign", },
++ { "pgp_auto_traditional", DT_SYNONYM, NULL, IP "pgp_replyinline", },
++ { "pgp_create_traditional", DT_SYNONYM, NULL, IP "pgp_autoinline", },
++ { "pgp_replyencrypt", DT_SYNONYM, NULL, IP "crypt_replyencrypt", },
++ { "pgp_replysign", DT_SYNONYM, NULL, IP "crypt_replysign", },
++ { "pgp_replysignencrypted", DT_SYNONYM, NULL, IP "crypt_replysignencrypted", },
++ { "pgp_self_encrypt_as", DT_SYNONYM, NULL, IP "pgp_default_key", },
++ { "pgp_verify_sig", DT_SYNONYM, NULL, IP "crypt_verify_sig", },
++ { "post_indent_str", DT_SYNONYM, NULL, IP "post_indent_string", },
++ { "print_cmd", DT_SYNONYM, NULL, IP "print_command", },
++ { "quote_regexp", DT_SYNONYM, NULL, IP "quote_regex", },
++ { "reply_regexp", DT_SYNONYM, NULL, IP "reply_regex", },
++ { "smime_self_encrypt_as", DT_SYNONYM, NULL, IP "smime_default_key", },
++ { "xterm_icon", DT_SYNONYM, NULL, IP "ts_icon_format", },
++ { "xterm_set_titles", DT_SYNONYM, NULL, IP "ts_enabled", },
++ { "xterm_title", DT_SYNONYM, NULL, IP "ts_status_format", },
++
++ { NULL, 0, NULL, 0, 0, NULL },
++};
++// clang-format on
+diff --git a/mutt_config.h b/mutt_config.h
+new file mode 100644
+index 000000000..6bfd160f5
+--- /dev/null
++++ b/mutt_config.h
+@@ -0,0 +1,30 @@
++/**
++ * @file
++ * Definitions of config variables
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_MUTT_CONFIG_H
++#define MUTT_MUTT_CONFIG_H
++
++#include "config/lib.h"
++
++extern struct ConfigDef MuttVars[];
++
++#endif /* MUTT_MUTT_CONFIG_H */
+diff --git a/mutt_header.c b/mutt_header.c
+index 058545a61..7fa9f4874 100644
+--- a/mutt_header.c
++++ b/mutt_header.c
+@@ -33,19 +33,19 @@
+ #include <stdio.h>
+ #include <sys/stat.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "mutt_header.h"
+ #include "alias.h"
+-#include "curs_lib.h"
+ #include "index.h"
+ #include "muttlib.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "protos.h"
+ #include "sendlib.h"
++#include "ncrypt/lib.h"
+
+ /**
+ * label_ref_dec - Decrease the refcount of a label
+diff --git a/mutt_history.c b/mutt_history.c
+index b6cc2d1a7..267557daa 100644
+--- a/mutt_history.c
++++ b/mutt_history.c
+@@ -29,15 +29,15 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "mutt_history.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
++#include "globals.h"
+ #include "keymap.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+
+@@ -74,13 +74,13 @@ static const char *history_format_str(char *buf, size_t buflen, size_t col, int
+ }
+
+ /**
+- * history_make_entry - Format a menu item for the history list - Implements Menu::menu_make_entry()
++ * history_make_entry - Format a menu item for the history list - Implements Menu::make_entry()
+ */
+ static void history_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+ char *entry = ((char **) menu->data)[line];
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, "%s", history_format_str,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols, "%s", history_format_str,
+ (unsigned long) entry, MUTT_FORMAT_ARROWCURSOR);
+ }
+
+@@ -99,8 +99,41 @@ static void history_menu(char *buf, size_t buflen, char **matches, int match_cou
+
+ snprintf(title, sizeof(title), _("History '%s'"), buf);
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "history";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ struct Menu *menu = mutt_menu_new(MENU_GENERIC);
+- menu->menu_make_entry = history_make_entry;
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ menu->make_entry = history_make_entry;
+ menu->title = title;
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_GENERIC, HistoryHelp);
+ mutt_menu_push_current(menu);
+@@ -124,6 +157,8 @@ static void history_menu(char *buf, size_t buflen, char **matches, int match_cou
+
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
+ }
+
+ /**
+@@ -147,14 +182,16 @@ void mutt_hist_complete(char *buf, size_t buflen, enum HistoryClass hclass)
+ }
+
+ /**
+- * mutt_hist_observer - Listen for config changes affecting the history - Implements ::observer_t()
++ * mutt_hist_observer - Listen for config changes affecting the history - Implements ::observer_t
+ */
+ int mutt_hist_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->event_data)
+ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
+
+- struct EventConfig *ec = (struct EventConfig *) nc->event;
++ struct EventConfig *ec = nc->event_data;
+
+ if (mutt_str_strcmp(ec->name, "history") != 0)
+ return 0;
+diff --git a/mutt_history.h b/mutt_history.h
+index 03a162cc2..859f2fdd2 100644
+--- a/mutt_history.h
++++ b/mutt_history.h
+@@ -24,7 +24,7 @@
+ #define MUTT_MUTT_HISTORY_H
+
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void mutt_hist_complete(char *buf, size_t buflen, enum HistoryClass hclass);
+ int mutt_hist_observer(struct NotifyCallback *nc);
+diff --git a/mutt_logging.c b/mutt_logging.c
+index 01a2351eb..3d982616e 100644
+--- a/mutt_logging.c
++++ b/mutt_logging.c
+@@ -34,14 +34,12 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt_logging.h"
+-#include "color.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "mutt_curses.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "options.h"
+
+@@ -169,7 +167,7 @@ int log_disp_curses(time_t stamp, const char *file, int line,
+ error_pause();
+
+ mutt_simple_format(ErrorBuf, sizeof(ErrorBuf), 0,
+- MuttMessageWindow ? MuttMessageWindow->cols : sizeof(ErrorBuf),
++ MuttMessageWindow ? MuttMessageWindow->state.cols : sizeof(ErrorBuf),
+ JUSTIFY_LEFT, 0, buf, sizeof(buf), false);
+ ErrorBufMessage = true;
+
+@@ -250,7 +248,7 @@ int mutt_log_set_file(const char *file, bool verbose)
+ mutt_str_replace(&CurrentFile, C_DebugFile);
+ }
+
+- cs_str_string_set(Config, "debug_file", file, NULL);
++ cs_subset_str_string_set(NeoMutt->sub, "debug_file", file, NULL);
+
+ return 0;
+ }
+@@ -270,7 +268,7 @@ int mutt_log_set_level(enum LogLevel level, bool verbose)
+ if (log_file_set_level(level, verbose) != 0)
+ return -1;
+
+- cs_str_native_set(Config, "debug_level", level, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "debug_level", level, NULL);
+ return 0;
+ }
+
+@@ -299,7 +297,7 @@ int mutt_log_start(void)
+ }
+
+ /**
+- * level_validator - Validate the "debug_level" config variable
++ * level_validator - Validate the "debug_level" config variable - Implements ConfigDef::validator()
+ * @param cs Config items
+ * @param cdef Config definition
+ * @param value Native value
+@@ -320,14 +318,16 @@ int level_validator(const struct ConfigSet *cs, const struct ConfigDef *cdef,
+ }
+
+ /**
+- * mutt_log_observer - Listen for config changes affecting the log file - Implements ::observer_t()
++ * mutt_log_observer - Listen for config changes affecting the log file - Implements ::observer_t
+ */
+ int mutt_log_observer(struct NotifyCallback *nc)
+ {
+- if (!nc)
++ if (!nc->event_data)
+ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
+
+- struct EventConfig *ec = (struct EventConfig *) nc->event;
++ struct EventConfig *ec = nc->event_data;
+
+ if (mutt_str_strcmp(ec->name, "debug_file") == 0)
+ mutt_log_set_file(C_DebugFile, true);
+diff --git a/mutt_logging.h b/mutt_logging.h
+index 90c22948b..670e42692 100644
+--- a/mutt_logging.h
++++ b/mutt_logging.h
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ConfigDef;
+ struct ConfigSet;
+diff --git a/mutt_lua.c b/mutt_lua.c
+index 004a42b93..4001098dc 100644
+--- a/mutt_lua.c
++++ b/mutt_lua.c
+@@ -42,11 +42,12 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
+ #include "mutt.h"
+ #include "mutt_lua.h"
+-#include "globals.h"
++#include "init.h"
+ #include "mutt_commands.h"
+ #include "muttlib.h"
+ #include "myvar.h"
+@@ -117,7 +118,7 @@ static int lua_mutt_call(lua_State *l)
+ expn.dptr = buf;
+ expn.dsize = mutt_str_strlen(buf);
+
+- if (cmd->func(token, &expn, cmd->data, err))
++ if (cmd->parse(token, &expn, cmd->data, err))
+ {
+ luaL_error(l, "NeoMutt error: %s", mutt_b2s(err));
+ rc = -1;
+@@ -153,7 +154,7 @@ static int lua_mutt_set(lua_State *l)
+ return 0;
+ }
+
+- struct HashElem *he = cs_get_elem(Config, param);
++ struct HashElem *he = cs_subset_lookup(NeoMutt->sub, param);
+ if (!he)
+ {
+ luaL_error(l, "NeoMutt parameter not found %s", param);
+@@ -170,6 +171,7 @@ static int lua_mutt_set(lua_State *l)
+ case DT_ADDRESS:
+ case DT_ENUM:
+ case DT_MBTABLE:
++ case DT_PATH:
+ case DT_REGEX:
+ case DT_SLIST:
+ case DT_SORT:
+@@ -179,10 +181,10 @@ static int lua_mutt_set(lua_State *l)
+ size_t val_size = lua_strlen(l, -1);
+ struct Buffer value_buf = mutt_buffer_make(val_size);
+ mutt_buffer_strcpy_n(&value_buf, value, val_size);
+- if (IS_PATH(he))
++ if (DTYPE(he->type) == DT_PATH)
+ mutt_buffer_expand_path(&value_buf);
+
+- int rv = cs_he_string_set(Config, he, value_buf.data, &err);
++ int rv = cs_subset_he_string_set(NeoMutt->sub, he, value_buf.data, &err);
+ mutt_buffer_dealloc(&value_buf);
+ if (CSR_RESULT(rv) != CSR_SUCCESS)
+ rc = -1;
+@@ -192,7 +194,7 @@ static int lua_mutt_set(lua_State *l)
+ case DT_QUAD:
+ {
+ const intptr_t value = lua_tointeger(l, -1);
+- int rv = cs_he_native_set(Config, he, value, &err);
++ int rv = cs_subset_he_native_set(NeoMutt->sub, he, value, &err);
+ if (CSR_RESULT(rv) != CSR_SUCCESS)
+ rc = -1;
+ break;
+@@ -200,7 +202,7 @@ static int lua_mutt_set(lua_State *l)
+ case DT_BOOL:
+ {
+ const intptr_t value = lua_toboolean(l, -1);
+- int rv = cs_he_native_set(Config, he, value, &err);
++ int rv = cs_subset_he_native_set(NeoMutt->sub, he, value, &err);
+ if (CSR_RESULT(rv) != CSR_SUCCESS)
+ rc = -1;
+ break;
+@@ -239,7 +241,7 @@ static int lua_mutt_get(lua_State *l)
+ return 1;
+ }
+
+- struct HashElem *he = cs_get_elem(Config, param);
++ struct HashElem *he = cs_subset_lookup(NeoMutt->sub, param);
+ if (!he)
+ {
+ mutt_debug(LL_DEBUG2, " * error\n");
+@@ -260,7 +262,7 @@ static int lua_mutt_get(lua_State *l)
+ case DT_STRING:
+ {
+ struct Buffer value = mutt_buffer_make(256);
+- int rc = cs_he_string_get(Config, he, &value);
++ int rc = cs_subset_he_string_get(NeoMutt->sub, he, &value);
+ if (CSR_RESULT(rc) != CSR_SUCCESS)
+ {
+ mutt_buffer_dealloc(&value);
+@@ -440,7 +442,7 @@ static bool lua_init(lua_State **l)
+ }
+
+ /**
+- * mutt_lua_parse - Parse the 'lua' command - Implements ::command_t
++ * mutt_lua_parse - Parse the 'lua' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_lua_parse(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -462,7 +464,7 @@ enum CommandResult mutt_lua_parse(struct Buffer *buf, struct Buffer *s,
+ }
+
+ /**
+- * mutt_lua_source_file - Parse the 'lua-source' command - Implements ::command_t
++ * mutt_lua_source_file - Parse the 'lua-source' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_lua_source_file(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+diff --git a/mutt_mailbox.c b/mutt_mailbox.c
+index ca6942c6e..37a7615ad 100644
+--- a/mutt_mailbox.c
++++ b/mutt_mailbox.c
+@@ -1,15 +1,42 @@
++/**
++ * @file
++ * Mailbox helper functions
++ *
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page mailbox Mailbox helper functions
++ *
++ * Mailbox helper functions
++ */
++
+ #include "config.h"
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <sys/time.h>
+ #include <time.h>
+ #include <utime.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt_mailbox.h"
+ #include "globals.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+ #include "protos.h"
+@@ -43,7 +70,7 @@ static void mailbox_check(struct Mailbox *m_cur, struct Mailbox *m_check,
+ int orig_flagged = m_check->msg_flagged;
+ #endif
+
+- enum MailboxType mb_magic = mx_path_probe(mailbox_path(m_check), NULL);
++ enum MailboxType mb_magic = mx_path_probe(mailbox_path(m_check));
+
+ if ((m_cur == m_check) && C_MailCheckRecent)
+ m_check->has_new = false;
+@@ -60,7 +87,7 @@ static void mailbox_check(struct Mailbox *m_cur, struct Mailbox *m_check,
+ if ((stat(mailbox_path(m_check), &sb) != 0) ||
+ ((m_check->magic == MUTT_UNKNOWN) && S_ISREG(sb.st_mode) && (sb.st_size == 0)) ||
+ ((m_check->magic == MUTT_UNKNOWN) &&
+- ((m_check->magic = mx_path_probe(mailbox_path(m_check), NULL)) <= 0)))
++ ((m_check->magic = mx_path_probe(mailbox_path(m_check))) <= 0)))
+ {
+ /* if the mailbox still doesn't exist, set the newly created flag to be
+ * ready for when it does. */
+@@ -223,8 +250,8 @@ bool mutt_mailbox_list(void)
+ mutt_buffer_strcpy(path, mailbox_path(np->mailbox));
+ mutt_buffer_pretty_mailbox(path);
+
+- if (!first && (MuttMessageWindow->cols >= 7) &&
+- ((pos + mutt_buffer_len(path)) >= ((size_t) MuttMessageWindow->cols - 7)))
++ if (!first && (MuttMessageWindow->state.cols >= 7) &&
++ ((pos + mutt_buffer_len(path)) >= ((size_t) MuttMessageWindow->state.cols - 7)))
+ {
+ break;
+ }
+diff --git a/mutt_menu.h b/mutt_menu.h
+index 01639f04b..e9bdce306 100644
+--- a/mutt_menu.h
++++ b/mutt_menu.h
+@@ -81,8 +81,8 @@ enum TreeChar
+ */
+ struct Menu
+ {
+- char *title; ///< Title of this menu
+- char *help; ///< Quickref for the current menu
++ const char *title; ///< Title of this menu
++ const char *help; ///< Quickref for the current menu
+ void *data; ///< Extra data for the current menu
+ int current; ///< Current entry
+ int max; ///< Number of entries in the menu
+@@ -92,8 +92,8 @@ struct Menu
+ int pagelen; ///< Number of entries per screen
+ bool tagprefix : 1;
+ bool is_mailbox_list : 1;
+- struct MuttWindow *indexwin;
+- struct MuttWindow *statuswin;
++ struct MuttWindow *win_index;
++ struct MuttWindow *win_ibar;
+
+ /* Setting dialog != NULL overrides normal menu behavior.
+ * In dialog mode menubar is hidden and prompt keys are checked before
+@@ -111,42 +111,47 @@ struct Menu
+ int tagged; ///< Number of tagged entries
+
+ /**
+- * menu_make_entry - Format a item for a menu
++ * make_entry - Format a item for a menu
+ * @param[out] buf Buffer in which to save string
+ * @param[in] buflen Buffer length
+ * @param[in] menu Menu containing items
+ * @param[in] line Menu line number
+ */
+- void (*menu_make_entry)(char *buf, size_t buflen, struct Menu *menu, int line);
++ void (*make_entry)(char *buf, size_t buflen, struct Menu *menu, int line);
++
+ /**
+- * menu_search - Search a menu for a item matching a regex
++ * search - Search a menu for a item matching a regex
+ * @param menu Menu to search
+ * @param rx Regex to match
+ * @param line Menu entry to match
+ * @retval 0 Success
+ * @retval >0 Error, e.g. REG_NOMATCH
+ */
+- int (*menu_search)(struct Menu *menu, regex_t *rx, int line);
++ int (*search)(struct Menu *menu, regex_t *rx, int line);
++
+ /**
+- * menu_tag - Tag some menu items
++ * tag - Tag some menu items
+ * @param menu Menu to tag
+ * @param sel Current selection
+ * @param act Action: 0 untag, 1 tag, -1 toggle
+ * @retval num Net change in number of tagged attachments
+ */
+- int (*menu_tag)(struct Menu *menu, int sel, int act);
++ int (*tag)(struct Menu *menu, int sel, int act);
++
+ /**
+- * menu_color - Calculate the colour for a line of the menu
++ * color - Calculate the colour for a line of the menu
+ * @param line Menu line number
+ * @retval >0 Colour pair in an integer
+ * @retval 0 No colour
+ */
+- int (*menu_color)(int line);
++ int (*color)(int line);
++
+ /**
+- * menu_custom_redraw - Redraw the menu
++ * custom_redraw - Redraw the menu
+ * @param menu Menu to redraw
+ */
+- void (*menu_custom_redraw)(struct Menu *menu);
++ void (*custom_redraw)(struct Menu *menu);
++
+ void *redraw_data;
+ };
+
+diff --git a/mutt_parse.c b/mutt_parse.c
+index 9526526e3..252c75d1c 100644
+--- a/mutt_parse.c
++++ b/mutt_parse.c
+@@ -30,11 +30,11 @@
+ #include <regex.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "mutt_parse.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
++#include "ncrypt/lib.h"
+
+ struct ListHead AttachAllow = STAILQ_HEAD_INITIALIZER(AttachAllow); ///< List of attachment types to be counted
+ struct ListHead AttachExclude = STAILQ_HEAD_INITIALIZER(AttachExclude); ///< List of attachment types to be ignored
+@@ -230,3 +230,21 @@ int mutt_count_body_parts(struct Mailbox *m, struct Email *e)
+
+ return e->attach_total;
+ }
++
++/**
++ * mutt_attachmatch_free - Free an AttachMatch - Implements ::list_free_t
++ * @param ptr AttachMatch to free
++ *
++ * @note We don't free minor because it is either a pointer into major,
++ * or a static string.
++ */
++void mutt_attachmatch_free(struct AttachMatch **ptr)
++{
++ if (!ptr || !*ptr)
++ return;
++
++ struct AttachMatch *am = *ptr;
++ regfree(&am->minor_regex);
++ FREE(&am->major);
++ FREE(ptr);
++}
+diff --git a/mutt_parse.h b/mutt_parse.h
+index 6fff1f807..63b120f8d 100644
+--- a/mutt_parse.h
++++ b/mutt_parse.h
+@@ -24,7 +24,7 @@
+ #define MUTT_MUTT_PARSE_H
+
+ #include <regex.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+
+ struct Mailbox;
+@@ -47,5 +47,6 @@ extern struct ListHead InlineExclude;
+
+ int mutt_count_body_parts(struct Mailbox *m, struct Email *e);
+ void mutt_parse_mime_message(struct Mailbox *m, struct Email *e);
++void mutt_attachmatch_free(struct AttachMatch **ptr);
+
+ #endif /* MUTT_MUTT_PARSE_H */
+diff --git a/mutt_signal.c b/mutt_signal.c
+index a8d702cfd..efc91f5db 100644
+--- a/mutt_signal.c
++++ b/mutt_signal.c
+@@ -30,19 +30,17 @@
+ #include <stddef.h>
+ #include <errno.h>
+ #include <signal.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
++#include "debug/lib.h"
+ #include "globals.h"
+ #include "mutt_attach.h"
+-#include "mutt_curses.h"
+ #include "protos.h" // IWYU pragma: keep
+-#ifdef HAVE_LIBUNWIND
+-#include "mutt.h"
+-#endif
+
+ static int IsEndwin = 0;
+
+ /**
+- * curses_signal_handler - Catch signals and relay the info to the main program
++ * curses_signal_handler - Catch signals and relay the info to the main program - Implements ::sig_handler_t
+ * @param sig Signal number, e.g. SIGINT
+ */
+ static void curses_signal_handler(int sig)
+@@ -82,7 +80,7 @@ static void curses_signal_handler(int sig)
+ }
+
+ /**
+- * curses_exit_handler - Notify the user and shutdown gracefully
++ * curses_exit_handler - Notify the user and shutdown gracefully - Implements ::sig_handler_t
+ * @param sig Signal number, e.g. SIGTERM
+ */
+ static void curses_exit_handler(int sig)
+@@ -94,7 +92,7 @@ static void curses_exit_handler(int sig)
+ }
+
+ /**
+- * curses_segv_handler - Catch a segfault and print a backtrace
++ * curses_segv_handler - Catch a segfault and print a backtrace - Implements ::sig_handler_t
+ * @param sig Signal number, e.g. SIGSEGV
+ */
+ static void curses_segv_handler(int sig)
+@@ -104,6 +102,9 @@ static void curses_segv_handler(int sig)
+ #ifdef HAVE_LIBUNWIND
+ show_backtrace();
+ #endif
++#ifdef USE_DEBUG_GRAPHVIZ
++ dump_graphviz("segfault");
++#endif
+
+ struct sigaction act;
+ sigemptyset(&act.sa_mask);
+diff --git a/mutt_socket.c b/mutt_socket.c
+index b91ccf79d..d277debb7 100644
+--- a/mutt_socket.c
++++ b/mutt_socket.c
+@@ -30,26 +30,26 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "email/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
+ #include "mutt_socket.h"
+ #include "hook.h"
+ #include "mutt_account.h"
+ #ifndef USE_SSL
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #endif
+
+ /**
+ * mutt_conn_new - Create a new Connection
+- * @param account Credentials to use
++ * @param cac Credentials to use
+ * @retval ptr New Connection
+ */
+-struct Connection *mutt_conn_new(const struct ConnAccount *account)
++struct Connection *mutt_conn_new(const struct ConnAccount *cac)
+ {
+ enum ConnectionType conn_type;
+
+ if (C_Tunnel)
+ conn_type = MUTT_CONNECTION_TUNNEL;
+- else if (account->flags & MUTT_ACCT_SSL)
++ else if (cac->flags & MUTT_ACCT_SSL)
+ conn_type = MUTT_CONNECTION_SSL;
+ else
+ conn_type = MUTT_CONNECTION_SIMPLE;
+@@ -57,7 +57,7 @@ struct Connection *mutt_conn_new(const struct ConnAccount *account)
+ struct Connection *conn = mutt_socket_new(conn_type);
+ if (conn)
+ {
+- memcpy(&conn->account, account, sizeof(struct ConnAccount));
++ memcpy(&conn->account, cac, sizeof(struct ConnAccount));
+ }
+ else
+ {
+@@ -65,7 +65,7 @@ struct Connection *mutt_conn_new(const struct ConnAccount *account)
+ {
+ #ifndef USE_SSL
+ /* that's probably why it failed */
+- mutt_error(_("SSL is unavailable, can't connect to %s"), account->host);
++ mutt_error(_("SSL is unavailable, can't connect to %s"), cac->host);
+ #endif
+ }
+ }
+@@ -74,27 +74,25 @@ struct Connection *mutt_conn_new(const struct ConnAccount *account)
+
+ /**
+ * mutt_conn_find - Find a connection from a list
+- * @param start First connection to try
+- * @param account ConnAccount to match
++ * @param cac ConnAccount to match
+ * @retval ptr Matching Connection
+ *
+- * find a connection off the list of connections whose account matches account.
++ * find a connection off the list of connections whose account matches cac.
+ * If start is not null, only search for connections after the given connection
+ * (allows higher level socket code to make more fine-grained searches than
+ * account info - eg in IMAP we may wish to find a connection which is not in
+ * IMAP_SELECTED state)
+ */
+-struct Connection *mutt_conn_find(const struct Connection *start,
+- const struct ConnAccount *account)
++struct Connection *mutt_conn_find(const struct ConnAccount *cac)
+ {
+- struct Url url;
++ struct Url url = { 0 };
+ char hook[1024];
+
+- /* account isn't actually modified, since url isn't either */
+- mutt_account_tourl((struct ConnAccount *) account, &url);
++ /* cac isn't actually modified, since url isn't either */
++ mutt_account_tourl((struct ConnAccount *) cac, &url);
+ url.path = NULL;
+ url_tostring(&url, hook, sizeof(hook), 0);
+ mutt_account_hook(hook);
+
+- return mutt_conn_new(account);
++ return mutt_conn_new(cac);
+ }
+diff --git a/mutt_socket.h b/mutt_socket.h
+index 2c27fd1a8..6aed5d357 100644
+--- a/mutt_socket.h
++++ b/mutt_socket.h
+@@ -24,14 +24,13 @@
+ #define MUTT_MUTT_SOCKET_H
+
+ struct ConnAccount;
+-struct Connection;
+
+ /* logging levels */
+ #define MUTT_SOCK_LOG_CMD 2
+ #define MUTT_SOCK_LOG_HDR 3
+ #define MUTT_SOCK_LOG_FULL 5
+
+-struct Connection *mutt_conn_find(const struct Connection *start, const struct ConnAccount *account);
++struct Connection *mutt_conn_find(const struct ConnAccount *account);
+ struct Connection *mutt_conn_new(const struct ConnAccount *account);
+
+ #define mutt_socket_readln(buf, buflen, conn) mutt_socket_readln_d(buf, buflen, conn, MUTT_SOCK_LOG_CMD)
+diff --git a/mutt_thread.c b/mutt_thread.c
+index 5bf98b10f..3e9f8840b 100644
+--- a/mutt_thread.c
++++ b/mutt_thread.c
+@@ -32,7 +32,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+@@ -1247,6 +1247,11 @@ int mutt_traverse_thread(struct Context *ctx, struct Email *e_cur, MuttThreadFla
+ return e_cur->vnum;
+ }
+
++ if (!e_cur->thread)
++ {
++ return e_cur->vnum;
++ }
++
+ final = e_cur->vnum;
+ thread = e_cur->thread;
+ while (thread->parent)
+diff --git a/mutt_window.c b/mutt_window.c
+deleted file mode 100644
+index a16df8131..000000000
+--- a/mutt_window.c
++++ /dev/null
+@@ -1,432 +0,0 @@
+-/**
+- * @file
+- * Window management
+- *
+- * @authors
+- * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
+- *
+- * @copyright
+- * This program is free software: you can redistribute it and/or modify it under
+- * the terms of the GNU General Public License as published by the Free Software
+- * Foundation, either version 2 of the License, or (at your option) any later
+- * version.
+- *
+- * This program is distributed in the hope that it will be useful, but WITHOUT
+- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+- * details.
+- *
+- * You should have received a copy of the GNU General Public License along with
+- * this program. If not, see <http://www.gnu.org/licenses/>.
+- */
+-
+-/**
+- * @page window Window management
+- *
+- * Window management
+- */
+-
+-#include "config.h"
+-#include <stdarg.h>
+-#include <string.h>
+-#include "mutt/mutt.h"
+-#include "mutt_window.h"
+-#include "globals.h"
+-#include "mutt_curses.h"
+-#include "mutt_menu.h"
+-#include "options.h"
+-
+-struct MuttWindow *MuttHelpWindow = NULL; ///< Help Window
+-struct MuttWindow *MuttIndexWindow = NULL; ///< Index Window
+-struct MuttWindow *MuttStatusWindow = NULL; ///< Status Window
+-struct MuttWindow *MuttMessageWindow = NULL; ///< Message Window
+-#ifdef USE_SIDEBAR
+-struct MuttWindow *MuttSidebarWindow = NULL; ///< Sidebar Window
+-#endif
+-
+-/**
+- * mutt_window_new - Create a new Window
+- * @retval ptr New Window
+- */
+-struct MuttWindow *mutt_window_new(void)
+-{
+- struct MuttWindow *win = mutt_mem_calloc(1, sizeof(struct MuttWindow));
+-
+- return win;
+-}
+-
+-/**
+- * mutt_window_free - Free a Window
+- * @param ptr Window to free
+- */
+-void mutt_window_free(struct MuttWindow **ptr)
+-{
+- if (!ptr || !*ptr)
+- return;
+-
+- // struct MuttWindow *win = *ptr;
+-
+- FREE(ptr);
+-}
+-
+-#ifdef USE_SLANG_CURSES
+-/**
+- * vw_printw - Write a formatted string to a Window (function missing from Slang)
+- * @param win Window
+- * @param fmt printf format string
+- * @param ap printf arguments
+- * @retval 0 Always
+- */
+-static int vw_printw(SLcurses_Window_Type *win, const char *fmt, va_list ap)
+-{
+- char buf[1024];
+-
+- (void) SLvsnprintf(buf, sizeof(buf), (char *) fmt, ap);
+- SLcurses_waddnstr(win, buf, -1);
+- return 0;
+-}
+-#endif
+-
+-/**
+- * mutt_window_clearline - Clear a row of a Window
+- * @param win Window
+- * @param row Row to clear
+- */
+-void mutt_window_clearline(struct MuttWindow *win, int row)
+-{
+- mutt_window_move(win, row, 0);
+- mutt_window_clrtoeol(win);
+-}
+-
+-/**
+- * mutt_window_clrtobot - Clear to the bottom of the Window
+- *
+- * @note Assumes the cursor has already been positioned within the Window.
+- */
+-void mutt_window_clrtobot(void)
+-{
+- clrtobot();
+-}
+-
+-/**
+- * mutt_window_clrtoeol - Clear to the end of the line
+- * @param win Window
+- *
+- * @note Assumes the cursor has already been positioned within the window.
+- */
+-void mutt_window_clrtoeol(struct MuttWindow *win)
+-{
+- if (!win || !stdscr)
+- return;
+-
+- if (win->col_offset + win->cols == COLS)
+- clrtoeol();
+- else
+- {
+- int row = 0;
+- int col = 0;
+- getyx(stdscr, row, col);
+- int curcol = col;
+- while (curcol < (win->col_offset + win->cols))
+- {
+- addch(' ');
+- curcol++;
+- }
+- move(row, col);
+- }
+-}
+-
+-/**
+- * mutt_window_free_all - Free all the default Windows
+- */
+-void mutt_window_free_all(void)
+-{
+- FREE(&MuttHelpWindow);
+- FREE(&MuttIndexWindow);
+- FREE(&MuttStatusWindow);
+- FREE(&MuttMessageWindow);
+-#ifdef USE_SIDEBAR
+- FREE(&MuttSidebarWindow);
+-#endif
+-}
+-
+-/**
+- * mutt_window_get_coords - Get the cursor position in the Window
+- * @param[in] win Window
+- * @param[out] row Row in Window
+- * @param[out] col Column in Window
+- *
+- * Assumes the current position is inside the window. Otherwise it will
+- * happily return negative or values outside the window boundaries
+- */
+-void mutt_window_get_coords(struct MuttWindow *win, int *row, int *col)
+-{
+- int x = 0;
+- int y = 0;
+-
+- getyx(stdscr, y, x);
+- if (col)
+- *col = x - win->col_offset;
+- if (row)
+- *row = y - win->row_offset;
+-}
+-
+-/**
+- * mutt_window_init - Create the default Windows
+- *
+- * Create the Help, Index, Status, Message and Sidebar Windows.
+- */
+-void mutt_window_init(void)
+-{
+- MuttHelpWindow = mutt_window_new();
+- MuttIndexWindow = mutt_window_new();
+- MuttStatusWindow = mutt_window_new();
+- MuttMessageWindow = mutt_window_new();
+-#ifdef USE_SIDEBAR
+- MuttSidebarWindow = mutt_window_new();
+-#endif
+-}
+-
+-/**
+- * mutt_window_move - Move the cursor in a Window
+- * @param win Window
+- * @param row Row to move to
+- * @param col Column to move to
+- * @retval OK Success
+- * @retval ERR Error
+- */
+-int mutt_window_move(struct MuttWindow *win, int row, int col)
+-{
+- return move(win->row_offset + row, win->col_offset + col);
+-}
+-
+-/**
+- * mutt_window_mvaddstr - Move the cursor and write a fixed string to a Window
+- * @param win Window to write to
+- * @param row Row to move to
+- * @param col Column to move to
+- * @param str String to write
+- * @retval OK Success
+- * @retval ERR Error
+- */
+-int mutt_window_mvaddstr(struct MuttWindow *win, int row, int col, const char *str)
+-{
+-#ifdef USE_SLANG_CURSES
+- return mvaddstr(win->row_offset + row, win->col_offset + col, (char *) str);
+-#else
+- return mvaddstr(win->row_offset + row, win->col_offset + col, str);
+-#endif
+-}
+-
+-/**
+- * mutt_window_mvprintw - Move the cursor and write a formatted string to a Window
+- * @param win Window to write to
+- * @param row Row to move to
+- * @param col Column to move to
+- * @param fmt printf format string
+- * @param ... printf arguments
+- * @retval num Success, characters written
+- * @retval ERR Error, move failed
+- */
+-int mutt_window_mvprintw(struct MuttWindow *win, int row, int col, const char *fmt, ...)
+-{
+- int rc = mutt_window_move(win, row, col);
+- if (rc == ERR)
+- return rc;
+-
+- va_list ap;
+- va_start(ap, fmt);
+- rc = vw_printw(stdscr, fmt, ap);
+- va_end(ap);
+-
+- return rc;
+-}
+-
+-/**
+- * mutt_window_copy_size - Copy the size of one Window to another
+- * @param win_src Window to copy
+- * @param win_dst Window to resize
+- */
+-void mutt_window_copy_size(const struct MuttWindow *win_src, struct MuttWindow *win_dst)
+-{
+- if (!win_src || !win_dst)
+- return;
+-
+- win_dst->rows = win_src->rows;
+- win_dst->cols = win_src->cols;
+- win_dst->row_offset = win_src->row_offset;
+- win_dst->col_offset = win_src->col_offset;
+-}
+-
+-/**
+- * mutt_window_reflow - Resize the Windows to fit the screen
+- */
+-void mutt_window_reflow(void)
+-{
+- if (OptNoCurses)
+- return;
+-
+- mutt_debug(LL_DEBUG2, "entering\n");
+-
+- MuttStatusWindow->rows = 1;
+- MuttStatusWindow->cols = COLS;
+- MuttStatusWindow->row_offset = C_StatusOnTop ? 0 : LINES - 2;
+- MuttStatusWindow->col_offset = 0;
+-
+- mutt_window_copy_size(MuttStatusWindow, MuttHelpWindow);
+- if (C_Help)
+- MuttHelpWindow->row_offset = C_StatusOnTop ? LINES - 2 : 0;
+- else
+- MuttHelpWindow->rows = 0;
+-
+- mutt_window_copy_size(MuttStatusWindow, MuttMessageWindow);
+- MuttMessageWindow->row_offset = LINES - 1;
+-
+- mutt_window_copy_size(MuttStatusWindow, MuttIndexWindow);
+- MuttIndexWindow->rows = MAX(
+- LINES - MuttStatusWindow->rows - MuttHelpWindow->rows - MuttMessageWindow->rows, 0);
+- MuttIndexWindow->row_offset =
+- C_StatusOnTop ? MuttStatusWindow->rows : MuttHelpWindow->rows;
+-
+-#ifdef USE_SIDEBAR
+- if (C_SidebarVisible)
+- {
+- mutt_window_copy_size(MuttIndexWindow, MuttSidebarWindow);
+- MuttSidebarWindow->cols = C_SidebarWidth;
+- MuttIndexWindow->cols -= C_SidebarWidth;
+-
+- if (C_SidebarOnRight)
+- {
+- MuttSidebarWindow->col_offset = COLS - C_SidebarWidth;
+- }
+- else
+- {
+- MuttIndexWindow->col_offset += C_SidebarWidth;
+- }
+- }
+-#endif
+-
+- mutt_menu_set_current_redraw_full();
+- /* the pager menu needs this flag set to recalc line_info */
+- mutt_menu_set_current_redraw(REDRAW_FLOW);
+-}
+-
+-/**
+- * mutt_window_reflow_message_rows - Resize the Message Window
+- * @param mw_rows Number of rows required
+- *
+- * Resize the other Windows to allow a multi-line message to be displayed.
+- */
+-void mutt_window_reflow_message_rows(int mw_rows)
+-{
+- MuttMessageWindow->rows = mw_rows;
+- MuttMessageWindow->row_offset = LINES - mw_rows;
+-
+- MuttStatusWindow->row_offset = C_StatusOnTop ? 0 : LINES - mw_rows - 1;
+-
+- if (C_Help)
+- MuttHelpWindow->row_offset = C_StatusOnTop ? LINES - mw_rows - 1 : 0;
+-
+- MuttIndexWindow->rows = MAX(
+- LINES - MuttStatusWindow->rows - MuttHelpWindow->rows - MuttMessageWindow->rows, 0);
+-
+-#ifdef USE_SIDEBAR
+- if (C_SidebarVisible)
+- MuttSidebarWindow->rows = MuttIndexWindow->rows;
+-#endif
+-
+- /* We don't also set REDRAW_FLOW because this function only
+- * changes rows and is a temporary adjustment. */
+- mutt_menu_set_current_redraw_full();
+-}
+-
+-/**
+- * mutt_window_wrap_cols - Calculate the wrap column for a given screen width
+- * @param width Screen width
+- * @param wrap Wrap config
+- * @retval num Column that text should be wrapped at
+- *
+- * The wrap variable can be negative, meaning there should be a right margin.
+- */
+-int mutt_window_wrap_cols(int width, short wrap)
+-{
+- if (wrap < 0)
+- return (width > -wrap) ? (width + wrap) : width;
+- if (wrap)
+- return (wrap < width) ? wrap : width;
+- return width;
+-}
+-
+-/**
+- * mutt_window_addch - Write one character to a Window
+- * @param ch Character to write
+- * @retval 0 Success
+- * @retval -1 Error
+- */
+-int mutt_window_addch(int ch)
+-{
+- return addch(ch);
+-}
+-
+-/**
+- * mutt_window_addnstr - Write a partial string to a Window
+- * @param str String
+- * @param num Maximum number of characters to write
+- * @retval 0 Success
+- * @retval -1 Error
+- */
+-int mutt_window_addnstr(const char *str, int num)
+-{
+- if (!str)
+- return -1;
+-
+-#ifdef USE_SLANG_CURSES
+- return addnstr((char *) str, num);
+-#else
+- return addnstr(str, num);
+-#endif
+-}
+-
+-/**
+- * mutt_window_addstr - Write a string to a Window
+- * @param str String
+- * @retval 0 Success
+- * @retval -1 Error
+- */
+-int mutt_window_addstr(const char *str)
+-{
+- if (!str)
+- return -1;
+-
+-#ifdef USE_SLANG_CURSES
+- return addstr((char *) str);
+-#else
+- return addstr(str);
+-#endif
+-}
+-
+-/**
+- * mutt_window_move_abs - Move the cursor to an absolute screen position
+- * @param row Screen row (0-based)
+- * @param col Screen column (0-based)
+- */
+-void mutt_window_move_abs(int row, int col)
+-{
+- move(row, col);
+-}
+-
+-/**
+- * mutt_window_printf - Write a formatted string to a Window
+- * @param fmt Format string
+- * @param ... Arguments
+- * @retval num Number of characters written
+- */
+-int mutt_window_printf(const char *fmt, ...)
+-{
+- va_list ap;
+- va_start(ap, fmt);
+- int rc = vw_printw(stdscr, fmt, ap);
+- va_end(ap);
+-
+- return rc;
+-}
+diff --git a/mutt_window.h b/mutt_window.h
+deleted file mode 100644
+index 51396e39b..000000000
+--- a/mutt_window.h
++++ /dev/null
+@@ -1,73 +0,0 @@
+-/**
+- * @file
+- * Window management
+- *
+- * @authors
+- * Copyright (C) 2018 Richard Russon <rich@flatcap.org>
+- *
+- * @copyright
+- * This program is free software: you can redistribute it and/or modify it under
+- * the terms of the GNU General Public License as published by the Free Software
+- * Foundation, either version 2 of the License, or (at your option) any later
+- * version.
+- *
+- * This program is distributed in the hope that it will be useful, but WITHOUT
+- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+- * details.
+- *
+- * You should have received a copy of the GNU General Public License along with
+- * this program. If not, see <http://www.gnu.org/licenses/>.
+- */
+-
+-#ifndef MUTT_MUTT_WINDOW_H
+-#define MUTT_MUTT_WINDOW_H
+-
+-#include "config.h"
+-
+-/**
+- * struct MuttWindow - A division of the screen
+- *
+- * Windows for different parts of the screen
+- */
+-struct MuttWindow
+-{
+- int rows;
+- int cols;
+- int row_offset;
+- int col_offset;
+-};
+-
+-extern struct MuttWindow *MuttHelpWindow;
+-extern struct MuttWindow *MuttIndexWindow;
+-extern struct MuttWindow *MuttMessageWindow;
+-#ifdef USE_SIDEBAR
+-extern struct MuttWindow *MuttSidebarWindow;
+-#endif
+-extern struct MuttWindow *MuttStatusWindow;
+-
+-// Functions that deal with the Window
+-void mutt_window_copy_size (const struct MuttWindow *win_src, struct MuttWindow *win_dst);
+-void mutt_window_free (struct MuttWindow **ptr);
+-void mutt_window_free_all (void);
+-void mutt_window_get_coords (struct MuttWindow *win, int *col, int *row);
+-void mutt_window_init (void);
+-struct MuttWindow *mutt_window_new (void);
+-void mutt_window_reflow (void);
+-void mutt_window_reflow_message_rows(int mw_rows);
+-int mutt_window_wrap_cols (int width, short wrap);
+-
+-// Functions for drawing on the Window
+-int mutt_window_addch (int ch);
+-int mutt_window_addnstr (const char *str, int num);
+-int mutt_window_addstr (const char *str);
+-void mutt_window_clearline(struct MuttWindow *win, int row);
+-void mutt_window_clrtobot (void);
+-void mutt_window_clrtoeol (struct MuttWindow *win);
+-int mutt_window_move (struct MuttWindow *win, int row, int col);
+-void mutt_window_move_abs (int row, int col);
+-int mutt_window_mvaddstr (struct MuttWindow *win, int row, int col, const char *str);
+-int mutt_window_mvprintw (struct MuttWindow *win, int row, int col, const char *fmt, ...);
+-int mutt_window_printf (const char *format, ...);
+-
+-#endif /* MUTT_MUTT_WINDOW_H */
+diff --git a/mutt_zstrm.c b/mutt_zstrm.c
+new file mode 100644
+index 000000000..7b1c6cb58
+--- /dev/null
++++ b/mutt_zstrm.c
+@@ -0,0 +1,328 @@
++/**
++ * @file
++ * Zlib compression of network traffic
++ *
++ * Copyright(C) 2019 Fabian Groffen <grobian@gentoo.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++/**
++ * @page zlib Zlib compression of network traffic
++ *
++ * Zlib compression of network traffic
++ */
++
++#include "config.h"
++#include <stdbool.h>
++#include <string.h>
++#include <time.h>
++#include <zconf.h>
++#include <zlib.h>
++#include "mutt/lib.h"
++#include "conn/lib.h"
++#include "mutt_zstrm.h"
++
++/**
++ * struct ZstrmDirection - A stream of data being (de-)compressed
++ */
++struct ZstrmDirection
++{
++ z_stream z; ///< zlib compression handle
++ char *buf; ///< Buffer for data being (de-)compressed
++ unsigned int len; ///< Length of data
++ unsigned int pos; ///< Current position
++ bool conn_eof : 1; ///< Connection end-of-file reached
++ bool stream_eof : 1; ///< Stream end-of-file reached
++};
++
++/**
++ * struct ZstrmContext - Data compression layer
++ */
++struct ZstrmContext
++{
++ struct ZstrmDirection read; ///< Data being read and de-compressed
++ struct ZstrmDirection write; ///< Data being compressed and written
++ struct Connection next_conn; ///< Underlying stream
++};
++
++/**
++ * zstrm_malloc - Redirector function for zlib's malloc()
++ * @param opaque Opaque zlib handle
++ * @param items Number of blocks
++ * @param size Size of blocks
++ * @retval ptr Memory on the heap
++ */
++static void *zstrm_malloc(void *opaque, unsigned int items, unsigned int size)
++{
++ return mutt_mem_calloc(items, size);
++}
++
++/**
++ * zstrm_free - Redirector function for zlib's free()
++ * @param opaque Opaque zlib handle
++ * @param address Memory to free
++ */
++static void zstrm_free(void *opaque, void *address)
++{
++ FREE(&address);
++}
++
++/**
++ * zstrm_open - Open a socket - Implements Connection::open()
++ * @retval -1 Always
++ *
++ * Cannot open a zlib connection, must wrap an existing one
++ */
++static int zstrm_open(struct Connection *conn)
++{
++ return -1;
++}
++
++/**
++ * zstrm_close - Close a socket - Implements Connection::close()
++ */
++static int zstrm_close(struct Connection *conn)
++{
++ struct ZstrmContext *zctx = conn->sockdata;
++
++ int rc = zctx->next_conn.close(&zctx->next_conn);
++
++ mutt_debug(LL_DEBUG5, "read %llu->%llu (%.1fx) wrote %llu<-%llu (%.1fx)\n",
++ zctx->read.z.total_in, zctx->read.z.total_out,
++ (float) zctx->read.z.total_out / (float) zctx->read.z.total_in,
++ zctx->write.z.total_in, zctx->write.z.total_out,
++ (float) zctx->write.z.total_in / (float) zctx->write.z.total_out);
++
++ // Restore the Connection's original functions
++ conn->sockdata = zctx->next_conn.sockdata;
++ conn->open = zctx->next_conn.open;
++ conn->close = zctx->next_conn.close;
++ conn->read = zctx->next_conn.read;
++ conn->write = zctx->next_conn.write;
++ conn->poll = zctx->next_conn.poll;
++
++ inflateEnd(&zctx->read.z);
++ deflateEnd(&zctx->write.z);
++ FREE(&zctx->read.buf);
++ FREE(&zctx->write.buf);
++ FREE(&zctx);
++
++ return rc;
++}
++
++/**
++ * zstrm_read - Read compressed data from a socket - Implements Connection::read()
++ */
++static int zstrm_read(struct Connection *conn, char *buf, size_t len)
++{
++ struct ZstrmContext *zctx = conn->sockdata;
++ int rc = 0;
++ int zrc = 0;
++
++retry:
++ if (zctx->read.stream_eof)
++ return 0;
++
++ /* when avail_out was 0 on last call, we need to call inflate again, because
++ * more data might be available using the current input, so avoid callling
++ * read on the underlying stream in that case (for it might block) */
++ if ((zctx->read.pos == 0) && !zctx->read.conn_eof)
++ {
++ rc = zctx->next_conn.read(&zctx->next_conn, zctx->read.buf, zctx->read.len);
++ mutt_debug(LL_DEBUG5, "consuming data from next stream: %d bytes\n", rc);
++ if (rc < 0)
++ return rc;
++ else if (rc == 0)
++ zctx->read.conn_eof = true;
++ else
++ zctx->read.pos += rc;
++ }
++
++ zctx->read.z.avail_in = (uInt) zctx->read.pos;
++ zctx->read.z.next_in = (Bytef *) zctx->read.buf;
++ zctx->read.z.avail_out = (uInt) len;
++ zctx->read.z.next_out = (Bytef *) buf;
++
++ zrc = inflate(&zctx->read.z, Z_SYNC_FLUSH);
++ mutt_debug(LL_DEBUG5, "rc=%d, consumed %u/%u bytes, produced %u/%u bytes\n",
++ zrc, zctx->read.pos - zctx->read.z.avail_in, zctx->read.pos,
++ len - zctx->read.z.avail_out, len);
++
++ /* shift any remaining input data to the front of the buffer */
++ if ((Bytef *) zctx->read.buf != zctx->read.z.next_in)
++ {
++ memmove(zctx->read.buf, zctx->read.z.next_in, zctx->read.z.avail_in);
++ zctx->read.pos = zctx->read.z.avail_in;
++ }
++
++ switch (zrc)
++ {
++ case Z_OK: /* progress has been made */
++ zrc = len - zctx->read.z.avail_out; /* "returned" bytes */
++ if (zrc == 0)
++ {
++ /* there was progress, so must have been reading input */
++ mutt_debug(LL_DEBUG5, "inflate just consumed\n");
++ goto retry;
++ }
++ break;
++
++ case Z_STREAM_END: /* everything flushed, nothing remaining */
++ mutt_debug(LL_DEBUG5, "inflate returned Z_STREAM_END.\n");
++ zrc = len - zctx->read.z.avail_out; /* "returned" bytes */
++ zctx->read.stream_eof = true;
++ break;
++
++ case Z_BUF_ERROR: /* no progress was possible */
++ if (!zctx->read.conn_eof)
++ {
++ mutt_debug(LL_DEBUG5, "inflate returned Z_BUF_ERROR. retrying.\n");
++ goto retry;
++ }
++ zrc = 0;
++ break;
++
++ default:
++ /* bail on other rcs, such as Z_DATA_ERROR, or Z_MEM_ERROR */
++ mutt_debug(LL_DEBUG5, "inflate returned %d. aborting.\n", zrc);
++ zrc = -1;
++ break;
++ }
++
++ return zrc;
++}
++
++/**
++ * zstrm_poll - Checks whether reads would block - Implements Connection::poll()
++ */
++static int zstrm_poll(struct Connection *conn, time_t wait_secs)
++{
++ struct ZstrmContext *zctx = conn->sockdata;
++
++ mutt_debug(LL_DEBUG5, "%s\n",
++ (zctx->read.z.avail_out == 0) || (zctx->read.pos > 0) ?
++ "last read wrote full buffer" :
++ "falling back on next stream");
++ if ((zctx->read.z.avail_out == 0) || (zctx->read.pos > 0))
++ return 1;
++
++ return zctx->next_conn.poll(&zctx->next_conn, wait_secs);
++}
++
++/**
++ * zstrm_write - Write compressed data to a socket - Implements Connection::write()
++ */
++static int zstrm_write(struct Connection *conn, const char *buf, size_t count)
++{
++ struct ZstrmContext *zctx = conn->sockdata;
++ int rc;
++
++ zctx->write.z.avail_in = (uInt) count;
++ zctx->write.z.next_in = (Bytef *) buf;
++ zctx->write.z.avail_out = (uInt) zctx->write.len;
++ zctx->write.z.next_out = (Bytef *) zctx->write.buf;
++
++ do
++ {
++ int zrc = deflate(&zctx->write.z, Z_PARTIAL_FLUSH);
++ if (zrc == Z_OK)
++ {
++ /* push out produced data to the underlying stream */
++ zctx->write.pos = zctx->write.len - zctx->write.z.avail_out;
++ char *wbufp = zctx->write.buf;
++ mutt_debug(LL_DEBUG5, "deflate consumed %d/%d bytes\n",
++ count - zctx->write.z.avail_in, count);
++ while (zctx->write.pos > 0)
++ {
++ rc = zctx->next_conn.write(&zctx->next_conn, wbufp, zctx->write.pos);
++ mutt_debug(LL_DEBUG5, "next stream wrote: %d bytes\n", rc);
++ if (rc < 0)
++ return -1; /* we can't recover from write failure */
++
++ wbufp += rc;
++ zctx->write.pos -= rc;
++ }
++
++ /* see if there's more for us to do, retry if the output buffer
++ * was full (there may be something in zlib buffers), and retry
++ * when there is still available input data */
++ if ((zctx->write.z.avail_out != 0) && (zctx->write.z.avail_in == 0))
++ break;
++
++ zctx->write.z.avail_out = (uInt) zctx->write.len;
++ zctx->write.z.next_out = (Bytef *) zctx->write.buf;
++ }
++ else
++ {
++ /* compression went wrong, but this is basically impossible
++ * according to the docs */
++ return -1;
++ }
++ } while (true);
++
++ rc = (int) count;
++ return (rc <= 0) ? 1 : rc; /* avoid wrong behaviour due to overflow */
++}
++
++/**
++ * mutt_zstrm_wrap_conn - Wrap a compression layer around a Connection
++ * @param conn Connection to wrap
++ *
++ * Replace the read/write functions with our compression functions.
++ * After reading from the socket, we decompress and pass on the data.
++ * Before writing to a socket, we compress the data.
++ */
++void mutt_zstrm_wrap_conn(struct Connection *conn)
++{
++ struct ZstrmContext *zctx = mutt_mem_calloc(1, sizeof(struct ZstrmContext));
++
++ /* store wrapped stream as next stream */
++ zctx->next_conn.fd = conn->fd;
++ zctx->next_conn.sockdata = conn->sockdata;
++ zctx->next_conn.open = conn->open;
++ zctx->next_conn.close = conn->close;
++ zctx->next_conn.read = conn->read;
++ zctx->next_conn.write = conn->write;
++ zctx->next_conn.poll = conn->poll;
++
++ /* replace connection with our wrappers, where appropriate */
++ conn->sockdata = zctx;
++ conn->open = zstrm_open;
++ conn->read = zstrm_read;
++ conn->write = zstrm_write;
++ conn->close = zstrm_close;
++ conn->poll = zstrm_poll;
++
++ /* allocate/setup (de)compression buffers */
++ zctx->read.len = 8192;
++ zctx->read.buf = mutt_mem_malloc(zctx->read.len);
++ zctx->read.pos = 0;
++ zctx->write.len = 8192;
++ zctx->write.buf = mutt_mem_malloc(zctx->write.len);
++ zctx->write.pos = 0;
++
++ /* initialise zlib for inflate and deflate for RFC4978 */
++ zctx->read.z.zalloc = zstrm_malloc;
++ zctx->read.z.zfree = zstrm_free;
++ zctx->read.z.opaque = NULL;
++ zctx->read.z.avail_out = zctx->read.len;
++ inflateInit2(&zctx->read.z, -15);
++ zctx->write.z.zalloc = zstrm_malloc;
++ zctx->write.z.zfree = zstrm_free;
++ zctx->write.z.opaque = NULL;
++ zctx->write.z.avail_out = zctx->write.len;
++ deflateInit2(&zctx->write.z, Z_DEFAULT_COMPRESSION, Z_DEFLATED, -15, 8, Z_DEFAULT_STRATEGY);
++}
+diff --git a/mutt_zstrm.h b/mutt_zstrm.h
+new file mode 100644
+index 000000000..930efcf3f
+--- /dev/null
++++ b/mutt_zstrm.h
+@@ -0,0 +1,29 @@
++/**
++ * @file
++ * Zlib compression of network traffic
++ *
++ * Copyright(C) 2019 Fabian Groffen <grobian@gentoo.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef MUTT_ZSTRM_H
++#define MUTT_ZSTRM_H
++
++struct Connection;
++
++void mutt_zstrm_wrap_conn(struct Connection *conn);
++
++#endif /* MUTT_ZSTRM_H */
+diff --git a/muttlib.c b/muttlib.c
+index a19713902..47aa7a62e 100644
+--- a/muttlib.c
++++ b/muttlib.c
+@@ -42,30 +42,29 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "muttlib.h"
+ #include "alias.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hook.h"
+-#include "mutt_window.h"
++#include "init.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "protos.h"
++#include "ncrypt/lib.h"
+ #if defined(HAVE_SYSCALL_H)
+ #include <syscall.h>
+ #elif defined(HAVE_SYS_SYSCALL_H)
+ #include <sys/syscall.h>
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+
+ /* These Config Variables are only used in muttlib.c */
+@@ -201,7 +200,7 @@ void mutt_buffer_expand_path_regex(struct Buffer *buf, bool regex)
+ case '=':
+ case '+':
+ {
+- enum MailboxType mb_type = mx_path_probe(C_Folder, NULL);
++ enum MailboxType mb_type = mx_path_probe(C_Folder);
+
+ /* if folder = {host} or imap[s]://host/: don't append slash */
+ if ((mb_type == MUTT_IMAP) && ((C_Folder[strlen(C_Folder) - 1] == '}') ||
+@@ -225,7 +224,7 @@ void mutt_buffer_expand_path_regex(struct Buffer *buf, bool regex)
+ case '@':
+ {
+ struct AddressList *al = mutt_alias_lookup(s + 1);
+- if (!TAILQ_EMPTY(al))
++ if (al && !TAILQ_EMPTY(al))
+ {
+ struct Email *e = email_new();
+ e->env = mutt_env_new();
+@@ -892,7 +891,9 @@ void mutt_expando_format(char *buf, size_t buflen, size_t col, int cols, const c
+
+ prefix[0] = '\0';
+ buflen--; /* save room for the terminal \0 */
+- wlen = ((flags & MUTT_FORMAT_ARROWCURSOR) && C_ArrowCursor) ? 3 : 0;
++ wlen = ((flags & MUTT_FORMAT_ARROWCURSOR) && C_ArrowCursor) ?
++ mutt_strwidth(C_ArrowString) + 1 :
++ 0;
+ col += wlen;
+
+ if ((flags & MUTT_FORMAT_NOFILTER) == 0)
+@@ -963,14 +964,14 @@ void mutt_expando_format(char *buf, size_t buflen, size_t col, int cols, const c
+
+ col -= wlen; /* reset to passed in value */
+ wptr = buf; /* reset write ptr */
+- pid_t pid = mutt_create_filter(cmd.data, NULL, &fp_filter, NULL);
++ pid_t pid = filter_create(cmd.data, NULL, &fp_filter, NULL);
+ if (pid != -1)
+ {
+ int rc;
+
+ n = fread(buf, 1, buflen /* already decremented */, fp_filter);
+ mutt_file_fclose(&fp_filter);
+- rc = mutt_wait_filter(pid);
++ rc = filter_wait(pid);
+ if (rc != 0)
+ mutt_debug(LL_DEBUG1, "format pipe cmd exited code %d\n", rc);
+ if (n > 0)
+@@ -1241,7 +1242,9 @@ void mutt_expando_format(char *buf, size_t buflen, size_t col, int cols, const c
+ }
+ else if (soft)
+ {
+- int offset = ((flags & MUTT_FORMAT_ARROWCURSOR) && C_ArrowCursor) ? 3 : 0;
++ int offset = ((flags & MUTT_FORMAT_ARROWCURSOR) && C_ArrowCursor) ?
++ mutt_strwidth(C_ArrowString) + 1 :
++ 0;
+ int avail_cols = (cols > offset) ? (cols - offset) : 0;
+ /* \0-terminate buf for length computation in mutt_wstr_trunc() */
+ *wptr = '\0';
+@@ -1420,7 +1423,7 @@ FILE *mutt_open_read(const char *path, pid_t *thepid)
+
+ p[len - 1] = 0;
+ mutt_endwin();
+- *thepid = mutt_create_filter(p, NULL, &fp, NULL);
++ *thepid = filter_create(p, NULL, &fp, NULL);
+ FREE(&p);
+ }
+ else
+@@ -1450,7 +1453,7 @@ int mutt_save_confirm(const char *s, struct stat *st)
+ {
+ int ret = 0;
+
+- enum MailboxType magic = mx_path_probe(s, NULL);
++ enum MailboxType magic = mx_path_probe(s);
+
+ #ifdef USE_POP
+ if (magic == MUTT_POP)
+@@ -1565,46 +1568,29 @@ const char *mutt_make_version(void)
+ }
+
+ /**
+- * mutt_encode_path - Convert a path into the user's preferred character set
+- * @param buf Buffer for the result
+- * @param buflen Length of buffer
+- * @param src Path to convert (OPTIONAL)
++ * mutt_encode_path - Convert a path to 'us-ascii'
++ * @param buf Buffer for the result
++ * @param src Path to convert (OPTIONAL)
+ *
+ * If `src` is NULL, the path in `buf` will be converted in-place.
+ */
+-void mutt_encode_path(char *buf, size_t buflen, const char *src)
++void mutt_encode_path(struct Buffer *buf, const char *src)
+ {
+ char *p = mutt_str_strdup(src);
+ int rc = mutt_ch_convert_string(&p, C_Charset, "us-ascii", 0);
+- /* 'src' may be NULL, such as when called from the pop3 driver. */
+- size_t len = mutt_str_strfcpy(buf, (rc == 0) ? p : src, buflen);
++ size_t len = mutt_buffer_strcpy(buf, (rc == 0) ? NONULL(p) : NONULL(src));
+
+ /* convert the path to POSIX "Portable Filename Character Set" */
+ for (size_t i = 0; i < len; i++)
+ {
+- if (!isalnum(buf[i]) && !strchr("/.-_", buf[i]))
++ if (!isalnum(buf->data[i]) && !strchr("/.-_", buf->data[i]))
+ {
+- buf[i] = '_';
++ buf->data[i] = '_';
+ }
+ }
+ FREE(&p);
+ }
+
+-/**
+- * mutt_buffer_encode_path - Convert a path into the user's preferred character set
+- * @param buf Buffer for the result
+- * @param src Path to convert (OPTIONAL)
+- *
+- * If `src` is NULL, the path in `buf` will be converted in-place.
+- */
+-void mutt_buffer_encode_path(struct Buffer *buf, const char *src)
+-{
+- char *p = mutt_str_strdup(src);
+- int rc = mutt_ch_convert_string(&p, C_Charset, "utf-8", 0);
+- mutt_buffer_strcpy(buf, (rc == 0) ? NONULL(p) : NONULL(src));
+- FREE(&p);
+-}
+-
+ /**
+ * mutt_set_xdg_path - Find an XDG path or its fallback
+ * @param type Type of XDG variable, e.g. #XDG_CONFIG_HOME
+@@ -1655,7 +1641,7 @@ int mutt_set_xdg_path(enum XdgType type, char *buf, size_t bufsize)
+ */
+ void mutt_get_parent_path(const char *path, char *buf, size_t buflen)
+ {
+- enum MailboxType mb_magic = mx_path_probe(path, NULL);
++ enum MailboxType mb_magic = mx_path_probe(path);
+
+ if (mb_magic == MUTT_IMAP)
+ imap_get_parent_path(path, buf, buflen);
+@@ -1809,3 +1795,55 @@ void mutt_str_pretty_size(char *buf, size_t buflen, size_t num)
+ snprintf(buf, buflen, C_SizeUnitsOnLeft ? ("M%zu") : ("%zuM"), (num + 52428) / 1048576);
+ }
+ }
++
++/**
++ * add_to_stailq - Add a string to a list
++ * @param head String list
++ * @param str String to add
++ *
++ * @note Duplicate or empty strings will not be added
++ */
++void add_to_stailq(struct ListHead *head, const char *str)
++{
++ /* don't add a NULL or empty string to the list */
++ if (!str || (*str == '\0'))
++ return;
++
++ /* check to make sure the item is not already on this list */
++ struct ListNode *np = NULL;
++ STAILQ_FOREACH(np, head, entries)
++ {
++ if (mutt_str_strcasecmp(str, np->data) == 0)
++ {
++ return;
++ }
++ }
++ mutt_list_insert_tail(head, mutt_str_strdup(str));
++}
++
++/**
++ * remove_from_stailq - Remove an item, matching a string, from a List
++ * @param head Head of the List
++ * @param str String to match
++ *
++ * @note The string comparison is case-insensitive
++ */
++void remove_from_stailq(struct ListHead *head, const char *str)
++{
++ if (mutt_str_strcmp("*", str) == 0)
++ mutt_list_free(head); /* "unCMD *" means delete all current entries */
++ else
++ {
++ struct ListNode *np = NULL, *tmp = NULL;
++ STAILQ_FOREACH_SAFE(np, head, entries, tmp)
++ {
++ if (mutt_str_strcasecmp(str, np->data) == 0)
++ {
++ STAILQ_REMOVE(head, np, ListNode, entries);
++ FREE(&np->data);
++ FREE(&np);
++ break;
++ }
++ }
++ }
++}
+diff --git a/muttlib.h b/muttlib.h
+index 6a7d16469..f8c3f825a 100644
+--- a/muttlib.h
++++ b/muttlib.h
+@@ -34,6 +34,7 @@
+ struct Address;
+ struct Body;
+ struct Buffer;
++struct ListHead;
+ struct passwd;
+ struct stat;
+
+@@ -42,14 +43,13 @@ extern struct Regex *C_GecosMask;
+
+ void mutt_adv_mktemp(struct Buffer *buf);
+ void mutt_buffer_mktemp_full(struct Buffer *buf, const char *prefix, const char *suffix, const char *src, int line);
+-void mutt_buffer_encode_path(struct Buffer *buf, const char *src);
+ void mutt_buffer_expand_path(struct Buffer *buf);
+ void mutt_buffer_expand_path_regex(struct Buffer *buf, bool regex);
+ void mutt_buffer_pretty_mailbox(struct Buffer *s);
+ void mutt_buffer_sanitize_filename (struct Buffer *buf, const char *path, short slash);
+ void mutt_buffer_save_path(struct Buffer *dest, const struct Address *a);
+ int mutt_check_overwrite(const char *attname, const char *path, struct Buffer *fname, enum SaveAttach *opt, char **directory);
+-void mutt_encode_path(char *dest, size_t dlen, const char *src);
++void mutt_encode_path(struct Buffer *buf, const char *src);
+ void mutt_expando_format(char *buf, size_t buflen, size_t col, int cols, const char *src, format_t *callback, unsigned long data, MuttFormatFlags flags);
+ char * mutt_expand_path(char *s, size_t slen);
+ char * mutt_expand_path_regex(char *buf, size_t buflen, bool regex);
+@@ -72,6 +72,9 @@ void mutt_save_path(char *d, size_t dsize, const struct Address *a);
+ void mutt_sleep(short s);
+ void mutt_str_pretty_size(char *buf, size_t buflen, size_t num);
+
++void add_to_stailq (struct ListHead *head, const char *str);
++void remove_from_stailq(struct ListHead *head, const char *str);
++
+ #define mutt_mktemp(buf, buflen) mutt_mktemp_pfx_sfx(buf, buflen, "neomutt", NULL)
+ #define mutt_mktemp_pfx_sfx(buf, buflen, prefix, suffix) mutt_mktemp_full(buf, buflen, prefix, suffix, __FILE__, __LINE__)
+
+diff --git a/mx.c b/mx.c
+index 8b642e95e..95f73b8b9 100644
+--- a/mx.c
++++ b/mx.c
+@@ -36,7 +36,7 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+@@ -47,9 +47,8 @@
+ #include "copy.h"
+ #include "globals.h"
+ #include "hook.h"
++#include "init.h"
+ #include "keymap.h"
+-#include "maildir/lib.h"
+-#include "mbox/mbox.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_mailbox.h"
+@@ -58,20 +57,22 @@
+ #include "options.h"
+ #include "protos.h"
+ #include "sort.h"
++#include "maildir/lib.h"
++#include "mbox/lib.h"
+ #ifdef USE_COMPRESSED
+-#include "compress.h"
++#include "compress/lib.h"
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_POP
+-#include "pop/pop.h"
++#include "pop/lib.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+@@ -103,7 +104,7 @@ struct EnumDef MagicDef = {
+ /**
+ * mx_ops - All the Mailbox backends
+ */
+-static const struct MxOps *mx_ops[] = {
++const struct MxOps *mx_ops[] = {
+ /* These mailboxes can be recognised by their Url scheme */
+ #ifdef USE_IMAP
+ &MxImapOps,
+@@ -193,7 +194,7 @@ static int mx_open_mailbox_append(struct Mailbox *m, OpenMailboxFlags flags)
+ m->append = true;
+ if ((m->magic == MUTT_UNKNOWN) || (m->magic == MUTT_MAILBOX_ERROR))
+ {
+- m->magic = mx_path_probe(mailbox_path(m), NULL);
++ m->magic = mx_path_probe(mailbox_path(m));
+
+ if (m->magic == MUTT_UNKNOWN)
+ {
+@@ -259,10 +260,10 @@ struct Context *mx_mbox_open(struct Mailbox *m, OpenMailboxFlags flags)
+ ctx->mailbox = m;
+
+ struct EventContext ev_ctx = { ctx };
+- notify_send(ctx->notify, NT_CONTEXT, NT_CONTEXT_OPEN, IP & ev_ctx);
++ notify_send(ctx->notify, NT_CONTEXT, NT_CONTEXT_OPEN, &ev_ctx);
+
+ // If the Mailbox is closed, Context->mailbox must be set to NULL
+- notify_observer_add(m->notify, NT_MAILBOX, 0, ctx_mailbox_observer, IP ctx);
++ notify_observer_add(m->notify, ctx_mailbox_observer, ctx);
+
+ if ((m->magic == MUTT_UNKNOWN) && (flags & (MUTT_NEWFOLDER | MUTT_APPEND)))
+ {
+@@ -326,7 +327,7 @@ struct Context *mx_mbox_open(struct Mailbox *m, OpenMailboxFlags flags)
+
+ if (m->magic == MUTT_UNKNOWN)
+ {
+- m->magic = mx_path_probe(mailbox_path(m), NULL);
++ m->magic = mx_path_probe(mailbox_path(m));
+ m->mx_ops = mx_get_ops(m->magic);
+ }
+
+@@ -460,10 +461,14 @@ static int sync_mailbox(struct Mailbox *m, int *index_hint)
+ }
+
+ int rc = m->mx_ops->mbox_sync(m, index_hint);
+- if ((rc != 0) && !m->quiet)
++ if (rc != 0)
+ {
+- /* L10N: Displayed if a mailbox sync fails */
+- mutt_error(_("Unable to write %s"), mailbox_path(m));
++ mutt_debug(LL_DEBUG2, "mbox_sync returned: %d\n", rc);
++ if ((rc < 0) && !m->quiet)
++ {
++ /* L10N: Displayed if a mailbox sync fails */
++ mutt_error(_("Unable to write %s"), mailbox_path(m));
++ }
+ }
+
+ return rc;
+@@ -537,12 +542,10 @@ static int trash_append(struct Mailbox *m)
+ #endif
+
+ struct Mailbox *m_trash = mx_path_resolve(C_Trash);
++ const bool old_append = m_trash->append;
+ struct Context *ctx_trash = mx_mbox_open(m_trash, MUTT_APPEND);
+ if (ctx_trash)
+ {
+- bool old_append = m_trash->append;
+- m_trash->append = true;
+-
+ /* continue from initial scan above */
+ for (int i = first_del; i < m->msg_count; i++)
+ {
+@@ -554,15 +557,15 @@ static int trash_append(struct Mailbox *m)
+ {
+ if (mutt_append_message(ctx_trash->mailbox, m, e, MUTT_CM_NO_FLAGS, CH_NO_FLAGS) == -1)
+ {
+- m_trash->append = old_append;
+ mx_mbox_close(&ctx_trash);
++ m_trash->append = old_append;
+ return -1;
+ }
+ }
+ }
+
+- m_trash->append = old_append;
+ mx_mbox_close(&ctx_trash);
++ m_trash->append = old_append;
+ }
+ else
+ {
+@@ -577,9 +580,13 @@ static int trash_append(struct Mailbox *m)
+ /**
+ * mx_mbox_close - Save changes and close mailbox
+ * @param[out] ptr Mailbox
++ * @retval #MUTT_REOPENED mailbox has been externally modified
++ * @retval #MUTT_NEW_MAIL new mail has arrived
+ * @retval 0 Success
+ * @retval -1 Failure
+ *
++ * @note The flag retvals come from a call to a backend sync function
++ *
+ * @note Context will be freed after it's closed
+ */
+ int mx_mbox_close(struct Context **ptr)
+@@ -711,7 +718,8 @@ int mx_mbox_close(struct Context **ptr)
+
+ if ((m->magic == MUTT_IMAP) && (imap_path_probe(mutt_b2s(mbox), NULL) == MUTT_IMAP))
+ {
+- /* tag messages for moving, and clear old tags, if any */
++ /* add messages for moving, and clear old tags, if any */
++ struct EmailList el = STAILQ_HEAD_INITIALIZER(el);
+ for (i = 0; i < m->msg_count; i++)
+ {
+ struct Email *e = m->emails[i];
+@@ -719,12 +727,16 @@ int mx_mbox_close(struct Context **ptr)
+ break;
+
+ if (e->read && !e->deleted && !(e->flagged && C_KeepFlagged))
++ {
+ e->tagged = true;
++ emaillist_add_email(&el, e);
++ }
+ else
+ e->tagged = false;
+ }
+
+- i = imap_copy_messages(ctx->mailbox, NULL, mutt_b2s(mbox), true);
++ i = imap_copy_messages(ctx->mailbox, &el, mutt_b2s(mbox), true);
++ emaillist_clear(&el);
+ }
+
+ if (i == 0) /* success */
+@@ -791,7 +803,10 @@ int mx_mbox_close(struct Context **ptr)
+ {
+ int check = imap_sync_mailbox(ctx->mailbox, (purge != MUTT_NO), true);
+ if (check != 0)
++ {
++ rc = check;
+ goto cleanup;
++ }
+ }
+ else
+ #endif
+@@ -814,7 +829,10 @@ int mx_mbox_close(struct Context **ptr)
+ {
+ int check = sync_mailbox(ctx->mailbox, NULL);
+ if (check != 0)
++ {
++ rc = check;
+ goto cleanup;
++ }
+ }
+ }
+
+@@ -871,8 +889,12 @@ int mx_mbox_close(struct Context **ptr)
+ * mx_mbox_sync - Save changes to mailbox
+ * @param[in] m Mailbox
+ * @param[out] index_hint Currently selected Email
++ * @retval #MUTT_REOPENED mailbox has been externally modified
++ * @retval #MUTT_NEW_MAIL new mail has arrived
+ * @retval 0 Success
+ * @retval -1 Error
++ *
++ * @note The flag retvals come from a call to a backend sync function
+ */
+ int mx_mbox_sync(struct Mailbox *m, int *index_hint)
+ {
+@@ -935,7 +957,7 @@ int mx_mbox_sync(struct Mailbox *m, int *index_hint)
+ m->msg_deleted = 0;
+ }
+ }
+- mailbox_changed(m, MBN_UNTAG);
++ mailbox_changed(m, NT_MAILBOX_UNTAG);
+ }
+
+ /* really only for IMAP - imap_sync_mailbox results in a call to
+@@ -992,8 +1014,8 @@ int mx_mbox_sync(struct Mailbox *m, int *index_hint)
+ /* IMAP does this automatically after handling EXPUNGE */
+ if (m->magic != MUTT_IMAP)
+ {
+- mailbox_changed(m, MBN_UPDATE);
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_UPDATE);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ }
+ }
+ }
+@@ -1079,7 +1101,7 @@ int mx_mbox_check(struct Mailbox *m, int *index_hint)
+
+ int rc = m->mx_ops->mbox_check(m, index_hint);
+ if ((rc == MUTT_NEW_MAIL) || (rc == MUTT_REOPENED))
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+
+ return rc;
+ }
+@@ -1202,7 +1224,7 @@ void mx_alloc_memory(struct Mailbox *m)
+ */
+ int mx_check_empty(const char *path)
+ {
+- switch (mx_path_probe(path, NULL))
++ switch (mx_path_probe(path))
+ {
+ case MUTT_MBOX:
+ case MUTT_MMDF:
+@@ -1283,59 +1305,39 @@ bool mx_tags_is_supported(struct Mailbox *m)
+
+ /**
+ * mx_path_probe - Find a mailbox that understands a path
+- * @param[in] path Path to examine
+- * @param[out] st stat buffer (OPTIONAL, for local mailboxes)
++ * @param path Path to examine
+ * @retval num Type, e.g. #MUTT_IMAP
+ */
+-enum MailboxType mx_path_probe(const char *path, struct stat *st)
++enum MailboxType mx_path_probe(const char *path)
+ {
+ if (!path)
+ return MUTT_UNKNOWN;
+
+- static const struct MxOps *no_stat[] = {
+-#ifdef USE_IMAP
+- &MxImapOps,
+-#endif
+-#ifdef USE_NOTMUCH
+- &MxNotmuchOps,
+-#endif
+-#ifdef USE_POP
+- &MxPopOps,
+-#endif
+-#ifdef USE_NNTP
+- &MxNntpOps,
+-#endif
+- };
+-
+- static const struct MxOps *with_stat[] = {
+- &MxMaildirOps, &MxMboxOps, &MxMhOps, &MxMmdfOps,
+-#ifdef USE_COMPRESSED
+- &MxCompOps,
+-#endif
+- };
+-
+ enum MailboxType rc;
+
+- for (size_t i = 0; i < mutt_array_size(no_stat); i++)
++ // First, search the non-local Mailbox types (is_local == false)
++ for (const struct MxOps **ops = mx_ops; *ops; ops++)
+ {
+- rc = no_stat[i]->path_probe(path, NULL);
++ if ((*ops)->is_local)
++ continue;
++ rc = (*ops)->path_probe(path, NULL);
+ if (rc != MUTT_UNKNOWN)
+ return rc;
+ }
+
+- struct stat st2 = { 0 };
+- if (!st)
+- st = &st2;
+-
+- if (stat(path, st) != 0)
++ struct stat st = { 0 };
++ if (stat(path, &st) != 0)
+ {
+ mutt_debug(LL_DEBUG1, "unable to stat %s: %s (errno %d)\n", path, strerror(errno), errno);
+ return MUTT_UNKNOWN;
+ }
+
+- for (size_t i = 0; i < mutt_array_size(with_stat); i++)
++ // Next, search the local Mailbox types (is_local == true)
++ for (const struct MxOps **ops = mx_ops; *ops; ops++)
+ {
+- rc = with_stat[i]->path_probe(path, st);
++ if (!(*ops)->is_local)
++ continue;
++ rc = (*ops)->path_probe(path, &st);
+ if (rc != MUTT_UNKNOWN)
+ return rc;
+ }
+@@ -1405,7 +1407,7 @@ int mx_path_canon(char *buf, size_t buflen, const char *folder, enum MailboxType
+ {
+ /* elm compatibility, @ expands alias to user name */
+ struct AddressList *al = mutt_alias_lookup(buf + 1);
+- if (TAILQ_EMPTY(al))
++ if (!al || TAILQ_EMPTY(al))
+ break;
+
+ struct Email *e = email_new();
+@@ -1425,7 +1427,7 @@ int mx_path_canon(char *buf, size_t buflen, const char *folder, enum MailboxType
+ // if (!folder) //XXX - use inherited version, or pass NULL to backend?
+ // return -1;
+
+- enum MailboxType magic2 = mx_path_probe(buf, NULL);
++ enum MailboxType magic2 = mx_path_probe(buf);
+ if (magic)
+ *magic = magic2;
+ const struct MxOps *ops = mx_get_ops(magic2);
+@@ -1434,15 +1436,18 @@ int mx_path_canon(char *buf, size_t buflen, const char *folder, enum MailboxType
+
+ if (ops->path_canon(buf, buflen) < 0)
+ {
+- mutt_path_canon(buf, buflen, HomeDir);
++ mutt_path_canon(buf, buflen, HomeDir, true);
+ }
+
+ return 0;
+ }
+
+ /**
+- * mx_path_canon2 - XXX
+- * canonicalise the path to realpath
++ * mx_path_canon2 - Canonicalise the path to realpath
++ * @param m Mailbox
++ * @param folder Path to canonicalise
++ * @retval 0 Success
++ * @retval -1 Failure
+ */
+ int mx_path_canon2(struct Mailbox *m, const char *folder)
+ {
+@@ -1474,7 +1479,7 @@ int mx_path_canon2(struct Mailbox *m, const char *folder)
+ */
+ int mx_path_pretty(char *buf, size_t buflen, const char *folder)
+ {
+- enum MailboxType magic = mx_path_probe(buf, NULL);
++ enum MailboxType magic = mx_path_probe(buf);
+ const struct MxOps *ops = mx_get_ops(magic);
+ if (!ops)
+ return -1;
+@@ -1522,7 +1527,10 @@ int mx_msg_padding_size(struct Mailbox *m)
+ }
+
+ /**
+- * mx_ac_find - XXX
++ * mx_ac_find - Find the Account owning a Mailbox
++ * @param m Mailbox
++ * @retval ptr Account
++ * @retval NULL None found
+ */
+ struct Account *mx_ac_find(struct Mailbox *m)
+ {
+@@ -1543,9 +1551,10 @@ struct Account *mx_ac_find(struct Mailbox *m)
+ }
+
+ /**
+- * mx_mbox_find - XXX
+- *
+- * find a mailbox on an account
++ * mx_mbox_find - Find a Mailbox on an Account
++ * @param a Account to search
++ * @param path Path to find
++ * @retval ptr Mailbox
+ */
+ struct Mailbox *mx_mbox_find(struct Account *a, const char *path)
+ {
+@@ -1553,19 +1562,61 @@ struct Mailbox *mx_mbox_find(struct Account *a, const char *path)
+ return NULL;
+
+ struct MailboxNode *np = NULL;
++ struct Url *url_p = NULL;
++ struct Url *url_a = NULL;
++
++ const bool use_url = (a->magic == MUTT_IMAP);
++ if (use_url)
++ {
++ url_p = url_parse(path);
++ if (!url_p)
++ goto done;
++ }
++
+ STAILQ_FOREACH(np, &a->mailboxes, entries)
+ {
+- if (mutt_str_strcmp(np->mailbox->realpath, path) == 0)
+- return np->mailbox;
++ if (!use_url)
++ {
++ if (mutt_str_strcmp(np->mailbox->realpath, path) == 0)
++ return np->mailbox;
++ continue;
++ }
++
++ url_free(&url_a);
++ url_a = url_parse(np->mailbox->realpath);
++ if (!url_a)
++ continue;
++
++ if (mutt_str_strcasecmp(url_a->host, url_p->host) != 0)
++ continue;
++ if (url_p->user && (mutt_str_strcasecmp(url_a->user, url_p->user) != 0))
++ continue;
++ if (a->magic == MUTT_IMAP)
++ {
++ if (imap_mxcmp(url_a->path, url_p->path) == 0)
++ break;
++ }
++ else
++ {
++ if (mutt_str_strcmp(url_a->path, url_p->path) == 0)
++ break;
++ }
+ }
+
+- return NULL;
++done:
++ url_free(&url_p);
++ url_free(&url_a);
++
++ if (!np)
++ return NULL;
++ return np->mailbox;
+ }
+
+ /**
+- * mx_mbox_find2 - XXX
+- *
+- * find a mailbox on an account
++ * mx_mbox_find2 - Find a Mailbox on an Account
++ * @param path Path to find
++ * @retval ptr Mailbox
++ * @retval NULL No match
+ */
+ struct Mailbox *mx_mbox_find2(const char *path)
+ {
+@@ -1588,7 +1639,11 @@ struct Mailbox *mx_mbox_find2(const char *path)
+ }
+
+ /**
+- * mx_path_resolve - XXX
++ * mx_path_resolve - Get a Mailbox for a path
++ * @param path Mailbox path
++ * @retval ptr Mailbox
++ *
++ * If there isn't a Mailbox for the path, one will be created.
+ */
+ struct Mailbox *mx_path_resolve(const char *path)
+ {
+diff --git a/mx.h b/mx.h
+index 9a0e73284..0b6cf6614 100644
+--- a/mx.h
++++ b/mx.h
+@@ -36,6 +36,8 @@ struct Email;
+ struct Context;
+ struct stat;
+
++extern const struct MxOps *mx_ops[];
++
+ /* These Config Variables are only used in mx.c */
+ extern unsigned char C_CatchupNewsgroup;
+ extern bool C_KeepFlagged;
+@@ -104,6 +106,7 @@ struct MxOps
+ {
+ enum MailboxType magic; ///< Mailbox type, e.g. #MUTT_IMAP
+ const char *name; ///< Mailbox name, e.g. "imap"
++ bool is_local; ///< True, if Mailbox type has local files/dirs
+
+ /**
+ * ac_find - Find an Account that matches a Mailbox path
+@@ -287,7 +290,7 @@ int mx_path_canon (char *buf, size_t buflen, const char *folder
+ int mx_path_canon2 (struct Mailbox *m, const char *folder);
+ int mx_path_parent (char *buf, size_t buflen);
+ int mx_path_pretty (char *buf, size_t buflen, const char *folder);
+-enum MailboxType mx_path_probe (const char *path, struct stat *st);
++enum MailboxType mx_path_probe (const char *path);
+ struct Mailbox *mx_path_resolve (const char *path);
+ int mx_tags_commit (struct Mailbox *m, struct Email *e, char *tags);
+ int mx_tags_edit (struct Mailbox *m, const char *tags, char *buf, size_t buflen);
+diff --git a/myvar.c b/myvar.c
+index bb0d1810d..48ab6bc89 100644
+--- a/myvar.c
++++ b/myvar.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stddef.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "myvar.h"
+
+ struct MyVarList MyVars = TAILQ_HEAD_INITIALIZER(MyVars);
+diff --git a/myvar.h b/myvar.h
+index 26b640681..7e6a68f06 100644
+--- a/myvar.h
++++ b/myvar.h
+@@ -23,7 +23,7 @@
+ #ifndef MUTT_MYVAR_H
+ #define MUTT_MYVAR_H
+
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ /**
+ * struct MyVar - A user-set variable
+diff --git a/ncrypt/crypt.c b/ncrypt/crypt.c
+index e4ea1bdad..cd3af2dd7 100644
+--- a/ncrypt/crypt.c
++++ b/ncrypt/crypt.c
+@@ -37,29 +37,28 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "crypt.h"
+ #include "alias.h"
+ #include "copy.h"
+ #include "cryptglue.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "handler.h"
+-#include "mutt_curses.h"
++#include "init.h"
+ #include "mutt_parse.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "options.h"
+ #include "send.h"
+ #include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ struct Mailbox;
+@@ -291,6 +290,12 @@ int mutt_protect(struct Email *e, char *keylist, bool postpone)
+
+ mutt_env_free(&e->content->mime_headers);
+ e->content->mime_headers = protected_headers;
++ /* Optional part of the draft RFC, but required by Enigmail */
++ mutt_param_set(&e->content->parameter, "protected-headers", "v1");
++ }
++ else
++ {
++ mutt_param_delete(&e->content->parameter, "protected-headers");
+ }
+
+ /* A note about e->content->mime_headers. If postpone or send
+@@ -315,7 +320,7 @@ int mutt_protect(struct Email *e, char *keylist, bool postpone)
+ {
+ if (((WithCrypto & APPLICATION_SMIME) != 0) && (security & APPLICATION_SMIME))
+ {
+- tmp_pbody = crypt_smime_sign_message(e->content);
++ tmp_pbody = crypt_smime_sign_message(e->content, &e->env->from);
+ if (!tmp_pbody)
+ goto bail;
+ pbody = tmp_pbody;
+@@ -325,7 +330,7 @@ int mutt_protect(struct Email *e, char *keylist, bool postpone)
+ if (((WithCrypto & APPLICATION_PGP) != 0) && (security & APPLICATION_PGP) &&
+ (!(security & (SEC_ENCRYPT | SEC_AUTOCRYPT)) || C_PgpRetainableSigs))
+ {
+- tmp_pbody = crypt_pgp_sign_message(e->content);
++ tmp_pbody = crypt_pgp_sign_message(e->content, &e->env->from);
+ if (!tmp_pbody)
+ goto bail;
+
+@@ -365,7 +370,7 @@ int mutt_protect(struct Email *e, char *keylist, bool postpone)
+
+ if (((WithCrypto & APPLICATION_PGP) != 0) && (security & APPLICATION_PGP))
+ {
+- pbody = crypt_pgp_encrypt_message(e, tmp_pgp_pbody, keylist, sign);
++ pbody = crypt_pgp_encrypt_message(e, tmp_pgp_pbody, keylist, sign, &e->env->from);
+ if (!pbody)
+ {
+ /* did we perform a retainable signature? */
+@@ -1239,8 +1244,10 @@ int mutt_signed_handler(struct Body *a, struct State *s)
+ FREE(&signatures);
+ }
+ else
++ {
+ state_attach_puts(s,
+ _("[-- Warning: Can't find any signatures. --]\n\n"));
++ }
+ }
+
+ rc = mutt_body_handler(a, s);
+diff --git a/ncrypt/crypt_gpgme.c b/ncrypt/crypt_gpgme.c
+index 8e1b9d54b..b634f36ea 100644
+--- a/ncrypt/crypt_gpgme.c
++++ b/ncrypt/crypt_gpgme.c
+@@ -50,15 +50,15 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "crypt_gpgme.h"
+ #include "alias.h"
+ #include "crypt.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "handler.h"
+@@ -67,9 +67,7 @@
+ #include "mutt_attach.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "pager.h"
+@@ -78,6 +76,7 @@
+ #include "sendlib.h"
+ #include "sort.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+@@ -1166,48 +1165,34 @@ static gpgme_key_t *create_recipient_set(const char *keylist, bool use_smime)
+ #endif /* GPGME_VERSION_NUMBER >= 0x010b00 */
+
+ /**
+- * set_signer - Make sure that the correct signer is set
++ * set_signer_from_address - Try to set the context's signer from the address
+ * @param ctx GPGME handle
++ * @param address Address to try to set as a signer
+ * @param for_smime Use S/MIME
+- * @retval 0 Success
+- * @retval -1 Error
++ * @retval true Address was set as a signer
++ * @retval false Address could not be set as a signer
+ */
+-static int set_signer(gpgme_ctx_t ctx, bool for_smime)
++static bool set_signer_from_address(gpgme_ctx_t ctx, const char *address, bool for_smime)
+ {
+- char *signid = NULL;
+ gpgme_error_t err;
+- gpgme_ctx_t listctx = NULL;
+ gpgme_key_t key = NULL, key2 = NULL;
+- char *fpr = NULL, *fpr2 = NULL;
+-
+- if (for_smime)
+- signid = C_SmimeSignAs ? C_SmimeSignAs : C_SmimeDefaultKey;
+-#ifdef USE_AUTOCRYPT
+- else if (OptAutocryptGpgme)
+- signid = AutocryptSignAs;
+-#endif
+- else
+- signid = C_PgpSignAs ? C_PgpSignAs : C_PgpDefaultKey;
+-
+- if (!signid)
+- return 0;
+-
+- listctx = create_gpgme_context(for_smime);
+- err = gpgme_op_keylist_start(listctx, signid, 1);
++ gpgme_ctx_t listctx = create_gpgme_context(for_smime);
++ err = gpgme_op_keylist_start(listctx, address, 1);
+ if (err == 0)
+ err = gpgme_op_keylist_next(listctx, &key);
+ if (err)
+ {
+ gpgme_release(listctx);
+- mutt_error(_("secret key '%s' not found: %s"), signid, gpgme_strerror(err));
+- return -1;
++ mutt_error(_("secret key '%s' not found: %s"), address, gpgme_strerror(err));
++ return false;
+ }
+- fpr = "fpr1";
++
++ char *fpr = "fpr1";
+ if (key->subkeys)
+ fpr = key->subkeys->fpr ? key->subkeys->fpr : key->subkeys->keyid;
+ while (gpgme_op_keylist_next(listctx, &key2) == 0)
+ {
+- fpr2 = "fpr2";
++ char *fpr2 = "fpr2";
+ if (key2->subkeys)
+ fpr2 = key2->subkeys->fpr ? key2->subkeys->fpr : key2->subkeys->keyid;
+ if (mutt_str_strcmp(fpr, fpr2))
+@@ -1215,8 +1200,8 @@ static int set_signer(gpgme_ctx_t ctx, bool for_smime)
+ gpgme_key_unref(key);
+ gpgme_key_unref(key2);
+ gpgme_release(listctx);
+- mutt_error(_("ambiguous specification of secret key '%s'\n"), signid);
+- return -1;
++ mutt_error(_("ambiguous specification of secret key '%s'\n"), address);
++ return false;
+ }
+ else
+ {
+@@ -1231,10 +1216,53 @@ static int set_signer(gpgme_ctx_t ctx, bool for_smime)
+ gpgme_key_unref(key);
+ if (err)
+ {
+- mutt_error(_("error setting secret key '%s': %s"), signid, gpgme_strerror(err));
+- return -1;
++ mutt_error(_("error setting secret key '%s': %s"), address, gpgme_strerror(err));
++ return false;
+ }
+- return 0;
++ return true;
++}
++
++/**
++ * set_signer - Make sure that the correct signer is set
++ * @param ctx GPGME handle
++ * @param al From AddressList
++ * @param for_smime Use S/MIME
++ * @retval 0 Success
++ * @retval -1 Error
++ */
++static int set_signer(gpgme_ctx_t ctx, const struct AddressList *al, bool for_smime)
++{
++ char *signid = NULL;
++
++ if (for_smime)
++ signid = C_SmimeSignAs ? C_SmimeSignAs : C_SmimeDefaultKey;
++#ifdef USE_AUTOCRYPT
++ else if (OptAutocryptGpgme)
++ signid = AutocryptSignAs;
++#endif
++ else
++ signid = C_PgpSignAs ? C_PgpSignAs : C_PgpDefaultKey;
++
++ /* Try getting the signing key from config entries */
++ if (signid && set_signer_from_address(ctx, signid, for_smime))
++ {
++ return 0;
++ }
++
++ /* Try getting the signing key from the From line */
++ if (al)
++ {
++ struct Address *a;
++ TAILQ_FOREACH(a, al, entries)
++ {
++ if (a->mailbox && set_signer_from_address(ctx, a->mailbox, for_smime))
++ {
++ return 0;
++ }
++ }
++ }
++
++ return (!signid && !al) ? 0 : -1;
+ }
+
+ /**
+@@ -1259,10 +1287,11 @@ static gpgme_error_t set_pka_sig_notation(gpgme_ctx_t ctx)
+ * @param keylist List of keys to encrypt to
+ * @param use_smime If true, use SMIME
+ * @param combined_signed If true, sign and encrypt the message (PGP only)
++ * @param from The From header line
+ * @retval ptr Name of temporary file containing encrypted text
+ */
+-static char *encrypt_gpgme_object(gpgme_data_t plaintext, char *keylist,
+- bool use_smime, bool combined_signed)
++static char *encrypt_gpgme_object(gpgme_data_t plaintext, char *keylist, bool use_smime,
++ bool combined_signed, const struct AddressList *from)
+ {
+ gpgme_error_t err;
+ gpgme_ctx_t ctx = NULL;
+@@ -1291,7 +1320,7 @@ static char *encrypt_gpgme_object(gpgme_data_t plaintext, char *keylist,
+
+ if (combined_signed)
+ {
+- if (set_signer(ctx, use_smime))
++ if (set_signer(ctx, from, use_smime))
+ goto cleanup;
+
+ if (C_CryptUsePka)
+@@ -1398,11 +1427,12 @@ static void print_time(time_t t, struct State *s)
+ /**
+ * sign_message - Sign a message
+ * @param a Message to sign
++ * @param from The From header line
+ * @param use_smime If set, use SMIME instead of PGP
+ * @retval ptr new Body
+ * @retval NULL error
+ */
+-static struct Body *sign_message(struct Body *a, bool use_smime)
++static struct Body *sign_message(struct Body *a, const struct AddressList *from, bool use_smime)
+ {
+ struct Body *t = NULL;
+ char *sigfile = NULL;
+@@ -1423,7 +1453,7 @@ static struct Body *sign_message(struct Body *a, bool use_smime)
+ if (!use_smime)
+ gpgme_set_armor(ctx, 1);
+
+- if (set_signer(ctx, use_smime))
++ if (set_signer(ctx, from, use_smime))
+ {
+ gpgme_data_release(signature);
+ gpgme_data_release(message);
+@@ -1523,23 +1553,24 @@ static struct Body *sign_message(struct Body *a, bool use_smime)
+ /**
+ * pgp_gpgme_sign_message - Implements CryptModuleSpecs::sign_message()
+ */
+-struct Body *pgp_gpgme_sign_message(struct Body *a)
++struct Body *pgp_gpgme_sign_message(struct Body *a, const struct AddressList *from)
+ {
+- return sign_message(a, false);
++ return sign_message(a, from, false);
+ }
+
+ /**
+ * smime_gpgme_sign_message - Implements CryptModuleSpecs::sign_message()
+ */
+-struct Body *smime_gpgme_sign_message(struct Body *a)
++struct Body *smime_gpgme_sign_message(struct Body *a, const struct AddressList *from)
+ {
+- return sign_message(a, true);
++ return sign_message(a, from, true);
+ }
+
+ /**
+ * pgp_gpgme_encrypt_message - Implements CryptModuleSpecs::pgp_encrypt_message()
+ */
+-struct Body *pgp_gpgme_encrypt_message(struct Body *a, char *keylist, bool sign)
++struct Body *pgp_gpgme_encrypt_message(struct Body *a, char *keylist, bool sign,
++ const struct AddressList *from)
+ {
+ if (sign)
+ crypt_convert_to_7bit(a);
+@@ -1547,7 +1578,7 @@ struct Body *pgp_gpgme_encrypt_message(struct Body *a, char *keylist, bool sign)
+ if (!plaintext)
+ return NULL;
+
+- char *outfile = encrypt_gpgme_object(plaintext, keylist, false, sign);
++ char *outfile = encrypt_gpgme_object(plaintext, keylist, false, sign, from);
+ gpgme_data_release(plaintext);
+ if (!outfile)
+ return NULL;
+@@ -1593,7 +1624,7 @@ struct Body *smime_gpgme_build_smime_entity(struct Body *a, char *keylist)
+ if (!plaintext)
+ return NULL;
+
+- char *outfile = encrypt_gpgme_object(plaintext, keylist, true, false);
++ char *outfile = encrypt_gpgme_object(plaintext, keylist, true, false, NULL);
+ gpgme_data_release(plaintext);
+ if (!outfile)
+ return NULL;
+@@ -2031,8 +2062,16 @@ static int show_one_sig_status(gpgme_ctx_t ctx, int idx, struct State *s)
+
+ /**
+ * verify_one - Do the actual verification step
++ * @param sigbdy Mime part containing signature
++ * @param s State to read from
++ * @param tempfile Temporary file to read
++ * @param is_smime Is the key S/MIME?
++ * @retval 0 Success
++ * @retval 1 Bad signature
++ * @retval 2 Warnings
++ * @retval -1 Error
+ *
+- * With IS_SMIME set to true we assume S/MIME (surprise!)
++ * With IS_SMIME set to true we assume S/MIME.
+ */
+ static int verify_one(struct Body *sigbdy, struct State *s, const char *tempfile, bool is_smime)
+ {
+@@ -2202,9 +2241,10 @@ static struct Body *decrypt_part(struct Body *a, struct State *s, FILE *fp_out,
+ if (r_is_signed)
+ *r_is_signed = 0;
+
+- gpgme_ctx_t ctx = create_gpgme_context(is_smime);
+-
++ gpgme_ctx_t ctx = NULL;
+ restart:
++ ctx = create_gpgme_context(is_smime);
++
+ if (a->length < 0)
+ return NULL;
+ /* Make a data object from the body, create context etc. */
+@@ -3060,7 +3100,11 @@ int pgp_gpgme_application_handler(struct Body *m, struct State *s)
+ state_puts(s, errbuf);
+ }
+ else
+- { /* Decryption/Verification succeeded */
++ {
++ /* Decryption/Verification succeeded */
++
++ mutt_message(_("PGP message successfully decrypted"));
++
+ bool sig_stat = false;
+ char *tmpfname = NULL;
+
+@@ -3584,16 +3628,20 @@ static const char *crypt_format_str(char *buf, size_t buflen, size_t col, int co
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, attach_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, attach_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+ return src;
+ }
+
+ /**
+- * crypt_make_entry - Format a menu item for the key selection list - Implements Menu::menu_make_entry()
++ * crypt_make_entry - Format a menu item for the key selection list - Implements Menu::make_entry()
+ */
+ static void crypt_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+@@ -3603,8 +3651,9 @@ static void crypt_make_entry(char *buf, size_t buflen, struct Menu *menu, int li
+ entry.key = key_table[line];
+ entry.num = line + 1;
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, NONULL(C_PgpEntryFormat),
+- crypt_format_str, (unsigned long) &entry, MUTT_FORMAT_ARROWCURSOR);
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
++ NONULL(C_PgpEntryFormat), crypt_format_str,
++ (unsigned long) &entry, MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+@@ -4735,9 +4784,42 @@ static struct CryptKeyInfo *crypt_select_key(struct CryptKeyInfo *keys,
+ mutt_make_help(buf, sizeof(buf), _("Help"), menu_to_use, OP_HELP);
+ strcat(helpstr, buf);
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "crypt-gpgme";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ struct Menu *menu = mutt_menu_new(menu_to_use);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->max = i;
+- menu->menu_make_entry = crypt_make_entry;
++ menu->make_entry = crypt_make_entry;
+ menu->help = helpstr;
+ menu->data = key_table;
+ mutt_menu_push_current(menu);
+@@ -4870,6 +4952,8 @@ static struct CryptKeyInfo *crypt_select_key(struct CryptKeyInfo *keys,
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
+ FREE(&key_table);
++ dialog_pop();
++ mutt_window_free(&dlg);
+
+ return k;
+ }
+@@ -4979,7 +5063,7 @@ static struct CryptKeyInfo *crypt_getkeybyaddr(struct Address *a,
+ {
+ if (the_strong_valid_key)
+ k = crypt_copy_key(the_strong_valid_key);
+- else if (a_valid_addrmatch_key)
++ else if (a_valid_addrmatch_key && !C_CryptOpportunisticEncryptStrongKeys)
+ k = crypt_copy_key(a_valid_addrmatch_key);
+ else
+ k = NULL;
+diff --git a/ncrypt/crypt_gpgme.h b/ncrypt/crypt_gpgme.h
+index 555b87ee0..1cc2126c2 100644
+--- a/ncrypt/crypt_gpgme.h
++++ b/ncrypt/crypt_gpgme.h
+@@ -29,7 +29,6 @@
+
+ struct AddressList;
+ struct Body;
+-struct Buffer;
+ struct Email;
+ struct Mailbox;
+ struct State;
+@@ -40,13 +39,12 @@ int pgp_gpgme_application_handler(struct Body *m, struct State *s);
+ int pgp_gpgme_check_traditional(FILE *fp, struct Body *b, bool just_one);
+ int pgp_gpgme_decrypt_mime(FILE *fp_in, FILE **fp_out, struct Body *b, struct Body **cur);
+ int pgp_gpgme_encrypted_handler(struct Body *a, struct State *s);
+-struct Body *pgp_gpgme_encrypt_message(struct Body *a, char *keylist, bool sign);
++struct Body *pgp_gpgme_encrypt_message(struct Body *a, char *keylist, bool sign, const struct AddressList *from);
+ char * pgp_gpgme_find_keys(struct AddressList *addrlist, bool oppenc_mode);
+-void pgp_gpgme_init(void);
+ void pgp_gpgme_invoke_import(const char *fname);
+ struct Body *pgp_gpgme_make_key_attachment(void);
+ int pgp_gpgme_send_menu(struct Email *e);
+-struct Body *pgp_gpgme_sign_message(struct Body *a);
++struct Body *pgp_gpgme_sign_message(struct Body *a, const struct AddressList *from);
+ int pgp_gpgme_verify_one(struct Body *sigbdy, struct State *s, const char *tempfile);
+
+ int smime_gpgme_application_handler(struct Body *a, struct State *s);
+@@ -55,11 +53,8 @@ int smime_gpgme_decrypt_mime(FILE *fp_in, FILE **fp_out, struct Body *b
+ char * smime_gpgme_find_keys(struct AddressList *addrlist, bool oppenc_mode);
+ void smime_gpgme_init(void);
+ int smime_gpgme_send_menu(struct Email *e);
+-struct Body *smime_gpgme_sign_message(struct Body *a);
++struct Body *smime_gpgme_sign_message(struct Body *a, const struct AddressList *from);
+ int smime_gpgme_verify_one(struct Body *sigbdy, struct State *s, const char *tempfile);
+ int smime_gpgme_verify_sender(struct Mailbox *m, struct Email *e);
+
+-const char *mutt_gpgme_print_version(void);
+-int mutt_gpgme_select_secret_key (struct Buffer *keyid);
+-
+ #endif /* MUTT_NCRYPT_CRYPT_GPGME_H */
+diff --git a/ncrypt/crypt_mod.c b/ncrypt/crypt_mod.c
+index ed4c1ca5f..bd11daa5f 100644
+--- a/ncrypt/crypt_mod.c
++++ b/ncrypt/crypt_mod.c
+@@ -27,7 +27,7 @@
+ */
+
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "crypt_mod.h"
+
+ /**
+diff --git a/ncrypt/crypt_mod.h b/ncrypt/crypt_mod.h
+index 2e250d3ce..242c7e3fa 100644
+--- a/ncrypt/crypt_mod.h
++++ b/ncrypt/crypt_mod.h
+@@ -26,7 +26,7 @@
+
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "ncrypt.h"
++#include "lib.h"
+
+ struct Address;
+ struct AddressList;
+@@ -48,11 +48,13 @@ struct CryptModuleSpecs
+ /**
+ * init - Initialise the crypto module
+ */
+- void (*init)(void);
++ void (*init)(void);
++
+ /**
+ * void_passphrase - Forget the cached passphrase
+ */
+- void (*void_passphrase)(void);
++ void (*void_passphrase)(void);
++
+ /**
+ * valid_passphrase - Ensure we have a valid passphrase
+ * @retval true Success
+@@ -61,7 +63,8 @@ struct CryptModuleSpecs
+ * If the passphrase is within the expiry time (backend-specific), use it.
+ * If not prompt the user again.
+ */
+- bool (*valid_passphrase)(void);
++ bool (*valid_passphrase)(void);
++
+ /**
+ * decrypt_mime - Decrypt an encrypted MIME part
+ * @param[in] fp_in File containing the encrypted part
+@@ -71,7 +74,8 @@ struct CryptModuleSpecs
+ * @retval 0 Success
+ * @retval -1 Failure
+ */
+- int (*decrypt_mime)(FILE *fp_in, FILE **fp_out, struct Body *b, struct Body **cur);
++ int (*decrypt_mime)(FILE *fp_in, FILE **fp_out, struct Body *b, struct Body **cur);
++
+ /**
+ * application_handler - Manage the MIME type "application/pgp" or "application/smime"
+ * @param m Body of the email
+@@ -79,7 +83,8 @@ struct CryptModuleSpecs
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+- int (*application_handler)(struct Body *m, struct State *s);
++ int (*application_handler)(struct Body *m, struct State *s);
++
+ /**
+ * encrypted_handler - Manage a PGP or S/MIME encrypted MIME part
+ * @param m Body of the email
+@@ -87,7 +92,8 @@ struct CryptModuleSpecs
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+- int (*encrypted_handler)(struct Body *m, struct State *s);
++ int (*encrypted_handler)(struct Body *m, struct State *s);
++
+ /**
+ * find_keys - Find the keyids of the recipients of a message
+ * @param addrlist Address List
+@@ -98,14 +104,17 @@ struct CryptModuleSpecs
+ * If oppenc_mode is true, only keys that can be determined without prompting
+ * will be used.
+ */
+- char * (*find_keys)(struct AddressList *addrlist, bool oppenc_mode);
++ char *(*find_keys)(struct AddressList *addrlist, bool oppenc_mode);
++
+ /**
+ * sign_message - Cryptographically sign the Body of a message
+ * @param a Body of the message
++ * @param from From line
+ * @retval ptr New encrypted Body
+ * @retval NULL Error
+ */
+- struct Body *(*sign_message)(struct Body *a);
++ struct Body *(*sign_message)(struct Body *a, const struct AddressList *from);
++
+ /**
+ * verify_one - Check a signed MIME part against a signature
+ * @param sigbdy Body of the signed mail
+@@ -114,36 +123,41 @@ struct CryptModuleSpecs
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+- int (*verify_one)(struct Body *sigbdy, struct State *s, const char *tempf);
++ int (*verify_one)(struct Body *sigbdy, struct State *s, const char *tempf);
++
+ /**
+ * send_menu - Ask the user whether to sign and/or encrypt the email
+ * @param e Email
+ * @retval num Flags, e.g. #APPLICATION_PGP | #SEC_ENCRYPT
+ */
+- int (*send_menu)(struct Email *e);
++ int (*send_menu)(struct Email *e);
++
+ /**
+ * set_sender - Set the sender of the email
+ * @param sender Email address
+ */
+- void (*set_sender)(const char *sender);
++ void (*set_sender)(const char *sender);
+
+ /**
+ * pgp_encrypt_message - PGP encrypt an email
+ * @param a Body of email to encrypt
+ * @param keylist List of keys, or fingerprints (space separated)
+ * @param sign If true, sign the message too
++ * @param from From line, to choose the key to sign
+ * @retval ptr Encrypted Body
+ * @retval NULL Error
+ *
+ * Encrypt the mail body to all the given keys.
+ */
+- struct Body *(*pgp_encrypt_message)(struct Body *a, char *keylist, bool sign);
++ struct Body *(*pgp_encrypt_message)(struct Body *a, char *keylist, bool sign, const struct AddressList *from);
++
+ /**
+ * pgp_make_key_attachment - Generate a public key attachment
+ * @retval ptr New Body containing the attachment
+ * @retval NULL Error
+ */
+ struct Body *(*pgp_make_key_attachment)(void);
++
+ /**
+ * pgp_check_traditional - Look for inline (non-MIME) PGP content
+ * @param fp File pointer to the current attachment
+@@ -152,7 +166,8 @@ struct CryptModuleSpecs
+ * @retval 1 It's an inline PGP email
+ * @retval 0 It's not inline, or an error
+ */
+- int (*pgp_check_traditional)(FILE *fp, struct Body *b, bool just_one);
++ int (*pgp_check_traditional)(FILE *fp, struct Body *b, bool just_one);
++
+ /**
+ * pgp_traditional_encryptsign - Create an inline PGP encrypted, signed email
+ * @param a Body of the email
+@@ -162,28 +177,32 @@ struct CryptModuleSpecs
+ * @retval NULL Error
+ */
+ struct Body *(*pgp_traditional_encryptsign)(struct Body *a, SecurityFlags flags, char *keylist);
++
+ /**
+ * pgp_invoke_getkeys - Run a command to download a PGP key
+ * @param addr Address to search for
+ */
+- void (*pgp_invoke_getkeys)(struct Address *addr);
++ void (*pgp_invoke_getkeys)(struct Address *addr);
++
+ /**
+ * pgp_invoke_import - Import a key from a message into the user's public key ring
+ * @param fname File containing the message
+ */
+- void (*pgp_invoke_import)(const char *fname);
++ void (*pgp_invoke_import)(const char *fname);
++
+ /**
+ * pgp_extract_key_from_attachment - Extract PGP key from an attachment
+ * @param fp File containing email
+ * @param top Body of the email
+ */
+- void (*pgp_extract_key_from_attachment)(FILE *fp, struct Body *top);
++ void (*pgp_extract_key_from_attachment)(FILE *fp, struct Body *top);
+
+ /**
+ * smime_getkeys - Get the S/MIME keys required to encrypt this email
+ * @param env Envelope of the email
+ */
+- void (*smime_getkeys)(struct Envelope *env);
++ void (*smime_getkeys)(struct Envelope *env);
++
+ /**
+ * smime_verify_sender - Does the sender match the certificate?
+ * @param m Mailbox
+@@ -191,7 +210,8 @@ struct CryptModuleSpecs
+ * @retval 0 Success
+ * @retval 1 Failure
+ */
+- int (*smime_verify_sender)(struct Mailbox *m, struct Email *e);
++ int (*smime_verify_sender)(struct Mailbox *m, struct Email *e);
++
+ /**
+ * smime_build_smime_entity - Encrypt the email body to all recipients
+ * @param a Body of email
+@@ -200,12 +220,13 @@ struct CryptModuleSpecs
+ * @retval NULL Error
+ */
+ struct Body *(*smime_build_smime_entity)(struct Body *a, char *certlist);
++
+ /**
+ * smime_invoke_import - Add a certificate and update index file (externally)
+ * @param infile File containing certificate
+ * @param mailbox Mailbox
+ */
+- void (*smime_invoke_import)(const char *infile, const char *mailbox);
++ void (*smime_invoke_import)(const char *infile, const char *mailbox);
+ };
+
+ /* High Level crypto module interface */
+diff --git a/ncrypt/crypt_mod_pgp_classic.c b/ncrypt/crypt_mod_pgp_classic.c
+index ffc300666..1803660dd 100644
+--- a/ncrypt/crypt_mod_pgp_classic.c
++++ b/ncrypt/crypt_mod_pgp_classic.c
+@@ -28,8 +28,8 @@
+
+ #include "config.h"
+ #include <stdio.h>
++#include "lib.h"
+ #include "crypt_mod.h"
+-#include "ncrypt.h"
+ #include "pgpinvoke.h"
+ #include "pgpkey.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_PGP
+diff --git a/ncrypt/crypt_mod_pgp_gpgme.c b/ncrypt/crypt_mod_pgp_gpgme.c
+index 308890a5f..079ae3a7e 100644
+--- a/ncrypt/crypt_mod_pgp_gpgme.c
++++ b/ncrypt/crypt_mod_pgp_gpgme.c
+@@ -29,9 +29,9 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
++#include "lib.h"
+ #include "crypt_gpgme.h"
+ #include "crypt_mod.h"
+-#include "ncrypt.h"
+
+ /**
+ * pgp_gpgme_void_passphrase - Implements CryptModuleSpecs::void_passphrase()
+diff --git a/ncrypt/crypt_mod_smime_classic.c b/ncrypt/crypt_mod_smime_classic.c
+index 4665b3176..184541043 100644
+--- a/ncrypt/crypt_mod_smime_classic.c
++++ b/ncrypt/crypt_mod_smime_classic.c
+@@ -28,8 +28,8 @@
+
+ #include "config.h"
+ #include <stdio.h>
++#include "lib.h"
+ #include "crypt_mod.h"
+-#include "ncrypt.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_SMIME
+ #include "smime.h"
+ #endif
+diff --git a/ncrypt/crypt_mod_smime_gpgme.c b/ncrypt/crypt_mod_smime_gpgme.c
+index 89907e266..1c9aa8865 100644
+--- a/ncrypt/crypt_mod_smime_gpgme.c
++++ b/ncrypt/crypt_mod_smime_gpgme.c
+@@ -29,9 +29,9 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
++#include "lib.h"
+ #include "crypt_gpgme.h"
+ #include "crypt_mod.h"
+-#include "ncrypt.h"
+
+ /**
+ * smime_gpgme_void_passphrase - Implements CryptModuleSpecs::void_passphrase()
+diff --git a/ncrypt/cryptglue.c b/ncrypt/cryptglue.c
+index a174c5986..7fd70e0d8 100644
+--- a/ncrypt/cryptglue.c
++++ b/ncrypt/cryptglue.c
+@@ -38,19 +38,19 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "cryptglue.h"
+ #include "crypt_mod.h"
+-#include "ncrypt.h"
++#include "ncrypt/lib.h"
+ #ifndef CRYPT_BACKEND_GPGME
+-#include "curs_lib.h"
++#include "gui/lib.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+ #include "email/lib.h"
+-#include "autocrypt/autocrypt.h"
++#include "crypt_gpgme.h"
+ #include "globals.h"
+-#include "ncrypt/crypt_gpgme.h"
+ #include "options.h"
++#include "autocrypt/lib.h"
+ #else
+ struct Envelope;
+ #endif
+@@ -318,10 +318,10 @@ char *crypt_pgp_find_keys(struct AddressList *addrlist, bool oppenc_mode)
+ /**
+ * crypt_pgp_sign_message - Wrapper for CryptModuleSpecs::sign_message()
+ */
+-struct Body *crypt_pgp_sign_message(struct Body *a)
++struct Body *crypt_pgp_sign_message(struct Body *a, const struct AddressList *from)
+ {
+ if (CRYPT_MOD_CALL_CHECK(PGP, sign_message))
+- return CRYPT_MOD_CALL(PGP, sign_message)(a);
++ return CRYPT_MOD_CALL(PGP, sign_message)(a, from);
+
+ return NULL;
+ }
+@@ -329,7 +329,8 @@ struct Body *crypt_pgp_sign_message(struct Body *a)
+ /**
+ * crypt_pgp_encrypt_message - Wrapper for CryptModuleSpecs::pgp_encrypt_message()
+ */
+-struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *keylist, int sign)
++struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *keylist,
++ int sign, const struct AddressList *from)
+ {
+ #ifdef USE_AUTOCRYPT
+ if (e->security & SEC_AUTOCRYPT)
+@@ -338,7 +339,7 @@ struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *ke
+ return NULL;
+
+ OptAutocryptGpgme = true;
+- struct Body *result = pgp_gpgme_encrypt_message(a, keylist, sign);
++ struct Body *result = pgp_gpgme_encrypt_message(a, keylist, sign, from);
+ OptAutocryptGpgme = false;
+
+ return result;
+@@ -346,7 +347,7 @@ struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *ke
+ #endif
+
+ if (CRYPT_MOD_CALL_CHECK(PGP, pgp_encrypt_message))
+- return CRYPT_MOD_CALL(PGP, pgp_encrypt_message)(a, keylist, sign);
++ return CRYPT_MOD_CALL(PGP, pgp_encrypt_message)(a, keylist, sign, from);
+
+ return NULL;
+ }
+@@ -478,10 +479,10 @@ char *crypt_smime_find_keys(struct AddressList *addrlist, bool oppenc_mode)
+ /**
+ * crypt_smime_sign_message - Wrapper for CryptModuleSpecs::sign_message()
+ */
+-struct Body *crypt_smime_sign_message(struct Body *a)
++struct Body *crypt_smime_sign_message(struct Body *a, const struct AddressList *from)
+ {
+ if (CRYPT_MOD_CALL_CHECK(SMIME, sign_message))
+- return CRYPT_MOD_CALL(SMIME, sign_message)(a);
++ return CRYPT_MOD_CALL(SMIME, sign_message)(a, from);
+
+ return NULL;
+ }
+diff --git a/ncrypt/cryptglue.h b/ncrypt/cryptglue.h
+index 2238ec915..54181f3d9 100644
+--- a/ncrypt/cryptglue.h
++++ b/ncrypt/cryptglue.h
+@@ -31,11 +31,11 @@ struct Body;
+ struct Email;
+ struct State;
+
+-struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *keylist, int sign);
++struct Body *crypt_pgp_encrypt_message(struct Email *e, struct Body *a, char *keylist, int sign, const struct AddressList *from);
+ char * crypt_pgp_find_keys(struct AddressList *al, bool oppenc_mode);
+ void crypt_pgp_invoke_import(const char *fname);
+ void crypt_pgp_set_sender(const char *sender);
+-struct Body *crypt_pgp_sign_message(struct Body *a);
++struct Body *crypt_pgp_sign_message(struct Body *a, const struct AddressList *from);
+ struct Body *crypt_pgp_traditional_encryptsign(struct Body *a, int flags, char *keylist);
+ bool crypt_pgp_valid_passphrase(void);
+ int crypt_pgp_verify_one(struct Body *sigbdy, struct State *s, const char *tempf);
+@@ -45,7 +45,7 @@ struct Body *crypt_smime_build_smime_entity(struct Body *a, char *certlist);
+ char * crypt_smime_find_keys(struct AddressList *al, bool oppenc_mode);
+ void crypt_smime_invoke_import(const char *infile, const char *mailbox);
+ void crypt_smime_set_sender(const char *sender);
+-struct Body *crypt_smime_sign_message(struct Body *a);
++struct Body *crypt_smime_sign_message(struct Body *a, const struct AddressList *from);
+ bool crypt_smime_valid_passphrase(void);
+ int crypt_smime_verify_one(struct Body *sigbdy, struct State *s, const char *tempf);
+ void crypt_smime_void_passphrase(void);
+diff --git a/ncrypt/gnupgparse.c b/ncrypt/gnupgparse.c
+index f9bc0921b..a9b633b2f 100644
+--- a/ncrypt/gnupgparse.c
++++ b/ncrypt/gnupgparse.c
+@@ -41,12 +41,11 @@
+ #include <string.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "gnupgparse.h"
+-#include "filter.h"
++#include "lib.h"
+ #include "globals.h"
+-#include "ncrypt.h"
+ #include "pgpinvoke.h"
+ #include "pgpkey.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_PGP
+@@ -465,7 +464,7 @@ struct PgpKeyInfo *pgp_get_candidates(enum PgpRing keyring, struct ListHead *hin
+ mutt_perror("fgets");
+
+ mutt_file_fclose(&fp);
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ close(fd_null);
+
+diff --git a/ncrypt/ncrypt.h b/ncrypt/lib.h
+similarity index 97%
+rename from ncrypt/ncrypt.h
+rename to ncrypt/lib.h
+index f24870897..645534566 100644
+--- a/ncrypt/ncrypt.h
++++ b/ncrypt/lib.h
+@@ -47,8 +47,8 @@
+ * | ncrypt/smime.c | @subpage crypt_smime |
+ */
+
+-#ifndef MUTT_NCRYPT_NCRYPT_H
+-#define MUTT_NCRYPT_NCRYPT_H
++#ifndef MUTT_NCRYPT_LIB_H
++#define MUTT_NCRYPT_LIB_H
+
+ #include <stdbool.h>
+ #include <stdint.h>
+@@ -56,6 +56,7 @@
+
+ struct Address;
+ struct Body;
++struct Buffer;
+ struct Envelope;
+ struct Email;
+ struct EmailList;
+@@ -224,4 +225,10 @@ int crypt_smime_verify_sender(struct Mailbox *m, struct Email *e);
+ /* crypt_mod.c */
+ void crypto_module_free(void);
+
+-#endif /* MUTT_NCRYPT_NCRYPT_H */
++/* crypt_gpgme.c */
++void pgp_gpgme_init(void);
++int mutt_gpgme_select_secret_key (struct Buffer *keyid);
++const char *mutt_gpgme_print_version(void);
++
++
++#endif /* MUTT_NCRYPT_LIB_H */
+diff --git a/ncrypt/pgp.c b/ncrypt/pgp.c
+index ed08b7fe3..ec2b8fdeb 100644
+--- a/ncrypt/pgp.c
++++ b/ncrypt/pgp.c
+@@ -40,21 +40,20 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
++#include "lib.h"
+ #include "crypt.h"
+ #include "cryptglue.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hook.h"
+ #include "mutt_attach.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "options.h"
+ #include "pgpinvoke.h"
+ #include "pgpkey.h"
+@@ -609,7 +608,7 @@ int pgp_class_application_handler(struct Body *m, struct State *s)
+
+ mutt_file_fclose(&fp_pgp_in);
+
+- wait_filter_rc = mutt_wait_filter(pid);
++ wait_filter_rc = filter_wait(pid);
+
+ fflush(fp_pgp_err);
+ /* If we are expecting an encrypted message, verify status fd output.
+@@ -914,11 +913,11 @@ int pgp_class_verify_one(struct Body *sigbdy, struct State *s, const char *tempf
+ if (pgp_copy_checksig(fp_pgp_err, s->fp_out) >= 0)
+ badsig = 0;
+
+- const int rv = mutt_wait_filter(pid);
++ const int rv = filter_wait(pid);
+ if (rv)
+ badsig = -1;
+
+- mutt_debug(LL_DEBUG1, "mutt_wait_filter returned %d\n", rv);
++ mutt_debug(LL_DEBUG1, "filter_wait returned %d\n", rv);
+ }
+
+ mutt_file_fclose(&fp_pgp_err);
+@@ -1063,7 +1062,7 @@ static struct Body *pgp_decrypt_part(struct Body *a, struct State *s,
+ }
+
+ mutt_file_fclose(&fp_pgp_out);
+- rv = mutt_wait_filter(pid);
++ rv = filter_wait(pid);
+ mutt_file_unlink(mutt_b2s(pgptmpfile));
+
+ fflush(fp_pgp_err);
+@@ -1214,8 +1213,10 @@ int pgp_class_encrypted_handler(struct Body *a, struct State *s)
+ {
+ mutt_perror(_("Can't create temporary file"));
+ if (s->flags & MUTT_DISPLAY)
++ {
+ state_attach_puts(s,
+ _("[-- Error: could not create temporary file --]\n"));
++ }
+ return -1;
+ }
+
+@@ -1291,7 +1292,7 @@ int pgp_class_encrypted_handler(struct Body *a, struct State *s)
+ /**
+ * pgp_class_sign_message - Implements CryptModuleSpecs::sign_message()
+ */
+-struct Body *pgp_class_sign_message(struct Body *a)
++struct Body *pgp_class_sign_message(struct Body *a, const struct AddressList *from)
+ {
+ struct Body *t = NULL, *rv = NULL;
+ char buf[1024];
+@@ -1363,7 +1364,7 @@ struct Body *pgp_class_sign_message(struct Body *a)
+ fputs(buf, stdout);
+ }
+
+- if (mutt_wait_filter(pid) && C_PgpCheckExit)
++ if (filter_wait(pid) && C_PgpCheckExit)
+ empty = true;
+
+ mutt_file_fclose(&fp_pgp_err);
+@@ -1543,7 +1544,8 @@ char *pgp_class_find_keys(struct AddressList *addrlist, bool oppenc_mode)
+ * @warning "a" is no longer freed in this routine, you need to free it later.
+ * This is necessary for $fcc_attach.
+ */
+-struct Body *pgp_class_encrypt_message(struct Body *a, char *keylist, bool sign)
++struct Body *pgp_class_encrypt_message(struct Body *a, char *keylist, bool sign,
++ const struct AddressList *from)
+ {
+ char buf[1024];
+ FILE *fp_pgp_in = NULL, *fp_tmp = NULL;
+@@ -1608,7 +1610,7 @@ struct Body *pgp_class_encrypt_message(struct Body *a, char *keylist, bool sign)
+ }
+ mutt_file_fclose(&fp_pgp_in);
+
+- if (mutt_wait_filter(pid) && C_PgpCheckExit)
++ if (filter_wait(pid) && C_PgpCheckExit)
+ empty = true;
+
+ unlink(mutt_b2s(pgpinfile));
+@@ -1779,7 +1781,7 @@ struct Body *pgp_class_traditional_encryptsign(struct Body *a, SecurityFlags fla
+ fprintf(fp_pgp_in, "%s\n", PgpPass);
+ mutt_file_fclose(&fp_pgp_in);
+
+- if (mutt_wait_filter(pid) && C_PgpCheckExit)
++ if (filter_wait(pid) && C_PgpCheckExit)
+ empty = true;
+
+ mutt_file_unlink(mutt_b2s(pgpinfile));
+diff --git a/ncrypt/pgp.h b/ncrypt/pgp.h
+index 7e608b4a4..2d7e6457f 100644
+--- a/ncrypt/pgp.h
++++ b/ncrypt/pgp.h
+@@ -28,7 +28,7 @@
+
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "ncrypt.h"
++#include "lib.h"
+
+ struct AddressList;
+ struct Body;
+@@ -58,8 +58,8 @@ bool pgp_class_valid_passphrase(void);
+
+ int pgp_class_verify_one(struct Body *sigbdy, struct State *s, const char *tempfile);
+ struct Body *pgp_class_traditional_encryptsign(struct Body *a, SecurityFlags flags, char *keylist);
+-struct Body *pgp_class_encrypt_message(struct Body *a, char *keylist, bool sign);
+-struct Body *pgp_class_sign_message(struct Body *a);
++struct Body *pgp_class_encrypt_message(struct Body *a, char *keylist, bool sign, const struct AddressList *from);
++struct Body *pgp_class_sign_message(struct Body *a, const struct AddressList *from);
+
+ int pgp_class_send_menu(struct Email *e);
+
+diff --git a/ncrypt/pgpinvoke.c b/ncrypt/pgpinvoke.c
+index 1a087ab91..acb15caee 100644
+--- a/ncrypt/pgpinvoke.c
++++ b/ncrypt/pgpinvoke.c
+@@ -34,16 +34,15 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
++#include "gui/lib.h"
+ #include "pgpinvoke.h"
+-#include "filter.h"
++#include "lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "pgpkey.h"
+ #include "protos.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_PGP
+@@ -164,11 +163,15 @@ static const char *fmt_pgp_command(char *buf, size_t buflen, size_t col, int col
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, fmt_pgp_command, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, fmt_pgp_command, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+
+ return src;
+ }
+@@ -229,8 +232,8 @@ static pid_t pgp_invoke(FILE **fp_pgp_in, FILE **fp_pgp_out, FILE **fp_pgp_err,
+
+ mutt_pgp_command(cmd, sizeof(cmd), &cctx, format);
+
+- return mutt_create_filter_fd(cmd, fp_pgp_in, fp_pgp_out, fp_pgp_err,
+- fd_pgp_in, fd_pgp_out, fd_pgp_err);
++ return filter_create_fd(cmd, fp_pgp_in, fp_pgp_out, fp_pgp_err, fd_pgp_in,
++ fd_pgp_out, fd_pgp_err);
+ }
+
+ /*
+diff --git a/ncrypt/pgpinvoke.h b/ncrypt/pgpinvoke.h
+index 242521517..5bfec0e3e 100644
+--- a/ncrypt/pgpinvoke.h
++++ b/ncrypt/pgpinvoke.h
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <unistd.h>
+-#include "ncrypt/ncrypt.h"
++#include "ncrypt/lib.h"
+ #include "pgpkey.h"
+
+ struct Address;
+diff --git a/ncrypt/pgpkey.c b/ncrypt/pgpkey.c
+index ead557fb6..91bf137ef 100644
+--- a/ncrypt/pgpkey.c
++++ b/ncrypt/pgpkey.c
+@@ -38,24 +38,22 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "pgpkey.h"
++#include "lib.h"
+ #include "crypt.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "gnupgparse.h"
+ #include "keymap.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "pager.h"
+@@ -328,16 +326,20 @@ static const char *pgp_entry_fmt(char *buf, size_t buflen, size_t col, int cols,
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, attach_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, attach_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+ return src;
+ }
+
+ /**
+- * pgp_make_entry - Format a menu item for the pgp key list - Implements Menu::menu_make_entry()
++ * pgp_make_entry - Format a menu item for the pgp key list - Implements Menu::make_entry()
+ */
+ static void pgp_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+@@ -347,8 +349,9 @@ static void pgp_make_entry(char *buf, size_t buflen, struct Menu *menu, int line
+ entry.uid = key_table[line];
+ entry.num = line + 1;
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, NONULL(C_PgpEntryFormat),
+- pgp_entry_fmt, (unsigned long) &entry, MUTT_FORMAT_ARROWCURSOR);
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
++ NONULL(C_PgpEntryFormat), pgp_entry_fmt,
++ (unsigned long) &entry, MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+@@ -670,9 +673,42 @@ static struct PgpKeyInfo *pgp_select_key(struct PgpKeyInfo *keys,
+ mutt_make_help(buf, sizeof(buf), _("Help"), MENU_PGP, OP_HELP);
+ strcat(helpstr, buf);
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "pgp";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ menu = mutt_menu_new(MENU_PGP);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->max = i;
+- menu->menu_make_entry = pgp_make_entry;
++ menu->make_entry = pgp_make_entry;
+ menu->help = helpstr;
+ menu->data = key_table;
+ mutt_menu_push_current(menu);
+@@ -726,7 +762,7 @@ static struct PgpKeyInfo *pgp_select_key(struct PgpKeyInfo *keys,
+ mutt_file_fclose(&fp_null);
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ mutt_file_fclose(&fp_tmp);
+ mutt_file_fclose(&fp_null);
+ mutt_clear_error();
+@@ -809,6 +845,8 @@ static struct PgpKeyInfo *pgp_select_key(struct PgpKeyInfo *keys,
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
+ FREE(&key_table);
++ dialog_pop();
++ mutt_window_free(&dlg);
+
+ return kp;
+ }
+@@ -924,7 +962,7 @@ struct Body *pgp_class_make_key_attachment(void)
+ goto cleanup;
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ mutt_file_fclose(&fp_tmp);
+ mutt_file_fclose(&fp_null);
+@@ -1089,7 +1127,7 @@ struct PgpKeyInfo *pgp_getkeybyaddr(struct Address *a, KeyFlags abilities,
+ pgp_remove_key(&matches, the_strong_valid_key);
+ k = the_strong_valid_key;
+ }
+- else if (a_valid_addrmatch_key)
++ else if (a_valid_addrmatch_key && !C_CryptOpportunisticEncryptStrongKeys)
+ {
+ pgp_remove_key(&matches, a_valid_addrmatch_key);
+ k = a_valid_addrmatch_key;
+diff --git a/ncrypt/pgpkey.h b/ncrypt/pgpkey.h
+index dd355b34f..086fd454c 100644
+--- a/ncrypt/pgpkey.h
++++ b/ncrypt/pgpkey.h
+@@ -25,7 +25,7 @@
+ #define MUTT_NCRYPT_PGPKEY_H
+
+ #include <stdbool.h>
+-#include "ncrypt.h"
++#include "lib.h"
+
+ struct Address;
+
+diff --git a/ncrypt/pgplib.c b/ncrypt/pgplib.c
+index a90f5b96c..515078e41 100644
+--- a/ncrypt/pgplib.c
++++ b/ncrypt/pgplib.c
+@@ -28,7 +28,7 @@
+
+ #include "config.h"
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_PGP
+ #include "pgplib.h"
+ #endif
+diff --git a/ncrypt/pgplib.h b/ncrypt/pgplib.h
+index d575e77ad..30b4929df 100644
+--- a/ncrypt/pgplib.h
++++ b/ncrypt/pgplib.h
+@@ -26,7 +26,7 @@
+
+ #include <stdbool.h>
+ #include <time.h>
+-#include "ncrypt.h"
++#include "lib.h"
+
+ /**
+ * struct PgpUid - PGP User ID
+diff --git a/ncrypt/pgpmicalg.c b/ncrypt/pgpmicalg.c
+index 9e8c12584..1093601b7 100644
+--- a/ncrypt/pgpmicalg.c
++++ b/ncrypt/pgpmicalg.c
+@@ -31,7 +31,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "pgpmicalg.h"
+ #include "handler.h"
+ #include "pgppacket.h"
+diff --git a/ncrypt/pgppacket.c b/ncrypt/pgppacket.c
+index f7a410c75..c9d9eed48 100644
+--- a/ncrypt/pgppacket.c
++++ b/ncrypt/pgppacket.c
+@@ -30,7 +30,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "pgppacket.h"
+
+ #define CHUNK_SIZE 1024 ///< Amount of data to read at once
+diff --git a/ncrypt/smime.c b/ncrypt/smime.c
+index e30520958..dd0a56e3e 100644
+--- a/ncrypt/smime.c
++++ b/ncrypt/smime.c
+@@ -36,31 +36,30 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "alias.h"
+ #include "copy.h"
+ #include "crypt.h"
+ #include "cryptglue.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "keymap.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+ #include "muttlib.h"
+-#include "ncrypt.h"
+ #include "opcodes.h"
+ #include "protos.h"
+ #include "send.h"
+ #include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef CRYPT_BACKEND_CLASSIC_SMIME
+ #include "smime.h"
+ #endif
+@@ -339,11 +338,15 @@ static const char *fmt_smime_command(char *buf, size_t buflen, size_t col, int c
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, fmt_smime_command, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, fmt_smime_command,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+
+ return src;
+ }
+@@ -407,8 +410,8 @@ static pid_t smime_invoke(FILE **fp_smime_in, FILE **fp_smime_out, FILE **fp_smi
+
+ smime_command(cmd, sizeof(cmd), &cctx, format);
+
+- return mutt_create_filter_fd(cmd, fp_smime_in, fp_smime_out, fp_smime_err,
+- fp_smime_infd, fp_smime_outfd, fp_smime_errfd);
++ return filter_create_fd(cmd, fp_smime_in, fp_smime_out, fp_smime_err,
++ fp_smime_infd, fp_smime_outfd, fp_smime_errfd);
+ }
+
+ /*
+@@ -442,7 +445,7 @@ static char *smime_key_flags(KeyFlags flags)
+ }
+
+ /**
+- * smime_make_entry - Format a menu item for the smime key list - Implements Menu::menu_make_entry()
++ * smime_make_entry - Format a menu item for the smime key list - Implements Menu::make_entry()
+ */
+ static void smime_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+@@ -553,10 +556,43 @@ static struct SmimeKey *smime_select_key(struct SmimeKey *keys, char *query)
+ mutt_make_help(buf, sizeof(buf), _("Help"), MENU_SMIME, OP_HELP);
+ strcat(helpstr, buf);
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "smime";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ /* Create the menu */
+ menu = mutt_menu_new(MENU_SMIME);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->max = table_index;
+- menu->menu_make_entry = smime_make_entry;
++ menu->make_entry = smime_make_entry;
+ menu->help = helpstr;
+ menu->data = table;
+ menu->title = title;
+@@ -611,6 +647,8 @@ static struct SmimeKey *smime_select_key(struct SmimeKey *keys, char *query)
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
+ FREE(&table);
++ dialog_pop();
++ mutt_window_free(&dlg);
+
+ return selected_key;
+ }
+@@ -773,11 +811,11 @@ static struct SmimeKey *smime_get_key_by_hash(char *hash, bool only_public_key)
+ * @param mailbox Email address to match
+ * @param abilities Abilities to match, see #KeyFlags
+ * @param only_public_key If true, only get the public keys
+- * @param may_ask If true, the user may be asked to select a key
++ * @param oppenc_mode If true, use opportunistic encryption
+ * @retval ptr Matching key
+ */
+ static struct SmimeKey *smime_get_key_by_addr(char *mailbox, KeyFlags abilities,
+- bool only_public_key, bool may_ask)
++ bool only_public_key, bool oppenc_mode)
+ {
+ if (!mailbox)
+ return NULL;
+@@ -824,11 +862,11 @@ static struct SmimeKey *smime_get_key_by_addr(char *mailbox, KeyFlags abilities,
+
+ if (matches)
+ {
+- if (!may_ask)
++ if (oppenc_mode)
+ {
+ if (trusted_match)
+ return_key = smime_copy_key(trusted_match);
+- else if (valid_match)
++ else if (valid_match && !C_CryptOpportunisticEncryptStrongKeys)
+ return_key = smime_copy_key(valid_match);
+ else
+ return_key = NULL;
+@@ -936,7 +974,7 @@ static void getkeys(char *mailbox)
+ {
+ char *k = NULL;
+
+- struct SmimeKey *key = smime_get_key_by_addr(mailbox, KEYFLAG_CANENCRYPT, false, true);
++ struct SmimeKey *key = smime_get_key_by_addr(mailbox, KEYFLAG_CANENCRYPT, false, false);
+
+ if (!key)
+ {
+@@ -1042,7 +1080,7 @@ char *smime_class_find_keys(struct AddressList *al, bool oppenc_mode)
+ struct Address *a = NULL;
+ TAILQ_FOREACH(a, al, entries)
+ {
+- key = smime_get_key_by_addr(a->mailbox, KEYFLAG_CANENCRYPT, true, !oppenc_mode);
++ key = smime_get_key_by_addr(a->mailbox, KEYFLAG_CANENCRYPT, true, oppenc_mode);
+ if (!key && !oppenc_mode)
+ {
+ char buf[1024];
+@@ -1111,7 +1149,7 @@ static int smime_handle_cert_email(char *certificate, char *mailbox, bool copy,
+ return 1;
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ fflush(fp_out);
+ rewind(fp_out);
+@@ -1210,7 +1248,7 @@ static char *smime_extract_certificate(const char *infile)
+ goto cleanup;
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ fflush(fp_out);
+ rewind(fp_out);
+@@ -1245,7 +1283,7 @@ static char *smime_extract_certificate(const char *infile)
+ goto cleanup;
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ mutt_file_unlink(mutt_b2s(pk7out));
+
+@@ -1320,7 +1358,7 @@ static char *smime_extract_signer_certificate(const char *infile)
+ goto cleanup;
+ }
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ fflush(fp_out);
+ rewind(fp_out);
+@@ -1376,7 +1414,7 @@ void smime_class_invoke_import(const char *infile, const char *mailbox)
+ buf[0] = '\0';
+ if (C_SmimeAskCertLabel)
+ {
+- if ((mutt_get_field(_("Label for certificate: "), buf, sizeof(buf), 0) != 0) ||
++ if ((mutt_get_field(_("Label for certificate: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
+ (buf[0] == '\0'))
+ {
+ mutt_file_fclose(&fp_out);
+@@ -1403,7 +1441,7 @@ void smime_class_invoke_import(const char *infile, const char *mailbox)
+ fputc('\n', fp_smime_in);
+ mutt_file_fclose(&fp_smime_in);
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ mutt_file_unlink(certfile);
+ FREE(&certfile);
+@@ -1612,7 +1650,7 @@ struct Body *smime_class_build_smime_entity(struct Body *a, char *certlist)
+
+ mutt_file_fclose(&fp_smime_in);
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ mutt_file_unlink(mutt_b2s(smime_infile));
+
+ fflush(fp_out);
+@@ -1709,7 +1747,7 @@ static char *openssl_md_to_smime_micalg(char *md)
+ /**
+ * smime_class_sign_message - Implements CryptModuleSpecs::sign_message()
+ */
+-struct Body *smime_class_sign_message(struct Body *a)
++struct Body *smime_class_sign_message(struct Body *a, const struct AddressList *from)
+ {
+ struct Body *t = NULL;
+ struct Body *retval = NULL;
+@@ -1782,7 +1820,7 @@ struct Body *smime_class_sign_message(struct Body *a)
+ fputc('\n', fp_smime_in);
+ mutt_file_fclose(&fp_smime_in);
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ /* check for errors from OpenSSL */
+ err = 0;
+@@ -1977,7 +2015,7 @@ int smime_class_verify_one(struct Body *sigbdy, struct State *s, const char *tem
+ fflush(fp_smime_out);
+ mutt_file_fclose(&fp_smime_out);
+
+- if (mutt_wait_filter(pid))
++ if (filter_wait(pid))
+ badsig = -1;
+ else
+ {
+@@ -2105,7 +2143,7 @@ static struct Body *smime_handle_entity(struct Body *m, struct State *s, FILE *f
+
+ mutt_file_fclose(&fp_smime_in);
+
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ mutt_file_unlink(mutt_b2s(&tmpfname));
+
+ if (s->flags & MUTT_DISPLAY)
+@@ -2446,6 +2484,8 @@ int smime_class_send_menu(struct Email *e)
+ e->security |= SEC_ENCRYPT;
+ do
+ {
++ struct Buffer errmsg = mutt_buffer_make(0);
++ int rc = CSR_SUCCESS;
+ switch (mutt_multi_choice(_("Choose algorithm family: (1) DES, (2) "
+ "RC2, (3) AES, or (c)lear?"),
+ // L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+@@ -2457,10 +2497,12 @@ int smime_class_send_menu(struct Email *e)
+ _("12")))
+ {
+ case 1:
+- mutt_str_replace(&C_SmimeEncryptWith, "des");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "des", &errmsg);
+ break;
+ case 2:
+- mutt_str_replace(&C_SmimeEncryptWith, "des3");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "des3", &errmsg);
+ break;
+ }
+ break;
+@@ -2472,13 +2514,16 @@ int smime_class_send_menu(struct Email *e)
+ _("123")))
+ {
+ case 1:
+- mutt_str_replace(&C_SmimeEncryptWith, "rc2-40");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "rc2-40", &errmsg);
+ break;
+ case 2:
+- mutt_str_replace(&C_SmimeEncryptWith, "rc2-64");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "rc2-64", &errmsg);
+ break;
+ case 3:
+- mutt_str_replace(&C_SmimeEncryptWith, "rc2-128");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "rc2-128", &errmsg);
+ break;
+ }
+ break;
+@@ -2490,25 +2535,34 @@ int smime_class_send_menu(struct Email *e)
+ _("123")))
+ {
+ case 1:
+- mutt_str_replace(&C_SmimeEncryptWith, "aes128");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "aes128", &errmsg);
+ break;
+ case 2:
+- mutt_str_replace(&C_SmimeEncryptWith, "aes192");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "aes192", &errmsg);
+ break;
+ case 3:
+- mutt_str_replace(&C_SmimeEncryptWith, "aes256");
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ "aes256", &errmsg);
+ break;
+ }
+ break;
+
+ case 4:
+- FREE(&C_SmimeEncryptWith);
++ rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ NULL, &errmsg);
+ /* (c)lear */
+ /* fallthrough */
+ case -1: /* Ctrl-G or Enter */
+ choice = 0;
+ break;
+ }
++
++ if ((CSR_RESULT(rc) != CSR_SUCCESS) && !mutt_buffer_is_empty(&errmsg))
++ mutt_error("%s", mutt_b2s(&errmsg));
++
++ mutt_buffer_dealloc(&errmsg);
+ } while (choice == -1);
+ break;
+ }
+diff --git a/ncrypt/smime.h b/ncrypt/smime.h
+index 6a238c9cc..e27319bb8 100644
+--- a/ncrypt/smime.h
++++ b/ncrypt/smime.h
+@@ -27,9 +27,9 @@
+
+ #include "config.h"
+ #include <stdio.h>
+-#include "ncrypt.h"
++#include "lib.h"
+ #ifdef USE_SLANG_CURSES
+-#include "mutt_curses.h"
++#include "gui/lib.h"
+ #else
+ #include <stdbool.h>
+ #endif
+@@ -62,7 +62,7 @@ char * smime_class_find_keys(struct AddressList *addrlist, bool oppenc_mod
+ void smime_class_getkeys(struct Envelope *env);
+ void smime_class_invoke_import(const char *infile, const char *mailbox);
+ int smime_class_send_menu(struct Email *e);
+-struct Body *smime_class_sign_message(struct Body *a);
++struct Body *smime_class_sign_message(struct Body *a, const struct AddressList *from);
+ bool smime_class_valid_passphrase(void);
+ int smime_class_verify_one(struct Body *sigbdy, struct State *s, const char *tempfile);
+ int smime_class_verify_sender(struct Mailbox *m, struct Email *e);
+diff --git a/nntp/browse.c b/nntp/browse.c
+index 3358aabd7..7a7826de8 100644
+--- a/nntp/browse.c
++++ b/nntp/browse.c
+@@ -28,12 +28,12 @@
+
+ #include "config.h"
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
++#include "lib.h"
+ #include "browser.h"
+ #include "format_flags.h"
+ #include "muttlib.h"
+-#include "nntp.h"
+
+ /**
+ * group_index_format_str - Format a string for the newsgroup menu - Implements ::format_t
+diff --git a/nntp/complete.c b/nntp/complete.c
+index 321ec3db1..b00fb9507 100644
+--- a/nntp/complete.c
++++ b/nntp/complete.c
+@@ -30,8 +30,8 @@
+ #include <limits.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
+-#include "nntp.h"
++#include "mutt/lib.h"
++#include "lib.h"
+
+ /**
+ * nntp_complete - Auto-complete NNTP newsgroups
+diff --git a/nntp/nntp.h b/nntp/lib.h
+similarity index 97%
+rename from nntp/nntp.h
+rename to nntp/lib.h
+index 11c9e2fcd..57319f957 100644
+--- a/nntp/nntp.h
++++ b/nntp/lib.h
+@@ -35,8 +35,8 @@
+ * | nntp/nntp.c | @subpage nntp_nntp |
+ */
+
+-#ifndef MUTT_NNTP_NNTP_H
+-#define MUTT_NNTP_NNTP_H
++#ifndef MUTT_NNTP_LIB_H
++#define MUTT_NNTP_LIB_H
+
+ #include <stdbool.h>
+ #include <stdint.h>
+@@ -61,6 +61,8 @@ extern bool C_ShowNewNews;
+ /* These Config Variables are only used in nntp/newsrc.c */
+ extern char *C_NewsCacheDir;
+ extern char *C_Newsrc;
++extern char *C_NntpPass;
++extern char *C_NntpUser;
+
+ extern struct NntpAccountData *CurrentNewsSrv; ///< Current NNTP news server
+ extern struct MxOps MxNntpOps;
+@@ -176,4 +178,4 @@ enum MailboxType nntp_path_probe(const char *path, const struct stat *st);
+ const char *group_index_format_str(char *buf, size_t buflen, size_t col, int cols, char op, const char *src, const char *prec, const char *if_str, const char *else_str, unsigned long data, MuttFormatFlags flags);
+ int nntp_complete(char *buf, size_t buflen);
+
+-#endif /* MUTT_NNTP_NNTP_H */
++#endif /* MUTT_NNTP_LIB_H */
+diff --git a/nntp/newsrc.c b/nntp/newsrc.c
+index 9cd6ba3c4..da554d54f 100644
+--- a/nntp/newsrc.c
++++ b/nntp/newsrc.c
+@@ -39,12 +39,13 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include "nntp_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
+ #include "mutt.h"
++#include "lib.h"
+ #include "bcache.h"
+ #include "format_flags.h"
+ #include "globals.h"
+@@ -52,16 +53,17 @@
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #include "muttlib.h"
+-#include "nntp.h"
+ #include "protos.h"
+ #include "sort.h"
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #endif
+
+ /* These Config Variables are only used in nntp/newsrc.c */
+ char *C_NewsCacheDir; ///< Config: (nntp) Directory for cached news articles
+ char *C_Newsrc; ///< Config: (nntp) File containing list of subscribed newsgroups
++char *C_NntpPass; ///< Config: (nntp) Password for the news server
++char *C_NntpUser; ///< Config: (nntp) Username for the news server
+
+ struct BodyCache;
+
+@@ -311,7 +313,7 @@ void nntp_newsrc_gen_entries(struct Mailbox *m)
+ {
+ save_sort = C_Sort;
+ C_Sort = SORT_ORDER;
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ }
+
+ entries = mdata->newsrc_len;
+@@ -379,7 +381,7 @@ void nntp_newsrc_gen_entries(struct Mailbox *m)
+ if (save_sort != C_Sort)
+ {
+ C_Sort = save_sort;
+- mailbox_changed(m, MBN_RESORT);
++ mailbox_changed(m, NT_MAILBOX_RESORT);
+ }
+ }
+
+@@ -516,20 +518,20 @@ int nntp_newsrc_update(struct NntpAccountData *adata)
+ * cache_expand - Make fully qualified cache file name
+ * @param dst Buffer for filename
+ * @param dstlen Length of buffer
+- * @param acct Account
++ * @param cac Account
+ * @param src Path to add to the URL
+ */
+-static void cache_expand(char *dst, size_t dstlen, struct ConnAccount *acct, const char *src)
++static void cache_expand(char *dst, size_t dstlen, struct ConnAccount *cac, const char *src)
+ {
+ char *c = NULL;
+ char file[PATH_MAX];
+
+ /* server subdirectory */
+- if (acct)
++ if (cac)
+ {
+- struct Url url;
++ struct Url url = { 0 };
+
+- mutt_account_tourl(acct, &url);
++ mutt_account_tourl(cac, &url);
+ url.path = mutt_str_strdup(src);
+ url_tostring(&url, file, sizeof(file), U_PATH);
+ FREE(&url.path);
+@@ -543,21 +545,26 @@ static void cache_expand(char *dst, size_t dstlen, struct ConnAccount *acct, con
+ c = dst + strlen(dst) - 1;
+ if (*c == '/')
+ *c = '\0';
+- mutt_expand_path(dst, dstlen);
+- mutt_encode_path(dst, dstlen, dst);
++
++ struct Buffer *tmp = mutt_buffer_pool_get();
++ mutt_buffer_addstr(tmp, dst);
++ mutt_buffer_expand_path(tmp);
++ mutt_encode_path(tmp, dst);
++ mutt_str_strfcpy(dst, mutt_b2s(tmp), dstlen);
++ mutt_buffer_pool_release(&tmp);
+ }
+
+ /**
+ * nntp_expand_path - Make fully qualified url from newsgroup name
+ * @param buf Buffer for the result
+ * @param buflen Length of buffer
+- * @param acct Account to serialise
++ * @param cac Account to serialise
+ */
+-void nntp_expand_path(char *buf, size_t buflen, struct ConnAccount *acct)
++void nntp_expand_path(char *buf, size_t buflen, struct ConnAccount *cac)
+ {
+- struct Url url;
++ struct Url url = { 0 };
+
+- mutt_account_tourl(acct, &url);
++ mutt_account_tourl(cac, &url);
+ url.path = mutt_str_strdup(buf);
+ url_tostring(&url, buf, buflen, 0);
+ FREE(&url.path);
+@@ -705,7 +712,7 @@ static void nntp_hcache_namer(const char *path, struct Buffer *dest)
+ */
+ header_cache_t *nntp_hcache_open(struct NntpMboxData *mdata)
+ {
+- struct Url url;
++ struct Url url = { 0 };
+ char file[PATH_MAX];
+
+ if (!mdata->adata || !mdata->adata->cacheable || !mdata->adata->conn ||
+@@ -916,15 +923,15 @@ const char *nntp_format_str(char *buf, size_t buflen, size_t col, int cols, char
+ const char *else_str, unsigned long data, MuttFormatFlags flags)
+ {
+ struct NntpAccountData *adata = (struct NntpAccountData *) data;
+- struct ConnAccount *acct = &adata->conn->account;
++ struct ConnAccount *cac = &adata->conn->account;
+ char fn[128], fmt[128];
+
+ switch (op)
+ {
+ case 'a':
+ {
+- struct Url url;
+- mutt_account_tourl(acct, &url);
++ struct Url url = { 0 };
++ mutt_account_tourl(cac, &url);
+ url_tostring(&url, fn, sizeof(fn), U_PATH);
+ char *p = strchr(fn, '/');
+ if (p)
+@@ -935,26 +942,26 @@ const char *nntp_format_str(char *buf, size_t buflen, size_t col, int cols, char
+ }
+ case 'p':
+ snprintf(fmt, sizeof(fmt), "%%%su", prec);
+- snprintf(buf, buflen, fmt, acct->port);
++ snprintf(buf, buflen, fmt, cac->port);
+ break;
+ case 'P':
+ *buf = '\0';
+- if (acct->flags & MUTT_ACCT_PORT)
++ if (cac->flags & MUTT_ACCT_PORT)
+ {
+ snprintf(fmt, sizeof(fmt), "%%%su", prec);
+- snprintf(buf, buflen, fmt, acct->port);
++ snprintf(buf, buflen, fmt, cac->port);
+ }
+ break;
+ case 's':
+- mutt_str_strfcpy(fn, acct->host, sizeof(fn));
++ mutt_str_strfcpy(fn, cac->host, sizeof(fn));
+ mutt_str_strlower(fn);
+ snprintf(fmt, sizeof(fmt), "%%%ss", prec);
+ snprintf(buf, buflen, fmt, fn);
+ break;
+ case 'S':
+ {
+- struct Url url;
+- mutt_account_tourl(acct, &url);
++ struct Url url = { 0 };
++ mutt_account_tourl(cac, &url);
+ url_tostring(&url, fn, sizeof(fn), U_PATH);
+ char *p = strchr(fn, ':');
+ if (p)
+@@ -965,16 +972,35 @@ const char *nntp_format_str(char *buf, size_t buflen, size_t col, int cols, char
+ }
+ case 'u':
+ snprintf(fmt, sizeof(fmt), "%%%ss", prec);
+- snprintf(buf, buflen, fmt, acct->user);
++ snprintf(buf, buflen, fmt, cac->user);
+ break;
+ }
+ return src;
+ }
+
++/**
++ * nntp_get_field - Get connection login credentials - Implements ConnAccount::get_field()
++ */
++static const char *nntp_get_field(enum ConnAccountField field)
++{
++ switch (field)
++ {
++ case MUTT_CA_LOGIN:
++ case MUTT_CA_USER:
++ return C_NntpUser;
++ case MUTT_CA_PASS:
++ return C_NntpPass;
++ case MUTT_CA_OAUTH_CMD:
++ case MUTT_CA_HOST:
++ default:
++ return NULL;
++ }
++}
++
+ /**
+ * nntp_select_server - Open a connection to an NNTP server
+ * @param m Mailbox
+- * @param server Server URI
++ * @param server Server URL
+ * @param leave_lock Leave the server locked?
+ * @retval ptr NNTP server
+ * @retval NULL Error
+@@ -988,7 +1014,7 @@ struct NntpAccountData *nntp_select_server(struct Mailbox *m, char *server, bool
+ {
+ char file[PATH_MAX];
+ int rc;
+- struct ConnAccount acct = { { 0 } };
++ struct ConnAccount cac = { { 0 } };
+ struct NntpAccountData *adata = NULL;
+ struct Connection *conn = NULL;
+
+@@ -999,14 +1025,17 @@ struct NntpAccountData *nntp_select_server(struct Mailbox *m, char *server, bool
+ }
+
+ /* create account from news server url */
+- acct.flags = 0;
+- acct.port = NNTP_PORT;
+- acct.type = MUTT_ACCT_TYPE_NNTP;
++ cac.flags = 0;
++ cac.port = NNTP_PORT;
++ cac.type = MUTT_ACCT_TYPE_NNTP;
++ cac.service = "nntp";
++ cac.get_field = nntp_get_field;
++
+ snprintf(file, sizeof(file), "%s%s", strstr(server, "://") ? "" : "news://", server);
+ struct Url *url = url_parse(file);
+ if (!url || (url->path && *url->path) ||
+ !((url->scheme == U_NNTP) || (url->scheme == U_NNTPS)) || !url->host ||
+- (mutt_account_fromurl(&acct, url) < 0))
++ (mutt_account_fromurl(&cac, url) < 0))
+ {
+ url_free(&url);
+ mutt_error(_("%s is an invalid news server specification"), server);
+@@ -1014,16 +1043,16 @@ struct NntpAccountData *nntp_select_server(struct Mailbox *m, char *server, bool
+ }
+ if (url->scheme == U_NNTPS)
+ {
+- acct.flags |= MUTT_ACCT_SSL;
+- acct.port = NNTP_SSL_PORT;
++ cac.flags |= MUTT_ACCT_SSL;
++ cac.port = NNTP_SSL_PORT;
+ }
+ url_free(&url);
+
+ /* find connection by account */
+- conn = mutt_conn_find(NULL, &acct);
++ conn = mutt_conn_find(&cac);
+ if (!conn)
+ return NULL;
+- if (!(conn->account.flags & MUTT_ACCT_USER) && acct.flags & MUTT_ACCT_USER)
++ if (!(conn->account.flags & MUTT_ACCT_USER) && cac.flags & MUTT_ACCT_USER)
+ {
+ conn->account.flags |= MUTT_ACCT_USER;
+ conn->account.user[0] = '\0';
+diff --git a/nntp/nntp.c b/nntp/nntp.c
+index 0bdd66116..d05fa6a1e 100644
+--- a/nntp/nntp.c
++++ b/nntp/nntp.c
+@@ -33,30 +33,33 @@
+ #include <ctype.h>
+ #include <limits.h>
+ #include <stdbool.h>
++#include <stdint.h>
++#include <stdio.h>
+ #include <string.h>
+ #include <strings.h>
++#include <time.h>
+ #include <unistd.h>
+ #include "nntp_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
+-#include "nntp.h"
++#include "conn/lib.h"
++#include "gui/lib.h"
++#include "lib.h"
+ #include "bcache.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "hcache/hcache.h"
+ #include "hook.h"
+-#include "mutt_account.h"
++#include "init.h"
+ #include "mutt_logging.h"
+ #include "mutt_parse.h"
+ #include "mutt_socket.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "progress.h"
+ #include "sort.h"
++#include "hcache/lib.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_HCACHE
+ #include "protos.h"
+ #endif
+@@ -68,6 +71,8 @@
+ #include "mutt.h"
+ #endif
+
++struct stat;
++
+ /* These Config Variables are only used in nntp/nntp.c */
+ char *C_NntpAuthenticators; ///< Config: (nntp) Allowed authentication methods
+ short C_NntpContext; ///< Config: (nntp) Maximum number of articles to list (0 for all articles)
+@@ -147,6 +152,7 @@ static void nntp_hashelem_free(int type, void *obj, intptr_t data)
+
+ /**
+ * nntp_adata_new - Allocate and initialise a new NntpAccountData structure
++ * @param conn Network connection
+ * @retval ptr New NntpAccountData
+ */
+ struct NntpAccountData *nntp_adata_new(struct Connection *conn)
+@@ -216,6 +222,7 @@ static struct NntpEmailData *nntp_edata_new(void)
+
+ /**
+ * nntp_edata_get - Get the private data for this Email
++ * @param e Email
+ * @retval ptr Private Email data
+ */
+ struct NntpEmailData *nntp_edata_get(struct Email *e)
+@@ -1699,7 +1706,7 @@ static int check_mailbox(struct Mailbox *m)
+
+ /* some headers were removed, context must be updated */
+ if (rc == MUTT_REOPENED)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+
+ /* fetch headers of new articles */
+ if (mdata->last_message > mdata->last_loaded)
+@@ -1720,7 +1727,7 @@ static int check_mailbox(struct Mailbox *m)
+ if (rc2 == 0)
+ {
+ if (m->msg_count > old_msg_count)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ mdata->last_loaded = mdata->last_message;
+ }
+ if ((rc == 0) && (m->msg_count > oldmsgcount))
+@@ -2282,7 +2289,7 @@ int nntp_check_msgid(struct Mailbox *m, const char *msgid)
+ e->changed = true;
+ e->received = e->date_sent;
+ e->index = m->msg_count++;
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ return 0;
+ }
+
+@@ -2350,7 +2357,7 @@ int nntp_check_children(struct Mailbox *m, const char *msgid)
+ break;
+ }
+ if (m->msg_count > old_msg_count)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+
+ #ifdef USE_HCACHE
+ mutt_hcache_close(hc);
+@@ -2384,18 +2391,18 @@ static struct Account *nntp_ac_find(struct Account *a, const char *path)
+ if (!a || (a->type != MUTT_NNTP) || !path)
+ return NULL;
+
+- struct Url url;
++ struct Url url = { 0 };
+ char tmp[PATH_MAX];
+ mutt_str_strfcpy(tmp, path, sizeof(tmp));
+ url_parse(&url, tmp);
+
+ struct ImapAccountData *adata = a->data;
+- struct ConnAccount *ac = &adata->conn_account;
++ struct ConnAccount *cac = &adata->conn_account;
+
+- if (mutt_str_strcasecmp(url.host, ac->host) != 0)
++ if (mutt_str_strcasecmp(url.host, cac->host) != 0)
+ return NULL;
+
+- if (mutt_str_strcasecmp(url.user, ac->user) != 0)
++ if (mutt_str_strcasecmp(url.user, cac->user) != 0)
+ return NULL;
+
+ // if (mutt_str_strcmp(path, a->mailbox->realpath) == 0)
+@@ -2881,11 +2888,13 @@ static int nntp_path_parent(char *buf, size_t buflen)
+ struct MxOps MxNntpOps = {
+ .magic = MUTT_NNTP,
+ .name = "nntp",
++ .is_local = false,
+ .ac_find = nntp_ac_find,
+ .ac_add = nntp_ac_add,
+ .mbox_open = nntp_mbox_open,
+ .mbox_open_append = NULL,
+ .mbox_check = nntp_mbox_check,
++ .mbox_check_stats = NULL,
+ .mbox_sync = nntp_mbox_sync,
+ .mbox_close = nntp_mbox_close,
+ .msg_open = nntp_msg_open,
+diff --git a/nntp/nntp_private.h b/nntp/nntp_private.h
+index 90a8f2877..d53e0677f 100644
+--- a/nntp/nntp_private.h
++++ b/nntp/nntp_private.h
+@@ -25,8 +25,8 @@
+
+ #include "config.h"
+ #include <stdint.h>
+-#include "nntp.h"
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
++#include "lib.h"
+
+ struct Connection;
+ struct Email;
+diff --git a/notmuch/mutt_notmuch.h b/notmuch/lib.h
+similarity index 92%
+rename from notmuch/mutt_notmuch.h
+rename to notmuch/lib.h
+index 4041245be..c7309ff4c 100644
+--- a/notmuch/mutt_notmuch.h
++++ b/notmuch/lib.h
+@@ -31,8 +31,8 @@
+ * | notmuch/nm_db.c | @subpage nm_db |
+ */
+
+-#ifndef MUTT_NOTMUCH_MUTT_NOTMUCH_H
+-#define MUTT_NOTMUCH_MUTT_NOTMUCH_H
++#ifndef MUTT_NOTMUCH_LIB_H
++#define MUTT_NOTMUCH_LIB_H
+
+ #include <stddef.h>
+ #include <stdbool.h>
+@@ -45,7 +45,7 @@ struct stat;
+
+ /* These Config Variables are only used in notmuch/mutt_notmuch.c */
+ extern int C_NmDbLimit;
+-extern char *C_NmDefaultUri;
++extern char *C_NmDefaultUrl;
+ extern char *C_NmExcludeTags;
+ extern int C_NmOpenTimeout;
+ extern char *C_NmQueryType;
+@@ -71,6 +71,6 @@ void nm_query_window_forward (void);
+ int nm_read_entire_thread (struct Mailbox *m, struct Email *e);
+ int nm_record_message (struct Mailbox *m, char *path, struct Email *e);
+ int nm_update_filename (struct Mailbox *m, const char *old_file, const char *new_file, struct Email *e);
+-char *nm_uri_from_query (struct Mailbox *m, char *buf, size_t buflen);
++char *nm_url_from_query (struct Mailbox *m, char *buf, size_t buflen);
+
+-#endif /* MUTT_NOTMUCH_MUTT_NOTMUCH_H */
++#endif /* MUTT_NOTMUCH_LIB_H */
+diff --git a/notmuch/mutt_notmuch.c b/notmuch/mutt_notmuch.c
+index 2c98d07c4..eb37d3e9e 100644
+--- a/notmuch/mutt_notmuch.c
++++ b/notmuch/mutt_notmuch.c
+@@ -31,8 +31,8 @@
+ * - all functions have to be covered by "mailbox->magic == MUTT_NOTMUCH" check
+ * (it's implemented in nm_mdata_get() and init_mailbox() functions).
+ *
+- * - exception are nm_nonctx_* functions -- these functions use nm_default_uri
+- * (or parse URI from another resource)
++ * - exception are nm_nonctx_* functions -- these functions use nm_default_url
++ * (or parse URL from another resource)
+ */
+
+ /**
+@@ -52,28 +52,30 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include "notmuch_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+-#include "mutt_notmuch.h"
+-#include "curs_lib.h"
++#include "lib.h"
+ #include "globals.h"
+-#include "hcache/hcache.h"
+ #include "index.h"
+-#include "maildir/lib.h"
+ #include "mutt_thread.h"
+ #include "mx.h"
+ #include "progress.h"
+ #include "protos.h"
++#include "hcache/lib.h"
++#include "maildir/lib.h"
+
+-const char NmUriProtocol[] = "notmuch://";
+-const int NmUriProtocolLen = sizeof(NmUriProtocol) - 1;
++struct stat;
++
++const char NmUrlProtocol[] = "notmuch://";
++const int NmUrlProtocolLen = sizeof(NmUrlProtocol) - 1;
+
+ /* These Config Variables are only used in notmuch/mutt_notmuch.c */
+ int C_NmDbLimit; ///< Config: (notmuch) Default limit for Notmuch queries
+-char *C_NmDefaultUri; ///< Config: (notmuch) Path to the Notmuch database
++char *C_NmDefaultUrl; ///< Config: (notmuch) Path to the Notmuch database
+ char *C_NmExcludeTags; ///< Config: (notmuch) Exclude messages with these tags
+ int C_NmOpenTimeout; ///< Config: (notmuch) Database timeout
+ char *C_NmQueryType; ///< Config: (notmuch) Default query type: 'threads' or 'messages'
+@@ -197,15 +199,15 @@ void nm_mdata_free(void **ptr)
+
+ /**
+ * nm_mdata_new - Create a new NmMboxData object from a query
+- * @param uri Notmuch query string
++ * @param url Notmuch query string
+ * @retval ptr New NmMboxData struct
+ *
+ * A new NmMboxData struct is created, then the query is parsed and saved
+ * within it. This should be freed using nm_mdata_free().
+ */
+-struct NmMboxData *nm_mdata_new(const char *uri)
++struct NmMboxData *nm_mdata_new(const char *url)
+ {
+- if (!uri)
++ if (!url)
+ return NULL;
+
+ struct NmMboxData *mdata = mutt_mem_calloc(1, sizeof(struct NmMboxData));
+@@ -213,10 +215,10 @@ struct NmMboxData *nm_mdata_new(const char *uri)
+
+ mdata->db_limit = C_NmDbLimit;
+ mdata->query_type = string_to_query_type(C_NmQueryType);
+- mdata->db_url = url_parse(uri);
++ mdata->db_url = url_parse(url);
+ if (!mdata->db_url)
+ {
+- mutt_error(_("failed to parse notmuch uri: %s"), uri);
++ mutt_error(_("failed to parse notmuch url: %s"), url);
+ FREE(&mdata);
+ return NULL;
+ }
+@@ -273,19 +275,19 @@ struct NmEmailData *nm_edata_new(void)
+ */
+ static struct NmMboxData *nm_get_default_data(void)
+ {
+- // path to DB + query + URI "decoration"
+- char uri[PATH_MAX + 1024 + 32];
++ // path to DB + query + url "decoration"
++ char url[PATH_MAX + 1024 + 32];
+
+- // Try to use C_NmDefaultUri or C_Folder.
+- // If neither are set, it is impossible to create a Notmuch URI.
+- if (C_NmDefaultUri)
+- snprintf(uri, sizeof(uri), "%s", C_NmDefaultUri);
++ // Try to use C_NmDefaultUrl or C_Folder.
++ // If neither are set, it is impossible to create a Notmuch URL.
++ if (C_NmDefaultUrl)
++ snprintf(url, sizeof(url), "%s", C_NmDefaultUrl);
+ else if (C_Folder)
+- snprintf(uri, sizeof(uri), "notmuch://%s", C_Folder);
++ snprintf(url, sizeof(url), "notmuch://%s", C_Folder);
+ else
+ return NULL;
+
+- return nm_mdata_new(uri);
++ return nm_mdata_new(url);
+ }
+
+ /**
+@@ -385,7 +387,7 @@ static bool query_window_check_timebase(const char *timebase)
+ static void query_window_reset(void)
+ {
+ mutt_debug(LL_DEBUG2, "entering\n");
+- cs_str_native_set(Config, "nm_query_window_current_position", 0, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "nm_query_window_current_position", 0, NULL);
+ }
+
+ /**
+@@ -1694,7 +1696,7 @@ int nm_read_entire_thread(struct Mailbox *m, struct Email *e)
+ rc = 0;
+
+ if (m->msg_count > mdata->oldmsgcount)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ done:
+ if (q)
+ notmuch_query_destroy(q);
+@@ -1713,7 +1715,7 @@ int nm_read_entire_thread(struct Mailbox *m, struct Email *e)
+ /**
+ * nm_parse_type_from_query - Parse a query type out of a query
+ * @param mdata Mailbox, used for the query_type
+- * @param buf Buffer for URI
++ * @param buf Buffer for URL
+ *
+ * If a user writes a query for a vfolder and includes a type= statement, that
+ * type= will be encoded, which Notmuch will treat as part of the query=
+@@ -1741,18 +1743,18 @@ void nm_parse_type_from_query(struct NmMboxData *mdata, char *buf)
+ }
+
+ /**
+- * nm_uri_from_query - Turn a query into a URI
++ * nm_url_from_query - Turn a query into a URL
+ * @param m Mailbox
+- * @param buf Buffer for URI
++ * @param buf Buffer for URL
+ * @param buflen Length of buffer
+- * @retval ptr Query as a URI
++ * @retval ptr Query as a URL
+ * @retval NULL Error
+ */
+-char *nm_uri_from_query(struct Mailbox *m, char *buf, size_t buflen)
++char *nm_url_from_query(struct Mailbox *m, char *buf, size_t buflen)
+ {
+ mutt_debug(LL_DEBUG2, "(%s)\n", buf);
+ struct NmMboxData *mdata = nm_mdata_get(m);
+- char uri[PATH_MAX + 1024 + 32]; /* path to DB + query + URI "decoration" */
++ char url[PATH_MAX + 1024 + 32]; /* path to DB + query + URL "decoration" */
+ int added;
+ bool using_default_data = false;
+
+@@ -1772,31 +1774,31 @@ char *nm_uri_from_query(struct Mailbox *m, char *buf, size_t buflen)
+
+ if (get_limit(mdata) == C_NmDbLimit)
+ {
+- added = snprintf(uri, sizeof(uri), "%s%s?type=%s&query=", NmUriProtocol,
++ added = snprintf(url, sizeof(url), "%s%s?type=%s&query=", NmUrlProtocol,
+ nm_db_get_filename(m), query_type_to_string(mdata->query_type));
+ }
+ else
+ {
+- added = snprintf(uri, sizeof(uri), "%s%s?type=%s&limit=%d&query=", NmUriProtocol,
++ added = snprintf(url, sizeof(url), "%s%s?type=%s&limit=%d&query=", NmUrlProtocol,
+ nm_db_get_filename(m),
+ query_type_to_string(mdata->query_type), get_limit(mdata));
+ }
+
+- if (added >= sizeof(uri))
++ if (added >= sizeof(url))
+ {
+- // snprintf output was truncated, so can't create URI
++ // snprintf output was truncated, so can't create URL
+ return NULL;
+ }
+
+- url_pct_encode(&uri[added], sizeof(uri) - added, buf);
++ url_pct_encode(&url[added], sizeof(url) - added, buf);
+
+- mutt_str_strfcpy(buf, uri, buflen);
++ mutt_str_strfcpy(buf, url, buflen);
+ buf[buflen - 1] = '\0';
+
+ if (using_default_data)
+ nm_mdata_free((void **) &mdata);
+
+- mutt_debug(LL_DEBUG1, "nm: uri from query '%s'\n", buf);
++ mutt_debug(LL_DEBUG1, "nm: url from query '%s'\n", buf);
+ return buf;
+ }
+
+@@ -1936,7 +1938,7 @@ static int nm_mbox_check_stats(struct Mailbox *m, int flags)
+ url = url_parse(mailbox_path(m));
+ if (!url)
+ {
+- mutt_error(_("failed to parse notmuch uri: %s"), mailbox_path(m));
++ mutt_error(_("failed to parse notmuch url: %s"), mailbox_path(m));
+ goto done;
+ }
+
+@@ -1961,12 +1963,12 @@ static int nm_mbox_check_stats(struct Mailbox *m, int flags)
+ db_filename = url->path;
+ if (!db_filename)
+ {
+- if (C_NmDefaultUri)
++ if (C_NmDefaultUrl)
+ {
+- if (nm_path_probe(C_NmDefaultUri, NULL) == MUTT_NOTMUCH)
+- db_filename = C_NmDefaultUri + NmUriProtocolLen;
++ if (nm_path_probe(C_NmDefaultUrl, NULL) == MUTT_NOTMUCH)
++ db_filename = C_NmDefaultUrl + NmUrlProtocolLen;
+ else
+- db_filename = C_NmDefaultUri;
++ db_filename = C_NmDefaultUrl;
+ }
+ else if (C_Folder)
+ db_filename = C_Folder;
+@@ -2320,7 +2322,7 @@ static int nm_mbox_check(struct Mailbox *m, int *index_hint)
+ }
+
+ if (m->msg_count > mdata->oldmsgcount)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+ done:
+ if (q)
+ notmuch_query_destroy(q);
+@@ -2352,7 +2354,7 @@ static int nm_mbox_sync(struct Mailbox *m, int *index_hint)
+
+ int rc = 0;
+ struct Progress progress;
+- char *uri = mutt_str_strdup(mailbox_path(m));
++ char *url = mutt_str_strdup(mailbox_path(m));
+ bool changed = false;
+
+ mutt_debug(LL_DEBUG1, "nm: sync start\n");
+@@ -2394,7 +2396,7 @@ static int nm_mbox_sync(struct Mailbox *m, int *index_hint)
+ mutt_buffer_strcpy(&m->pathbuf, edata->folder);
+ m->magic = edata->magic;
+ rc = mh_sync_mailbox_message(m, i, h);
+- mutt_buffer_strcpy(&m->pathbuf, uri);
++ mutt_buffer_strcpy(&m->pathbuf, url);
+ m->magic = MUTT_NOTMUCH;
+
+ if (rc)
+@@ -2414,7 +2416,7 @@ static int nm_mbox_sync(struct Mailbox *m, int *index_hint)
+ FREE(&edata->oldpath);
+ }
+
+- mutt_buffer_strcpy(&m->pathbuf, uri);
++ mutt_buffer_strcpy(&m->pathbuf, url);
+ m->magic = MUTT_NOTMUCH;
+
+ nm_db_release(m);
+@@ -2427,7 +2429,7 @@ static int nm_mbox_sync(struct Mailbox *m, int *index_hint)
+
+ nm_hcache_close(h);
+
+- FREE(&uri);
++ FREE(&url);
+ mutt_debug(LL_DEBUG1, "nm: .... sync done [rc=%d]\n", rc);
+ return rc;
+ }
+@@ -2548,7 +2550,7 @@ static int nm_tags_commit(struct Mailbox *m, struct Email *e, char *buf)
+ */
+ enum MailboxType nm_path_probe(const char *path, const struct stat *st)
+ {
+- if (!path || !mutt_str_startswith(path, NmUriProtocol, CASE_IGNORE))
++ if (!path || !mutt_str_startswith(path, NmUrlProtocol, CASE_IGNORE))
+ return MUTT_UNKNOWN;
+
+ return MUTT_NOTMUCH;
+@@ -2590,6 +2592,7 @@ static int nm_path_parent(char *buf, size_t buflen)
+ struct MxOps MxNotmuchOps = {
+ .magic = MUTT_NOTMUCH,
+ .name = "notmuch",
++ .is_local = false,
+ .ac_find = nm_ac_find,
+ .ac_add = nm_ac_add,
+ .mbox_open = nm_mbox_open,
+diff --git a/notmuch/nm_db.c b/notmuch/nm_db.c
+index 27a2ef52f..966827923 100644
+--- a/notmuch/nm_db.c
++++ b/notmuch/nm_db.c
+@@ -34,19 +34,19 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include "notmuch_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "lib.h"
+ #include "globals.h"
+ #include "mutt_logging.h"
+-#include "mutt_notmuch.h"
+
+ /**
+ * nm_db_get_filename - Get the filename of the Notmuch database
+ * @param m Mailbox
+ * @retval ptr Filename
+ *
+- * @note The return value is a pointer into the #C_NmDefaultUri global variable.
++ * @note The return value is a pointer into the #C_NmDefaultUrl global variable.
+ * If that variable changes, the result will be invalid.
+ * It must not be freed.
+ */
+@@ -58,7 +58,7 @@ const char *nm_db_get_filename(struct Mailbox *m)
+ if (mdata && mdata->db_url && mdata->db_url->path)
+ db_filename = mdata->db_url->path;
+ else
+- db_filename = C_NmDefaultUri;
++ db_filename = C_NmDefaultUrl;
+
+ if (!db_filename && !C_Folder)
+ return NULL;
+@@ -67,7 +67,7 @@ const char *nm_db_get_filename(struct Mailbox *m)
+ db_filename = C_Folder;
+
+ if (nm_path_probe(db_filename, NULL) == MUTT_NOTMUCH)
+- db_filename += NmUriProtocolLen;
++ db_filename += NmUrlProtocolLen;
+
+ mutt_debug(LL_DEBUG2, "nm: db filename '%s'\n", db_filename);
+ return db_filename;
+diff --git a/notmuch/notmuch_private.h b/notmuch/notmuch_private.h
+index 3c8bd987c..9dff69540 100644
+--- a/notmuch/notmuch_private.h
++++ b/notmuch/notmuch_private.h
+@@ -40,7 +40,7 @@
+ (LIBNOTMUCH_MAJOR_VERSION == (major) && \
+ LIBNOTMUCH_MINOR_VERSION == (minor) && LIBNOTMUCH_MICRO_VERSION >= (micro)))
+
+-extern const int NmUriProtocolLen;
++extern const int NmUrlProtocolLen;
+
+ /**
+ * struct NmAccountData - Notmuch-specific Account data - @extends Account
+@@ -109,6 +109,6 @@ void nm_edata_free(void **ptr);
+ struct NmEmailData * nm_edata_new (void);
+ void nm_mdata_free(void **ptr);
+ struct NmMboxData * nm_mdata_get (struct Mailbox *m);
+-struct NmMboxData * nm_mdata_new (const char *uri);
++struct NmMboxData * nm_mdata_new (const char *url);
+
+ #endif /* MUTT_NOTMUCH_NOTMUCH_PRIVATE_H */
+diff --git a/options.h b/options.h
+index 71c2d1f48..faf7e240e 100644
+--- a/options.h
++++ b/options.h
+@@ -36,6 +36,7 @@ WHERE bool OptForceRefresh; ///< (pseudo) refresh even during macros
+ WHERE bool OptIgnoreMacroEvents; ///< (pseudo) don't process macro/push/exec events while set
+ WHERE bool OptKeepQuiet; ///< (pseudo) shut up the message and refresh functions while we are executing an external program
+ WHERE bool OptMenuCaller; ///< (pseudo) tell menu to give caller a take
++WHERE bool OptMenuPopClearScreen; ///< (pseudo) clear the screen when popping the last menu
+ WHERE bool OptMsgErr; ///< (pseudo) used by mutt_error/mutt_message
+ WHERE bool OptNeedRescore; ///< (pseudo) set when the 'score' command is used
+ WHERE bool OptNeedResort; ///< (pseudo) used to force a re-sort
+diff --git a/pager.c b/pager.c
+index 793cdfb3d..7d439a75a 100644
+--- a/pager.c
++++ b/pager.c
+@@ -38,33 +38,30 @@
+ #include <sys/stat.h>
+ #include <unistd.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "pager.h"
+ #include "alias.h"
+-#include "color.h"
+ #include "commands.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "hdrline.h"
+ #include "hook.h"
+ #include "index.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mutt_attach.h"
+-#include "mutt_curses.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "protos.h"
+@@ -72,12 +69,12 @@
+ #include "recvcmd.h"
+ #include "send.h"
+ #include "status.h"
+-#include "terminal.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_SIDEBAR
+ #include "sidebar.h"
+ #endif
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+@@ -190,10 +187,6 @@ struct PagerRedrawData
+ struct QClass *quote_list;
+ LOFF_T last_pos;
+ LOFF_T last_offset;
+- struct MuttWindow *index_status_window;
+- struct MuttWindow *index_window;
+- struct MuttWindow *pager_status_window;
+- struct MuttWindow *pager_window;
+ struct Menu *menu; ///< the Pager Index (PI)
+ regex_t search_re;
+ bool search_compiled;
+@@ -1625,7 +1618,7 @@ static int format_line(struct Line **line_info, int n, unsigned char *buf,
+ * @param[out] q_level Level of quoting
+ * @param[out] force_redraw Force a repaint
+ * @param[out] search_re Regex to highlight
+- * @param[in] pager_window Window to draw into
++ * @param[in] win_pager Window to draw into
+ * @retval -1 EOF was reached
+ * @retval 0 normal exit, line was not displayed
+ * @retval >0 normal exit, line was displayed
+@@ -1633,7 +1626,7 @@ static int format_line(struct Line **line_info, int n, unsigned char *buf,
+ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
+ int n, int *last, int *max, PagerFlags flags,
+ struct QClass **quote_list, int *q_level, bool *force_redraw,
+- regex_t *search_re, struct MuttWindow *pager_window)
++ regex_t *search_re, struct MuttWindow *win_pager)
+ {
+ unsigned char *buf = NULL, *fmt = NULL;
+ size_t buflen = 0;
+@@ -1806,7 +1799,7 @@ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
+
+ /* now chose a good place to break the line */
+ cnt = format_line(line_info, n, buf, flags, NULL, b_read, &ch, &vch, &col,
+- &special, pager_window->cols);
++ &special, win_pager->state.cols);
+ buf_ptr = buf + cnt;
+
+ /* move the break point only if smart_wrap is set */
+@@ -1854,7 +1847,7 @@ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
+
+ /* display the line */
+ format_line(line_info, n, buf, flags, &a, cnt, &ch, &vch, &col, &special,
+- pager_window->cols);
++ win_pager->state.cols);
+
+ /* avoid a bug in ncurses... */
+ #ifndef USE_SLANG_CURSES
+@@ -1866,7 +1859,7 @@ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
+ #endif
+
+ /* end the last color pattern (needed by S-Lang) */
+- if (special || ((col != pager_window->cols) && (flags & (MUTT_SHOWCOLOR | MUTT_SEARCH))))
++ if (special || ((col != win_pager->state.cols) && (flags & (MUTT_SHOWCOLOR | MUTT_SEARCH))))
+ resolve_color(*line_info, n, vch, flags, 0, &a);
+
+ /* Fill the blank space at the end of the line with the prevailing color.
+@@ -1883,8 +1876,8 @@ static int display_line(FILE *fp, LOFF_T *last_pos, struct Line **line_info,
+ mutt_curses_set_attr(def_color);
+ }
+
+- if (col < pager_window->cols)
+- mutt_window_clrtoeol(pager_window);
++ if (col < win_pager->state.cols)
++ mutt_window_clrtoeol(win_pager);
+
+ /* reset the color back to normal. This *must* come after the
+ * clrtoeol, otherwise the color for this line will not be
+@@ -1934,7 +1927,7 @@ void mutt_clear_pager_position(void)
+ }
+
+ /**
+- * pager_custom_redraw - Redraw the pager window - Implements Menu::menu_custom_redraw()
++ * pager_custom_redraw - Redraw the pager window - Implements Menu::custom_redraw()
+ */
+ static void pager_custom_redraw(struct Menu *pager_menu)
+ {
+@@ -1961,47 +1954,11 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+
+ rd->indicator = rd->indexlen / 3;
+
+- mutt_window_copy_size(MuttIndexWindow, rd->pager_window);
+- mutt_window_copy_size(MuttStatusWindow, rd->pager_status_window);
+- rd->index_status_window->rows = 0;
+- rd->index_window->rows = 0;
+-
+- if (IsEmail(rd->extra) && (C_PagerIndexLines != 0))
+- {
+- mutt_window_copy_size(MuttIndexWindow, rd->index_window);
+- rd->index_window->rows = (rd->indexlen > 0) ? rd->indexlen - 1 : 0;
+-
+- if (C_StatusOnTop)
+- {
+- mutt_window_copy_size(MuttStatusWindow, rd->index_status_window);
+-
+- mutt_window_copy_size(MuttIndexWindow, rd->pager_status_window);
+- rd->pager_status_window->rows = 1;
+- rd->pager_status_window->row_offset += rd->index_window->rows;
+-
+- rd->pager_window->rows -=
+- rd->index_window->rows + rd->pager_status_window->rows;
+- rd->pager_window->row_offset +=
+- rd->index_window->rows + rd->pager_status_window->rows;
+- }
+- else
+- {
+- mutt_window_copy_size(MuttIndexWindow, rd->index_status_window);
+- rd->index_status_window->rows = 1;
+- rd->index_status_window->row_offset += rd->index_window->rows;
+-
+- rd->pager_window->rows -=
+- rd->index_window->rows + rd->index_status_window->rows;
+- rd->pager_window->row_offset +=
+- rd->index_window->rows + rd->index_status_window->rows;
+- }
+- }
+-
+ if (C_Help)
+ {
+ mutt_curses_set_color(MT_COLOR_STATUS);
+ mutt_window_move(MuttHelpWindow, 0, 0);
+- mutt_paddstr(MuttHelpWindow->cols, rd->helpstr);
++ mutt_paddstr(MuttHelpWindow->state.cols, rd->helpstr);
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ }
+
+@@ -2037,16 +1994,16 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ /* only allocate the space if/when we need the index.
+ * Initialise the menu as per the main index */
+ rd->menu = mutt_menu_new(MENU_MAIN);
+- rd->menu->menu_make_entry = index_make_entry;
+- rd->menu->menu_color = index_color;
++ rd->menu->make_entry = index_make_entry;
++ rd->menu->color = index_color;
+ rd->menu->max = Context ? Context->mailbox->vcount : 0;
+ rd->menu->current = rd->extra->email->vnum;
+- rd->menu->indexwin = rd->index_window;
+- rd->menu->statuswin = rd->index_status_window;
++ rd->menu->win_index = rd->extra->win_index;
++ rd->menu->win_ibar = rd->extra->win_ibar;
+ }
+
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+- rd->menu->pagelen = rd->index_window->rows;
++ rd->menu->pagelen = rd->extra->win_index->state.rows;
+
+ /* some fudge to work out whereabouts the indicator should go */
+ if (rd->menu->current - rd->indicator < 0)
+@@ -2096,7 +2053,7 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ while (display_line(rd->fp, &rd->last_pos, &rd->line_info, ++i, &rd->last_line,
+ &rd->max_line, rd->has_types | rd->search_flag | (rd->flags & MUTT_PAGER_NOWRAP),
+ &rd->quote_list, &rd->q_level, &rd->force_redraw,
+- &rd->search_re, rd->pager_window) == 0)
++ &rd->search_re, rd->extra->win_pager) == 0)
+ {
+ if (!rd->line_info[i].continuation && (++j == rd->lines))
+ {
+@@ -2118,13 +2075,13 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ {
+ do
+ {
+- mutt_window_move(rd->pager_window, 0, 0);
++ mutt_window_move(rd->extra->win_pager, 0, 0);
+ rd->curline = rd->topline;
+ rd->oldtopline = rd->topline;
+ rd->lines = 0;
+ rd->force_redraw = false;
+
+- while ((rd->lines < rd->pager_window->rows) &&
++ while ((rd->lines < rd->extra->win_pager->state.rows) &&
+ (rd->line_info[rd->curline].offset <= rd->sb.st_size - 1))
+ {
+ if (display_line(rd->fp, &rd->last_pos, &rd->line_info, rd->curline,
+@@ -2132,24 +2089,24 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ (rd->flags & MUTT_DISPLAYFLAGS) | rd->hide_quoted |
+ rd->search_flag | (rd->flags & MUTT_PAGER_NOWRAP),
+ &rd->quote_list, &rd->q_level, &rd->force_redraw,
+- &rd->search_re, rd->pager_window) > 0)
++ &rd->search_re, rd->extra->win_pager) > 0)
+ {
+ rd->lines++;
+ }
+ rd->curline++;
+- mutt_window_move(rd->pager_window, rd->lines, 0);
++ mutt_window_move(rd->extra->win_pager, rd->lines, 0);
+ }
+ rd->last_offset = rd->line_info[rd->curline].offset;
+ } while (rd->force_redraw);
+
+ mutt_curses_set_color(MT_COLOR_TILDE);
+- while (rd->lines < rd->pager_window->rows)
++ while (rd->lines < rd->extra->win_pager->state.rows)
+ {
+- mutt_window_clrtoeol(rd->pager_window);
++ mutt_window_clrtoeol(rd->extra->win_pager);
+ if (C_Tilde)
+ mutt_window_addch('~');
+ rd->lines++;
+- mutt_window_move(rd->pager_window, rd->lines, 0);
++ mutt_window_move(rd->extra->win_pager, rd->lines, 0);
+ }
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+
+@@ -2184,23 +2141,23 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ }
+
+ /* print out the pager status bar */
+- mutt_window_move(rd->pager_status_window, 0, 0);
++ mutt_window_move(rd->extra->win_pbar, 0, 0);
+ mutt_curses_set_color(MT_COLOR_STATUS);
+
+ if (IsEmail(rd->extra) || IsMsgAttach(rd->extra))
+ {
+- size_t l1 = rd->pager_status_window->cols * MB_LEN_MAX;
++ size_t l1 = rd->extra->win_pbar->state.cols * MB_LEN_MAX;
+ size_t l2 = sizeof(buf);
+ hfi.email = (IsEmail(rd->extra)) ? rd->extra->email : rd->extra->body->email;
+- mutt_make_string_info(buf, (l1 < l2) ? l1 : l2, rd->pager_status_window->cols,
++ mutt_make_string_info(buf, (l1 < l2) ? l1 : l2, rd->extra->win_pbar->state.cols,
+ NONULL(C_PagerFormat), &hfi, MUTT_FORMAT_NO_FLAGS);
+- mutt_draw_statusline(rd->pager_status_window->cols, buf, l2);
++ mutt_draw_statusline(rd->extra->win_pbar->state.cols, buf, l2);
+ }
+ else
+ {
+ char bn[256];
+ snprintf(bn, sizeof(bn), "%s (%s)", rd->banner, pager_progress_str);
+- mutt_draw_statusline(rd->pager_status_window->cols, bn, sizeof(bn));
++ mutt_draw_statusline(rd->extra->win_pbar->state.cols, bn, sizeof(bn));
+ }
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ if (C_TsEnabled && TsSupported && rd->menu)
+@@ -2216,15 +2173,15 @@ static void pager_custom_redraw(struct Menu *pager_menu)
+ {
+ /* redraw the pager_index indicator, because the
+ * flags for this message might have changed. */
+- if (rd->index_window->rows > 0)
++ if (rd->extra->win_index->state.rows > 0)
+ menu_redraw_current(rd->menu);
+
+ /* print out the index status bar */
+ menu_status_line(buf, sizeof(buf), rd->menu, NONULL(C_StatusFormat));
+
+- mutt_window_move(rd->index_status_window, 0, 0);
++ mutt_window_move(rd->extra->win_ibar, 0, 0);
+ mutt_curses_set_color(MT_COLOR_STATUS);
+- mutt_draw_statusline(rd->index_status_window->cols, buf, sizeof(buf));
++ mutt_draw_statusline(rd->extra->win_ibar->state.cols, buf, sizeof(buf));
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+ }
+
+@@ -2264,11 +2221,15 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ if (!(flags & MUTT_SHOWCOLOR))
+ flags |= MUTT_SHOWFLAT;
+
++ int index_space = C_PagerIndexLines;
++ if (extra->ctx && extra->ctx->mailbox)
++ index_space = MIN(index_space, extra->ctx->mailbox->vcount);
++
+ struct PagerRedrawData rd = { 0 };
+ rd.banner = banner;
+ rd.flags = flags;
+ rd.extra = extra;
+- rd.indexlen = C_PagerIndexLines;
++ rd.indexlen = index_space;
+ rd.indicator = rd.indexlen / 3;
+ rd.searchbuf = searchbuf;
+ rd.has_types = (IsEmail(extra) || (flags & MUTT_SHOWCOLOR)) ? MUTT_TYPES : 0; /* main message or rfc822 attachment */
+@@ -2288,6 +2249,17 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ }
+ unlink(fname);
+
++ if (rd.extra->win_index)
++ {
++ rd.extra->win_index->size = MUTT_WIN_SIZE_FIXED;
++ rd.extra->win_index->req_rows = index_space;
++ rd.extra->win_index->parent->size = MUTT_WIN_SIZE_MINIMISE;
++ rd.extra->win_index->parent->state.visible = (index_space > 0);
++ }
++ rd.extra->win_pager->parent->state.visible = true;
++ rd.extra->win_pager->size = MUTT_WIN_SIZE_MAXIMISE;
++ mutt_window_reflow(mutt_window_dialog(rd.extra->win_pager));
++
+ /* Initialize variables */
+
+ if (Context && IsEmail(extra) && !extra->email->read)
+@@ -2329,13 +2301,12 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ }
+ rd.helpstr = mutt_b2s(&helpstr);
+
+- rd.index_status_window = mutt_window_new();
+- rd.index_window = mutt_window_new();
+- rd.pager_status_window = mutt_window_new();
+- rd.pager_window = mutt_window_new();
+-
+ pager_menu = mutt_menu_new(MENU_PAGER);
+- pager_menu->menu_custom_redraw = pager_custom_redraw;
++ pager_menu->pagelen = extra->win_pager->state.rows;
++ pager_menu->win_index = extra->win_pager;
++ pager_menu->win_ibar = extra->win_pbar;
++
++ pager_menu->custom_redraw = pager_custom_redraw;
+ pager_menu->redraw_data = &rd;
+ mutt_menu_push_current(pager_menu);
+
+@@ -2354,7 +2325,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ }
+ }
+ else
+- mutt_window_move(rd.pager_status_window, 0, rd.pager_status_window->cols - 1);
++ mutt_window_move(rd.extra->win_pbar, 0, rd.extra->win_pager->state.cols - 1);
+
+ mutt_refresh();
+
+@@ -2422,6 +2393,9 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ rd.menu->current =
+ MIN(rd.menu->current, MAX(Context->mailbox->msg_count - 1, 0));
+ struct Email *e = mutt_get_virt_email(Context->mailbox, rd.menu->current);
++ if (!e)
++ continue;
++
+ index_hint = e->index;
+
+ bool q = Context->mailbox->quiet;
+@@ -2514,7 +2488,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ if (query_quadoption(C_Quit, _("Quit NeoMutt?")) == MUTT_YES)
+ {
+ /* avoid prompting again in the index menu */
+- cs_str_native_set(Config, "quit", MUTT_YES, NULL);
++ cs_subset_str_native_set(NeoMutt->sub, "quit", MUTT_YES, NULL);
+ ch = -1;
+ }
+ break;
+@@ -2544,7 +2518,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ }
+ else
+ {
+- rd.topline = up_n_lines(rd.pager_window->rows - C_PagerContext,
++ rd.topline = up_n_lines(rd.extra->win_pager->state.rows - C_PagerContext,
+ rd.line_info, rd.topline, rd.hide_quoted);
+ }
+ break;
+@@ -2583,7 +2557,8 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ case OP_HALF_UP:
+ if (rd.topline)
+ {
+- rd.topline = up_n_lines(rd.pager_window->rows / 2 + (rd.pager_window->rows % 2),
++ rd.topline = up_n_lines(rd.extra->win_pager->state.rows / 2 +
++ (rd.extra->win_pager->state.rows % 2),
+ rd.line_info, rd.topline, rd.hide_quoted);
+ }
+ else
+@@ -2593,8 +2568,8 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ case OP_HALF_DOWN:
+ if (rd.line_info[rd.curline].offset < (rd.sb.st_size - 1))
+ {
+- rd.topline = up_n_lines(rd.pager_window->rows / 2, rd.line_info,
+- rd.curline, rd.hide_quoted);
++ rd.topline = up_n_lines(rd.extra->win_pager->state.rows / 2,
++ rd.line_info, rd.curline, rd.hide_quoted);
+ }
+ else if (C_PagerStop)
+ {
+@@ -2615,7 +2590,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ {
+ wrapped = false;
+
+- if (C_SearchContext < rd.pager_window->rows)
++ if (C_SearchContext < rd.extra->win_pager->state.rows)
+ searchctx = C_SearchContext;
+ else
+ searchctx = 0;
+@@ -2756,7 +2731,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ &rd.last_line, &rd.max_line,
+ MUTT_SEARCH | (flags & MUTT_PAGER_NSKIP) | (flags & MUTT_PAGER_NOWRAP),
+ &rd.quote_list, &rd.q_level, &rd.force_redraw,
+- &rd.search_re, rd.pager_window) == 0)
++ &rd.search_re, rd.extra->win_pager) == 0)
+ {
+ line_num++;
+ }
+@@ -2803,7 +2778,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ {
+ rd.search_flag = MUTT_SEARCH;
+ /* give some context for search results */
+- if (C_SearchContext < rd.pager_window->rows)
++ if (C_SearchContext < rd.extra->win_pager->state.rows)
+ searchctx = C_SearchContext;
+ else
+ searchctx = 0;
+@@ -2842,7 +2817,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ }
+
+ InHelp = true;
+- mutt_help(MENU_PAGER, MuttIndexWindow->cols);
++ mutt_help(MENU_PAGER, pager_menu->win_index->state.cols);
+ pager_menu->redraw = REDRAW_FULL;
+ InHelp = false;
+ break;
+@@ -2872,7 +2847,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ rd.fp, &rd.last_pos, &rd.line_info, new_topline, &rd.last_line,
+ &rd.max_line, MUTT_TYPES | (flags & MUTT_PAGER_NOWRAP),
+ &rd.quote_list, &rd.q_level, &rd.force_redraw,
+- &rd.search_re, rd.pager_window)))) &&
++ &rd.search_re, rd.extra->win_pager)))) &&
+ IS_HEADER(rd.line_info[new_topline].type))
+ {
+ new_topline++;
+@@ -2886,7 +2861,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ rd.fp, &rd.last_pos, &rd.line_info, new_topline, &rd.last_line,
+ &rd.max_line, MUTT_TYPES | (flags & MUTT_PAGER_NOWRAP),
+ &rd.quote_list, &rd.q_level, &rd.force_redraw,
+- &rd.search_re, rd.pager_window)))) &&
++ &rd.search_re, rd.extra->win_pager)))) &&
+ (rd.line_info[new_topline + C_SkipQuotedOffset].type != MT_COLOR_QUOTED))
+ {
+ new_topline++;
+@@ -2903,7 +2878,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ rd.fp, &rd.last_pos, &rd.line_info, new_topline, &rd.last_line,
+ &rd.max_line, MUTT_TYPES | (flags & MUTT_PAGER_NOWRAP),
+ &rd.quote_list, &rd.q_level, &rd.force_redraw,
+- &rd.search_re, rd.pager_window)))) &&
++ &rd.search_re, rd.extra->win_pager)))) &&
+ (rd.line_info[new_topline + C_SkipQuotedOffset].type == MT_COLOR_QUOTED))
+ {
+ new_topline++;
+@@ -2926,11 +2901,11 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ while (display_line(rd.fp, &rd.last_pos, &rd.line_info, line_num, &rd.last_line,
+ &rd.max_line, rd.has_types | (flags & MUTT_PAGER_NOWRAP),
+ &rd.quote_list, &rd.q_level, &rd.force_redraw,
+- &rd.search_re, rd.pager_window) == 0)
++ &rd.search_re, rd.extra->win_pager) == 0)
+ {
+ line_num++;
+ }
+- rd.topline = up_n_lines(rd.pager_window->rows, rd.line_info,
++ rd.topline = up_n_lines(rd.extra->win_pager->state.rows, rd.line_info,
+ rd.last_line, rd.hide_quoted);
+ }
+ else
+@@ -2938,6 +2913,7 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ break;
+
+ case OP_REDRAW:
++ mutt_window_reflow(NULL);
+ clearok(stdscr, true);
+ pager_menu->redraw = REDRAW_FULL;
+ break;
+@@ -3326,11 +3302,14 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ CHECK_MODE(IsEmail(extra));
+ struct EmailList el = STAILQ_HEAD_INITIALIZER(el);
+ emaillist_add_email(&el, extra->email);
+- if ((mutt_save_message(Context->mailbox, &el,
+- (ch == OP_DECRYPT_SAVE) || (ch == OP_SAVE) || (ch == OP_DECODE_SAVE),
+- (ch == OP_DECODE_SAVE) || (ch == OP_DECODE_COPY),
+- (ch == OP_DECRYPT_SAVE) || (ch == OP_DECRYPT_COPY)) == 0) &&
+- ((ch == OP_SAVE) || (ch == OP_DECODE_SAVE) || (ch == OP_DECRYPT_SAVE)))
++
++ const bool delete_original =
++ (ch == OP_SAVE) || (ch == OP_DECODE_SAVE) || (ch == OP_DECRYPT_SAVE);
++ const bool decode = (ch == OP_DECODE_SAVE) || (ch == OP_DECODE_COPY);
++ const bool decrypt = (ch == OP_DECRYPT_SAVE) || (ch == OP_DECRYPT_COPY);
++
++ if ((mutt_save_message(Context->mailbox, &el, delete_original, decode, decrypt) == 0) &&
++ delete_original)
+ {
+ if (C_Resolve)
+ {
+@@ -3540,8 +3519,8 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ break;
+
+ case OP_SIDEBAR_TOGGLE_VISIBLE:
+- bool_str_toggle(Config, "sidebar_visible", NULL);
+- mutt_window_reflow();
++ bool_str_toggle(NeoMutt->sub, "sidebar_visible", NULL);
++ mutt_window_reflow(mutt_window_dialog(rd.extra->win_pager));
+ break;
+ #endif
+
+@@ -3588,10 +3567,17 @@ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct P
+ mutt_menu_free(&rd.menu);
+
+ mutt_buffer_dealloc(&helpstr);
+- mutt_window_free(&rd.index_status_window);
+- mutt_window_free(&rd.index_window);
+- mutt_window_free(&rd.pager_status_window);
+- mutt_window_free(&rd.pager_window);
++
++ if (rd.extra->win_index)
++ {
++ rd.extra->win_index->parent->state.visible = true;
++ rd.extra->win_index->size = MUTT_WIN_SIZE_MAXIMISE;
++ rd.extra->win_index->req_rows = MUTT_WIN_SIZE_UNLIMITED;
++ rd.extra->win_index->parent->size = MUTT_WIN_SIZE_MAXIMISE;
++ rd.extra->win_index->parent->req_rows = MUTT_WIN_SIZE_UNLIMITED;
++ }
++ rd.extra->win_pager->parent->state.visible = false;
++ mutt_window_reflow(mutt_window_dialog(rd.extra->win_pager));
+
+ return (rc != -1) ? rc : 0;
+ }
+diff --git a/pager.h b/pager.h
+index a75ed620a..56a8adbf8 100644
+--- a/pager.h
++++ b/pager.h
+@@ -69,6 +69,11 @@ struct Pager
+ struct Body *body; ///< Current attachment
+ FILE *fp; ///< Source stream
+ struct AttachCtx *actx; ///< Attachment information
++
++ struct MuttWindow *win_ibar;
++ struct MuttWindow *win_index;
++ struct MuttWindow *win_pbar;
++ struct MuttWindow *win_pager;
+ };
+
+ int mutt_pager(const char *banner, const char *fname, PagerFlags flags, struct Pager *extra);
+diff --git a/pattern.c b/pattern.c
+index aad8711a7..6200360ec 100644
+--- a/pattern.c
++++ b/pattern.c
+@@ -37,35 +37,38 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <time.h>
+-#include "mutt/mutt.h"
++#include <unistd.h>
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "pattern.h"
+ #include "alias.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hdrline.h"
++#include "init.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+ #include "mutt_parse.h"
++#include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "progress.h"
+ #include "protos.h"
++#include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifndef USE_FMEMOPEN
+ #include <sys/stat.h>
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+
+ /* These Config Variables are only used in pattern.c */
+@@ -158,17 +161,6 @@ enum RangeSide
+ RANGE_S_RIGHT, ///< Right side of range
+ };
+
+-/**
+- * typedef pattern_eat_t - Parse a pattern
+- * @param pat Pattern to store the results in
+- * @param flags Flags, e.g. #MUTT_PC_PATTERN_DYNAMIC
+- * @param s String to parse
+- * @param err Buffer for error messages
+- * @retval true If the pattern was read successfully
+- */
+-typedef bool pattern_eat_t(struct Pattern *pat, int flags, struct Buffer *s,
+- struct Buffer *err);
+-
+ /**
+ * struct PatternFlags - Mapping between user character and internal constant
+ */
+@@ -177,7 +169,16 @@ struct PatternFlags
+ int tag; ///< Character used to represent this operation, e.g. 'A' for '~A'
+ int op; ///< Operation to perform, e.g. #MUTT_PAT_SCORE
+ int flags; ///< Pattern flags, e.g. #MUTT_PC_FULL_MSG
+- pattern_eat_t *eat_arg; ///< Callback function to parse the argument
++
++ /**
++ * eat_arg - Function to parse a pattern
++ * @param pat Pattern to store the results in
++ * @param flags Flags, e.g. #MUTT_PC_PATTERN_DYNAMIC
++ * @param s String to parse
++ * @param err Buffer for error messages
++ * @retval true If the pattern was read successfully
++ */
++ bool (*eat_arg)(struct Pattern *pat, int flags, struct Buffer *s, struct Buffer *err);
+ };
+
+ // clang-format off
+@@ -207,7 +208,7 @@ static char LastSearchExpn[1024] = { 0 }; ///< expanded version of LastSearch
+ typedef bool (*addr_predicate_t)(const struct Address *a);
+
+ /**
+- * eat_regex - Parse a regex - Implements ::pattern_eat_t
++ * eat_regex - Parse a regex - Implements Pattern::eat_arg()
+ */
+ static bool eat_regex(struct Pattern *pat, int flags, struct Buffer *s, struct Buffer *err)
+ {
+@@ -260,7 +261,7 @@ static bool eat_regex(struct Pattern *pat, int flags, struct Buffer *s, struct B
+ }
+
+ /**
+- * add_query_msgid - Parse a Message-Id and add it to a list - Implements mutt_file_map_t
++ * add_query_msgid - Parse a Message-Id and add it to a list - Implements ::mutt_file_map_t
+ * @retval true Always
+ */
+ static bool add_query_msgid(char *line, int line_num, void *user_data)
+@@ -275,7 +276,7 @@ static bool add_query_msgid(char *line, int line_num, void *user_data)
+ }
+
+ /**
+- * eat_query - Parse a query for an external search program - Implements ::pattern_eat_t
++ * eat_query - Parse a query for an external search program - Implements Pattern::eat_arg()
+ */
+ static bool eat_query(struct Pattern *pat, int flags, struct Buffer *s, struct Buffer *err)
+ {
+@@ -326,7 +327,7 @@ static bool eat_query(struct Pattern *pat, int flags, struct Buffer *s, struct B
+ mutt_message(_("Running search command: %s ..."), cmd_buf.data);
+ pat->is_multi = true;
+ mutt_list_clear(&pat->p.multi_cases);
+- pid_t pid = mutt_create_filter(cmd_buf.data, NULL, &fp, NULL);
++ pid_t pid = filter_create(cmd_buf.data, NULL, &fp, NULL);
+ if (pid < 0)
+ {
+ mutt_buffer_printf(err, "unable to fork command: %s\n", cmd_buf.data);
+@@ -336,7 +337,7 @@ static bool eat_query(struct Pattern *pat, int flags, struct Buffer *s, struct B
+
+ mutt_file_map_lines(add_query_msgid, &pat->p.multi_cases, fp, 0);
+ mutt_file_fclose(&fp);
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ FREE(&cmd_buf.data);
+ return true;
+ }
+@@ -401,15 +402,53 @@ static const char *get_offset(struct tm *tm, const char *s, int sign)
+ * are optional and if the year is less than 70 it's assumed to be after 2000.
+ *
+ * Examples:
+- * - "10" = 23 of this month, this year
++ * - "10" = 10 of this month, this year
+ * - "10/12" = 10 of December, this year
+ * - "10/12/04" = 10 of December, 2004
+ * - "10/12/2008" = 10 of December, 2008
++ * - "20081210" = 10 of December, 2008
+ */
+ static const char *get_date(const char *s, struct tm *t, struct Buffer *err)
+ {
+ char *p = NULL;
+ struct tm tm = mutt_date_localtime(MUTT_DATE_NOW);
++ bool iso8601 = true;
++
++ for (int v = 0; v < 8; v++)
++ {
++ if (s[v] && (s[v] >= '0') && (s[v] <= '9'))
++ continue;
++
++ iso8601 = false;
++ break;
++ }
++
++ if (iso8601)
++ {
++ int year = 0;
++ int month = 0;
++ int mday = 0;
++ sscanf(s, "%4d%2d%2d", &year, &month, &mday);
++
++ t->tm_year = year;
++ if (t->tm_year > 1900)
++ t->tm_year -= 1900;
++ t->tm_mon = month - 1;
++ t->tm_mday = mday;
++
++ if ((t->tm_mday < 1) || (t->tm_mday > 31))
++ {
++ snprintf(err->data, err->dsize, _("Invalid day of month: %s"), s);
++ return NULL;
++ }
++ if ((t->tm_mon < 0) || (t->tm_mon > 11))
++ {
++ snprintf(err->data, err->dsize, _("Invalid month: %s"), s);
++ return NULL;
++ }
++
++ return (s + 8);
++ }
+
+ t->tm_mday = strtol(s, &p, 10);
+ if ((t->tm_mday < 1) || (t->tm_mday > 31))
+@@ -705,7 +744,7 @@ static bool eval_date_minmax(struct Pattern *pat, const char *s, struct Buffer *
+ }
+
+ /**
+- * eat_range - Parse a number range - Implements ::pattern_eat_t
++ * eat_range - Parse a number range - Implements Pattern::eat_arg()
+ */
+ static bool eat_range(struct Pattern *pat, int flags, struct Buffer *s, struct Buffer *err)
+ {
+@@ -989,7 +1028,7 @@ static int eat_range_by_regex(struct Pattern *pat, struct Buffer *s, int kind,
+ }
+
+ /**
+- * eat_message_range - Parse a range of message numbers - Implements ::pattern_eat_t
++ * eat_message_range - Parse a range of message numbers - Implements Pattern::eat_arg()
+ */
+ static bool eat_message_range(struct Pattern *pat, int flags, struct Buffer *s,
+ struct Buffer *err)
+@@ -1033,7 +1072,7 @@ static bool eat_message_range(struct Pattern *pat, int flags, struct Buffer *s,
+ }
+
+ /**
+- * eat_date - Parse a date pattern - Implements ::pattern_eat_t
++ * eat_date - Parse a date pattern - Implements Pattern::eat_arg()
+ */
+ static bool eat_date(struct Pattern *pat, int flags, struct Buffer *s, struct Buffer *err)
+ {
+@@ -1250,8 +1289,8 @@ static bool msg_search(struct Mailbox *m, struct Pattern *pat, int msgno)
+ */
+ static const struct PatternFlags Flags[] = {
+ { 'A', MUTT_ALL, 0, NULL },
+- { 'b', MUTT_PAT_BODY, MUTT_PC_FULL_MSG, eat_regex },
+- { 'B', MUTT_PAT_WHOLE_MSG, MUTT_PC_FULL_MSG, eat_regex },
++ { 'b', MUTT_PAT_BODY, MUTT_PC_FULL_MSG|MUTT_PC_SEND_MODE_SEARCH, eat_regex },
++ { 'B', MUTT_PAT_WHOLE_MSG, MUTT_PC_FULL_MSG|MUTT_PC_SEND_MODE_SEARCH, eat_regex },
+ { 'c', MUTT_PAT_CC, 0, eat_regex },
+ { 'C', MUTT_PAT_RECIPIENT, 0, eat_regex },
+ { 'd', MUTT_PAT_DATE, 0, eat_date },
+@@ -1262,7 +1301,7 @@ static const struct PatternFlags Flags[] = {
+ { 'F', MUTT_FLAG, 0, NULL },
+ { 'g', MUTT_PAT_CRYPT_SIGN, 0, NULL },
+ { 'G', MUTT_PAT_CRYPT_ENCRYPT, 0, NULL },
+- { 'h', MUTT_PAT_HEADER, MUTT_PC_FULL_MSG, eat_regex },
++ { 'h', MUTT_PAT_HEADER, MUTT_PC_FULL_MSG|MUTT_PC_SEND_MODE_SEARCH, eat_regex },
+ { 'H', MUTT_PAT_HORMEL, 0, eat_regex },
+ { 'i', MUTT_PAT_ID, 0, eat_regex },
+ { 'I', MUTT_PAT_ID_EXTERNAL, 0, eat_query },
+@@ -1564,6 +1603,9 @@ struct PatternList *mutt_pattern_comp(const char *s, PatternCompFlags flags, str
+ mutt_buffer_printf(err, _("%c: not supported in this mode"), *ps.dptr);
+ goto cleanup;
+ }
++ if (flags & MUTT_PC_SEND_MODE_SEARCH)
++ pat->sendmode = true;
++
+ pat->op = entry->op;
+
+ ps.dptr++; /* eat the operator and any optional whitespace */
+@@ -1990,6 +2032,80 @@ static int is_pattern_cache_set(int cache_entry)
+ return cache_entry != 0;
+ }
+
++/**
++ * msg_search_sendmode - Search in send-mode
++ * @param e Email to search
++ * @param pat Pattern to find
++ * @retval 1 Success, pattern matched
++ * @retval 0 Pattern did not match
++ * @retval -1 Error
++ */
++static int msg_search_sendmode(struct Email *e, struct Pattern *pat)
++{
++ bool match = false;
++ char *buf = NULL;
++ size_t blen = 0;
++ FILE *fp = NULL;
++
++ if ((pat->op == MUTT_PAT_HEADER) || (pat->op == MUTT_PAT_WHOLE_MSG))
++ {
++ struct Buffer *tempfile = mutt_buffer_pool_get();
++ mutt_buffer_mktemp(tempfile);
++ fp = mutt_file_fopen(mutt_b2s(tempfile), "w+");
++ if (!fp)
++ {
++ mutt_perror(mutt_b2s(tempfile));
++ mutt_buffer_pool_release(&tempfile);
++ return 0;
++ }
++
++ mutt_rfc822_write_header(fp, e->env, e->content, MUTT_WRITE_HEADER_POSTPONE, false, false);
++ fflush(fp);
++ fseek(fp, 0, 0);
++
++ while ((buf = mutt_file_read_line(buf, &blen, fp, NULL, 0)) != NULL)
++ {
++ if (patmatch(pat, buf) == 0)
++ {
++ match = true;
++ break;
++ }
++ }
++
++ FREE(&buf);
++ mutt_file_fclose(&fp);
++ unlink(mutt_b2s(tempfile));
++ mutt_buffer_pool_release(&tempfile);
++
++ if (match)
++ return match;
++ }
++
++ if ((pat->op == MUTT_PAT_BODY) || (pat->op == MUTT_PAT_WHOLE_MSG))
++ {
++ fp = mutt_file_fopen(e->content->filename, "r");
++ if (!fp)
++ {
++ mutt_perror(e->content->filename);
++ return 0;
++ }
++
++ while ((buf = mutt_file_read_line(buf, &blen, fp, NULL, 0)) != NULL)
++ {
++ if (patmatch(pat, buf) == 0)
++ {
++ match = true;
++ break;
++ }
++ }
++
++ FREE(&buf);
++ mutt_file_fclose(&fp);
++ }
++
++ return match;
++}
++
+ /**
+ * mutt_pattern_exec - Match a pattern against an email header
+ * @param pat Pattern to match
+@@ -2056,6 +2172,12 @@ int mutt_pattern_exec(struct Pattern *pat, PatternExecFlags flags,
+ case MUTT_PAT_BODY:
+ case MUTT_PAT_HEADER:
+ case MUTT_PAT_WHOLE_MSG:
++ if (pat->sendmode)
++ {
++ if (!e->content || !e->content->filename)
++ return 0;
++ return pat->pat_not ^ msg_search_sendmode(e, pat);
++ }
+ /* m can be NULL in certain cases, such as when replying to a message
+ * from the attachment menu and the user has a reply-hook using "~e".
+ * This is also the case when message scoring. */
+@@ -2205,8 +2327,10 @@ int mutt_pattern_exec(struct Pattern *pat, PatternExecFlags flags,
+ {
+ int *cache_entry = pat->all_addr ? &cache->pers_from_all : &cache->pers_from_one;
+ if (!is_pattern_cache_set(*cache_entry))
++ {
+ set_pattern_cache_value(cache_entry,
+ match_user(pat->all_addr, &e->env->from, NULL));
++ }
+ result = get_pattern_cache_value(*cache_entry);
+ }
+ else
+diff --git a/pattern.h b/pattern.h
+index 0e4a4c85e..8232e843f 100644
+--- a/pattern.h
++++ b/pattern.h
+@@ -28,7 +28,7 @@
+ #include <regex.h>
+ #include <stdbool.h>
+ #include <stdint.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "mutt.h"
+
+ struct Email;
+@@ -42,6 +42,7 @@ typedef uint8_t PatternCompFlags; ///< Flags for mutt_pattern_comp(), e.g.
+ #define MUTT_PC_NO_FLAGS 0 ///< No flags are set
+ #define MUTT_PC_FULL_MSG (1<<0) ///< Enable body and header matching
+ #define MUTT_PC_PATTERN_DYNAMIC (1<<1) ///< Enable runtime date range evaluation
++#define MUTT_PC_SEND_MODE_SEARCH (1<<2) ///< Allow send-mode body searching
+
+ /**
+ * struct Pattern - A simple (non-regex) pattern
+@@ -56,6 +57,7 @@ struct Pattern
+ bool ign_case : 1; ///< Ignore case for local string_match searches
+ bool is_alias : 1; ///< Is there an alias for this Address?
+ bool dynamic : 1; ///< Evaluate date ranges at run time
++ bool sendmode : 1; ///< Evaluate searches in send-mode
+ bool is_multi : 1; ///< Multiple case (only for ~I pattern now)
+ int min; ///< Minimum for range checks
+ int max; ///< Maximum for range checks
+diff --git a/po/POTFILES.in b/po/POTFILES.in
+index 14bcd5d6f..5213e8998 100644
+--- a/po/POTFILES.in
++++ b/po/POTFILES.in
+@@ -8,14 +8,13 @@ autocrypt/autocrypt_acct_menu.c
+ autocrypt/autocrypt_db.c
+ autocrypt/autocrypt_gpgme.c
+ autocrypt/autocrypt_schema.c
+-backtrace.c
+ bcache.c
+ browser.c
+-color.c
+ commands.c
++command_parse.c
+ complete.c
+ compose.c
+-compress.c
++compress/compress.c
+ config/address.c
+ config/bool.c
+ config/dump.c
+@@ -23,6 +22,7 @@ config/enum.c
+ config/long.c
+ config/mbtable.c
+ config/number.c
++config/path.c
+ config/quad.c
+ config/regex.c
+ config/set.c
+@@ -30,21 +30,24 @@ config/slist.c
+ config/sort.c
+ config/string.c
+ config/subset.c
++conn/connaccount.c
+ conn/conn_globals.c
+-conn/conn_raw.c
+ conn/getdomain.c
++conn/gnutls.c
++conn/gui.c
++conn/openssl.c
++conn/raw.c
+ conn/sasl.c
+ conn/sasl_plain.c
+ conn/socket.c
+-conn/ssl.c
+-conn/ssl_gnutls.c
+ conn/tunnel.c
+ context.c
+ copy.c
+ core/account.c
+ core/mailbox.c
+ core/neomutt.c
+-curs_lib.c
++debug/backtrace.c
++debug/parse_test.c
+ edit.c
+ editmsg.c
+ email/attach.c
+@@ -63,8 +66,14 @@ email/thread.c
+ email/url.c
+ enriched.c
+ enter.c
+-filter.c
+ flags.c
++functions.c
++gui/color.c
++gui/curs_lib.c
++gui/mutt_curses.c
++gui/mutt_window.c
++gui/reflow.c
++gui/terminal.c
+ handler.c
+ hcache/bdb.c
+ hcache/gdbm.c
+@@ -110,6 +119,7 @@ mutt/date.c
+ mutt/envlist.c
+ mutt/exit.c
+ mutt/file.c
++mutt/filter.c
+ mutt/hash.c
+ mutt/history.c
+ mutt/list.c
+@@ -129,7 +139,8 @@ muttlib.c
+ mutt_account.c
+ mutt_attach.c
+ mutt_body.c
+-mutt_curses.c
++mutt_commands.c
++mutt_config.c
+ mutt_header.c
+ mutt_history.c
+ mutt_logging.c
+@@ -139,7 +150,7 @@ mutt_parse.c
+ mutt_signal.c
+ mutt_socket.c
+ mutt_thread.c
+-mutt_window.c
++mutt_zstrm.c
+ mx.c
+ myvar.c
+ ncrypt/crypt.c
+@@ -188,6 +199,5 @@ sort.c
+ state.c
+ status.c
+ system.c
+-terminal.c
+ version.c
+ wcscasecmp.c
+diff --git a/po/bg.po b/po/bg.po
+index 8623d2efb..f5d441c64 100644
+--- a/po/bg.po
++++ b/po/bg.po
+@@ -13,7 +13,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2016-11-09 22:45+0000\n"
+ "Last-Translator: Velko Hristov <hristov@informatik.hu-berlin.de>\n"
+ "Language-Team: none\n"
+@@ -23,16 +23,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "отхвърляне(r), еднократно приемане(o), приемане винаги(a)"
++
++#, fuzzy
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "отхвърляне(r), еднократно приемане(o), приемане винаги(a)"
++
++msgid "roa"
++msgstr "roa"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "отхвърляне(r), еднократно приемане(o)"
++
++#, fuzzy
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "отхвърляне(r), еднократно приемане(o)"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Изход"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Изтр."
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Възст."
+
+@@ -40,18 +68,18 @@ msgstr "Възст."
+ msgid "Select"
+ msgstr "Избор"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Помощ"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "В адресната книга няма записи"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Псевдоними"
+
+@@ -60,53 +88,53 @@ msgstr "Псевдоними"
+ msgid "Alias as: "
+ msgstr "Псевдоним за адресната книга:"
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Вече има запис за този псевдоним"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Предупреждение: Този псевдоним може да не работи. Желаете ли да го поправите?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Адрес:"
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Лош IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Име:"
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Запис?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Запис във файл:"
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Грешка при показването на файла"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Грешка при показването на файла"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Псевдонимът е добавен"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Грешка при показването на файла"
+@@ -116,7 +144,7 @@ msgstr "Грешка при показването на файла"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s не съществува. Да бъде ли създаден?"
+@@ -125,8 +153,8 @@ msgstr "%s не съществува. Да бъде ли създаден?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Грешка при създаване на %s: %s"
+@@ -136,7 +164,7 @@ msgstr "Грешка при създаване на %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -145,7 +173,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -154,7 +182,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -163,7 +191,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -175,7 +203,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Шифроване"
+@@ -183,7 +211,7 @@ msgstr "Шифроване"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -191,7 +219,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -200,7 +228,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Не е намерен (валиден) сертификат за %s"
+@@ -212,12 +240,12 @@ msgstr "Не е намерен (валиден) сертификат за %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Няма пощенска кутия.\n"
+@@ -229,14 +257,14 @@ msgstr "Няма пощенска кутия.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Желаете ли да създадете %s?"
+@@ -244,7 +272,7 @@ msgstr "Желаете ли да създадете %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Изтриване"
+
+@@ -252,9 +280,9 @@ msgstr "Изтриване"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -262,17 +290,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -281,7 +309,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -289,7 +317,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -297,12 +325,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -310,13 +338,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Грешка при четене на директорията"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Действително ли желаете да изтриете пощенската кутия \"%s\"?"
+@@ -334,7 +362,7 @@ msgstr "Действително ли желаете да изтриете по
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Грешка при заключване на пощенската кутия!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "грешка в шаблона при: %s"
+@@ -407,336 +435,287 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s не е директория"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Директория"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Маска"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Абониране за %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Отписване от %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s не е директория"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Абониране за %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Пощенски кутии [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Абониран [%s], Файлова маска: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Директория [%s], Файлова маска: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Не може да прилагате директория"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Няма файлове, отговарящи на маската"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Само IMAP пощенски кутии могат да бъдат създавани"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Само IMAP пощенски кутии могат да бъдат създавани"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Само IMAP пощенски кутии могат да бъдат изтривани"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "показва името на текущо маркирания файл"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Действително ли желаете да изтриете пощенската кутия \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Пощенската кутия е изтрита"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Пощенската кутия е изтрита"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Пощенската кутия не е изтрита"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Смяна на директорията: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Грешка при четене на директорията"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Файлова маска: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Обратно подреждане по дата(d), азбучен ред(a), размер(z) или без подреждане(n)?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Подреждане по дата(d), азбучен ред(a), размер(z) или без подреждане(n)?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Ново име за файла: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Директорията не може да бъде показана"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Грешка при показването на файла"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Абониране за %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Отписване от %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Няма файлове, отговарящи на маската"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: терминалът не поддържа цветове"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: няма такъв цвят"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: няма такъв обект"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: недостатъчно аргументи"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: няма такъв атрибут"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: твърде много аргументи"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "стандартните цветове не се поддържат"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: невалиден номер на писмо.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Желаете ли да потвърдите истинността на подписа?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Невъзможно създаването на временен файл"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Филтърът не може да бъде създаден"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Писмото не може да бъде копирано."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-подписът е потвърден успешно"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Притежателят на S/MIME сертификата не съвпада с подателя на писмото"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-подписът НЕ е потвърден успешно"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-подписът е потвърден успешно"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-подписът НЕ е потвърден успешно"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Грешка при изпълнението на \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Команда: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Препращане на писмото към: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Препращане на маркираните писма към: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Грешка при разчитане на адресът"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Препращане на писмото към %s?"
+ msgstr[1] "Препращане на писмото към %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Писмото не е препратено"
+ msgstr[1] "Писмата не са препратени"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Писмото е препратено"
+ msgstr[1] "Писмата са препратени"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Грешка при създаването на филтър"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Изпращане към команда (pipe): "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Не е дефинирана команда за отпечатване"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Желаете ли да отпечатате писмото?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Желаете ли да отпечатате маркираните писма?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Писмото е отпечатано"
+ msgstr[1] "Писмата са отпечатани"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -744,165 +723,334 @@ msgstr[0] "Писмото не е отпечатано"
+ msgstr[1] "Писмата не са отпечатани"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Обратно подреждане по: дата на изпращане(d)/от(f)/дата на получаване(r)/тема(s)/получател(o)/нишка(t)/без подреждане(u)/размер(z)/важност(c)?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Подреждане по: дата на изпращане(d)/от(f)/дата на получаване(r)/тема(s)/получател(o)/нишка(t)/без подреждане(u)/размер(z)/важност(c)?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzc"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Шел команда: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Декодиране и запис на в пощенска кутия"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Декодиране и запис на маркиран в пощенска кутия"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Дешифриране и запис на в пощенска кутия"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Дешифриране и запис на маркиран в пощенска кутия"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Запис на в пощенска кутия"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Запис на маркиран в пощенска кутия"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Декодиране и копиране на в пощенска кутия"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Декодиране и копиране на маркиран в пощенска кутия"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Дешифриране и запис на в пощенска кутия"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Дешифриране и запис на маркиран в пощенска кутия"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Копиране на в пощенска кутия"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Копиране на маркиран в пощенска кутия"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Създаване на копие в %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type е променен на %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Желаете ли да го конвертирате до %s при изпращане?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type е променен на %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Кодовата таблица е променена на %s; не е конвертирано"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Кодовата таблица е променена на %s; конвертирано"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: недостатъчно аргументи"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "недостатъчно аргументи"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Грешка в %s, ред %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Грешка в %s, ред %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: грешки в %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: вмъкването е прекъснато поради твърде много грешки в %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: грешки в %s"
++msgstr[1] "source: грешки в %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: няма адрес"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Предупреждение: Лош IDN '%s' в псевдонима '%s'"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "променя описанието на приложението"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "променя описанието на приложението"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "променя описанието на приложението"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: твърде много аргументи"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Предупреждение: Лош IDN '%s' в псевдонима '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "невалидно заглавно поле"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: непозната променлива"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s е изключен"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: грешка при %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Писмата не са отпечатани"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "маркира писма, отговарящи на шаблон"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "премахва маркировката от писма, отговарящи на шаблон"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "Абониране за %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Абониране за %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Липсва тема."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "променя описанието на приложението"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Отписване от %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Отписване от %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Няма приложения"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Отговор"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -913,78 +1061,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Подпис като: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Желаете ли да проследите до %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "редактира получателя на отговор от писмото (Reply-To)"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Изпращане"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Отказ"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Прилагане на файл"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Описание"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Липсва тема."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -992,7 +1140,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -1000,14 +1148,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "yes"
+@@ -1018,7 +1166,7 @@ msgstr "yes"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1026,53 +1174,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Маркирането не се поддържа."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Подпис, Шифроване"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Шифроване"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Подпис"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(по-нататък)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<по подразбиране>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Шифроване c: "
+
+@@ -1081,12 +1229,12 @@ msgstr "Шифроване c: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "редактира получателя на отговор от писмото (Reply-To)"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1097,7 +1245,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] вече не съществува"
+@@ -1109,242 +1257,362 @@ msgstr "%s [#%d] вече не съществува"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] е променено. Желаете ли да опресните кодирането?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Приложения"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Не може да изтриете единствената част на писмото"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Лош IDN в '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Приложението е записано на диска"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Това приложение няма да бъде прекодирано"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Приложението е филтрирано"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Грешка при изпращане на писмото"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Прилагане на избраните файлове..."
+ msgstr[1] "Прилагане на избраните файлове..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Прилагането на %s е невъзможно"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Отваряне на пощенска кутия, от която да бъде приложено писмо"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Отваряне на пощенска кутия, от която да бъде приложено писмо"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Грешка при заключване на пощенската кутия!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "В тази кутия няма писма"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Маркирайте писмата, които искате да приложите"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Прилагането е невъзможно"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Промяната на кодирането засяга само текстовите приложения"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Това приложение няма да бъде прекодирано"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Това приложение ще бъде прекодирано"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Избрано е невалидно кодиране"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Желаете ли да запазите копие от това писмо?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "показва приложението като текст"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Преименуване в: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Грешка при отваряне на %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Нов файл: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Полето Content-Type има формата базов-тип/подтип"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Непознат Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Грешка при създаване на файла %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Грешка при създаване на приложението"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Желаете ли да редактирате чернова?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Запис на писмото в пощенска кутия"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Записване на писмото в %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Писмото е записано"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ #, fuzzy
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME-шифроване вече е избрано. Clear and continue?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ #, fuzzy
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP-шифроване вече е избрано. Clear and continue?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Грешка при заключване на пощенската кутия"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Грешка при изпълнение на командата \"preconnect\""
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Създаване на копие в %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Създаване на копие в %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Грешка. Запазване на временния файл: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Невалидна дата: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Невалидна дата: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: невалиден номер на писмо.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Невалиден ден от месеца: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Невалиден месец: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Тази функция не може да се изпълни при прилагане на писма."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: невалиден номер на писмо.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: невалиден номер на писмо.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Невалидна дата: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Невалиден ден от месеца: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Грешка: '%s' е невалиден IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: непозната променлива"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Невалидна дата: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Невалидна дата: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Потребителско име на %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Парола за %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Команда за запитване не е дефинирана"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1365,7 +1633,7 @@ msgstr "Свързване с %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Грешка при свързване с %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "непозната грешка"
+
+@@ -1379,24 +1647,24 @@ msgstr "Грешка в комуникацията с %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Връзката с %s е затворена"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "грешка в шаблона при: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1409,138 +1677,112 @@ msgstr "Грешка при изпълнение на командата \"preco
+ msgid "Connection to %s closed"
+ msgstr "Връзката с %s е затворена"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Събиране на ентропия за генератора на случайни събития: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s има несигурни права за достъп"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL е изключен поради липса на достатъчно ентропия"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "неизвестно"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[грешка при пресмятане]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[невалидна дата]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Сертификатът на сървъра все още не е валиден"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Сертификатът на сървъра е изтекъл"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Недостатъчно ентропия в системата"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "От сървъра не може да бъде получен сертификат"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "От сървъра не може да бъде получен сертификат"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Притежателят на S/MIME сертификата не съвпада с подателя на писмото."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Този сертификат принадлежи на:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Този сертификат е издаден от:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Този сертификат е валиден"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " от %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " до %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Пръстов отпечатък: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Пръстов отпечатък: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "отхвърляне(r), еднократно приемане(o), приемане винаги(a)"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "отхвърляне(r), еднократно приемане(o), приемане винаги(a)"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "отхвърляне(r), еднократно приемане(o)"
++msgid "SHA256 Fingerprint: "
++msgstr "Пръстов отпечатък: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "отхвърляне(r), еднократно приемане(o)"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Изход"
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Предупреждение: Сертификатът не може да бъде запазен"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Сертификатът е записан"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Сертификатът е записан"
+@@ -1548,15 +1790,15 @@ msgstr "Сертификатът е записан"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "входно-изходна грешка"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "Неуспешен SSL: %s"
+@@ -1564,96 +1806,80 @@ msgstr "Неуспешен SSL: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Грешка: не може да бъде стартиран дъщерен OpenSSL процес!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "От сървъра не може да бъде получен сертификат"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "Сертификатът е записан"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Грешка при инициализация на терминала."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Сертификатът на сървъра все още не е валиден"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Сертификатът на сървъра е изтекъл"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Сертификатът на сървъра е изтекъл"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Сертификатът на сървъра все още не е валиден"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL връзка, използваща %s (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1672,38 +1898,18 @@ msgstr "Грешка в комуникацията с %s (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "yes"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Желаете ли да напуснете neomutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Натиснете някой клавиш..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (използвайте'?' за избор от списък): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1735,7 +1941,7 @@ msgstr ""
+ "~? това писмо\n"
+ ". сама на ред означава край на писмото\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1767,20 +1973,20 @@ msgstr ""
+ "~? това писмо\n"
+ ". сама на ред означава край на писмото\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: невалиден номер на писмо.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(За край на писмото въведете . като единствен символ на реда)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Няма пощенска кутия.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Писмото съдържа:\n"
+
+@@ -1788,19 +1994,19 @@ msgstr "Писмото съдържа:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(по-нататък)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "липсва име на файл.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "В писмото няма редове.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: непозната команда на редактора (използвайте~? за помощ)\n"
+@@ -1847,19 +2053,73 @@ msgstr "Грешка при добавянето на писмо към поще
+ msgid "multipart message has no boundary parameter"
+ msgstr "съставното писмо няма \"boundary\" параметър"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Показването на нишки не е включено"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Поставяне на маркировка"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Изтриване на маркировка"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: терминалът не поддържа цветове"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: няма такъв цвят"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: няма такъв обект"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: няма такъв атрибут"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "стандартните цветове не се поддържат"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: невалиден номер на писмо.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "yes"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Желаете ли да напуснете neomutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Натиснете някой клавиш..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (използвайте'?' за избор от списък): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1880,23 +2140,23 @@ msgstr "[-- Автоматично показване посредством %s
+ msgid "Invoking autoview command: %s"
+ msgstr "Автоматично показване посредством: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Грешка при създаването на филтър"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Грешка при стартиране на %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Грешки от %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Грешка: message/external-body няма параметри за метод на достъп --]\n"
+
+@@ -1915,7 +2175,7 @@ msgstr "[-- Грешка: message/external-body няма параметри за
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1944,7 +2204,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1958,7 +2218,7 @@ msgstr[1] "[-- Това %s/%s приложение (размер %s байта)
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1970,12 +2230,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Това %s/%s приложение бе изтрито --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- име: %s --]\n"
+@@ -1983,7 +2243,7 @@ msgstr "[-- име: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1998,7 +2258,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2007,95 +2267,95 @@ msgstr ""
+ "[-- Това %s/%s приложение не е включено в писмото, --]\n"
+ "[-- а указаният метод на достъп %s не се подържа. --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Грешка: Невъзможно е показването на която и да е от алтернативните части на писмото --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Приложение: #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Приложение: #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Грешка при отваряне на временния файл"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Грешка при отваряне на временния файл"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Грешка при отваряне на временния файл"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Грешка: multipart/signed без protocol параметър"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Това %s/%s приложение (използвайте'%s' за да видите тази част) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s не се поддържа (използвайте'%s' за да видите тази част) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Това %s/%s приложение ('view-attachments' няма клавишна комбинация) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s не се поддържа('view-attachments' няма клавишна комбинация) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Това %s/%s приложение --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s не се поддържа --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ГРЕШКА: моля, съобщете ни за тази грешка"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<НЕИЗВЕСТНА>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Общи клавишни комбинации:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Функции, без клавишна комбинация:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Помощ за %s"
+@@ -2112,41 +2372,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Не може да извършите unhook * от hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: непознат hook тип: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Не може да изтриете %s от %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: няма такова меню"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: няма такова меню"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: няма такова меню"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Невъзможно създаването на временен файл %s"
+@@ -2184,30 +2444,30 @@ msgstr "Неуспешна GSSAPI идентификация"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN е изключен на този сървър"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Включване..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Неуспешно включване"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Идентифициране (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Неуспешна OAUTHBEARER идентификация"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Идентифициране (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Неуспешна SASL идентификация"
+
+@@ -2256,90 +2516,80 @@ msgstr "Неуспешен SSL: %s"
+ msgid "Mailbox renamed"
+ msgstr "Пощенската кутия е създадена"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Пощенската кутия е затворена."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Връзката с %s е затворена"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Този IMAP-сървър е остарял. NeoMutt няма да работи с него."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Неуспешен SSL: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Затваряне на връзката към %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Желаете ли да установите сигурна връзка с TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Не може да бъде установена TLS връзка"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr ""
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Абониране за %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Отписване от %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "Абониране за %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Отписване от %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Копиране на %d съобщения в %s..."
+ msgstr[1] "Копиране на %d съобщения в %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Желаете ли да създадете %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Неуспешно премахване"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2347,44 +2597,44 @@ msgstr[0] "Маркиране на %d съобщения за изтриване
+ msgstr[1] "Маркиране на %d съобщения за изтриване..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Запис на маркировките на писмото... [%d/%d]"
+ msgstr[1] "Запис на маркировките на писмото... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Грешка при разчитане на адресът!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Премахване на съобщенията от сървъра..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbo: неуспешен EXPUNGE"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Избиране на %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Грешка при отваряне на пощенската кутия"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Невалиден "
+@@ -2395,7 +2645,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Недостатъчно памет"
+
+@@ -2416,7 +2666,7 @@ msgstr "Изтегляне на заглавните части... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Грешка при получаване на заглавните части от тази версия на IMAP-сървъра"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Изтегляне на заглавните части... [%d/%d]"
+@@ -2431,156 +2681,156 @@ msgstr "Зареждане на писмо на сървъра ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Копиране на %d-то съобщение в %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Изтегляне на писмо..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Невалиден индекс на писмо. Опитайте да отворите отново пощенската кутия."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Желаете ли да продължите?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Изход"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Запис"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Ново"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Отговор"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Груп. отг."
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Желаете ли да проследите до %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Няма отворена пощенска кутия"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Няма писма"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Няма видими писма"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Тази пощенска кутия е само за четене"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Тази функция не може да се изпълни при прилагане на писма"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Режимът на защитената от запис пощенска кутия не може да бъде променен"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Промените в тази пощенска кутия ще бъдат записани при напускането й"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Промените в тази пощенска кутия няма да бъдат записани"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s не е пощенска кутия"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Пощенската кутия е променена от друга програма. Маркировките може да са остарели."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Нови писма в тази пощенска кутия"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Пощенската кутия е променена от друга програма"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Няма маркирани писма"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Няма какво да се прави"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Въведете ключов идентификатор: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Родителското писмо не е видимо в този ограничен изглед"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Премахване на съобщенията от сървъра..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "изтрива всички писма в нишката"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Скок към писмо номер: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Аргументът трябва да бъде номер на писмо"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Грешен номер на писмо"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Това писмо не е видимо"
+
+@@ -2593,38 +2843,38 @@ msgstr "Това писмо не е видимо"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Няма възстановени писма."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Изтриване на писма по шаблон: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Няма активен ограничителен шаблон"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Ограничаване: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Ограничаване до писмата, отговарящи на: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Желаете ли да напуснете neomutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Маркиране на писмата, отговарящи на: "
+
+@@ -2632,213 +2882,213 @@ msgstr "Маркиране на писмата, отговарящи на: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Няма възстановени писма."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Възстановяване на писмата, отговарящи на: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Премахване на маркировката от писмата, отговарящи на: "
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "Затваряне на връзката към IMAP сървър.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Прекъсване поради липса на тема"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Прекъсване поради липса на тема"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Прекъсване поради липса на тема"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Отваряне на пощенската кутия само за четене"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Отваряне на пощенска кутия"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Няма пощенска кутия с нови писма."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Отваряне на пощенската кутия само за четене"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Желаете ли да напуснете NeoMutt без да запишете промените?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Филтърът не може да бъде създаден"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "записва писмото като чернова за по-късно изпращане"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Това е последното писмо"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Няма възстановени писма"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Това е първото писмо"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Родителското писмо не е видимо в този ограничен изглед"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Няма нови писма"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Родителското писмо не е видимо в този ограничен изглед"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Няма непрочетени писма"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Търсенето е започнато отгоре"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Търсенето е започнато отдолу"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "показва писмо"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Няма повече нишки"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Това е първата нишка"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Нишката съдържа непрочетени писма"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Няма възстановени писма."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Невъзможен запис на писмо"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2848,7 +3098,7 @@ msgstr[1] "Пощенската кутия е непроменена"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Пощенската кутия е непроменена"
+@@ -2857,7 +3107,7 @@ msgstr "Пощенската кутия е непроменена"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "скок към родителското писмо в нишката"
+@@ -2865,14 +3115,14 @@ msgstr "скок към родителското писмо в нишката"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Въведете ключов идентификатор: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Писмото е записано като чернова."
+@@ -2880,266 +3130,123 @@ msgstr "Писмото е записано като чернова."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Писмото е препратено"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "В тази кутия няма писма"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Няма възстановени писма."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Грешка в командния ред: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Грешка в командния ред: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "потребителското Ви име не може да бъде установено"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "недостатъчно аргументи"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Грешка в %s, ред %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Грешка в %s, ред %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: грешки в %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: вмъкването е прекъснато поради твърде много грешки в %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: грешки в %s"
+-msgstr[1] "source: грешки в %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: няма адрес"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Предупреждение: Лош IDN '%s' в псевдонима '%s'"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "променя описанието на приложението"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "променя описанието на приложението"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "променя описанието на приложението"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Предупреждение: Лош IDN '%s' в псевдонима '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "невалидно заглавно поле"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: непозната променлива"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s е изключен"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: грешка при %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Писмата не са отпечатани"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "маркира писма, отговарящи на шаблон"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "премахва маркировката от писма, отговарящи на шаблон"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Абониране за %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Липсва тема."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "променя описанието на приложението"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Отписване от %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: непозната команда"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Невалиден ден от месеца: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Тази функция не може да се изпълни при прилагане на писма."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Открит е цикъл от макроси"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Недефинирана клавишна комбинация"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Недефинирана клавишна комбинация. Използвайте '%s' за помощ."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: празна последователност от клавиши"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: празна последователност от клавиши"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: липсват аргументи"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: няма такава функция"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Въведете ключове (^G за прекъсване): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Символ = %s, Осмично = %o, Десетично = %d"
+@@ -3163,7 +3270,7 @@ msgstr "не е намерено mailcap-вписване за типа %s"
+ msgid "Scanning %s..."
+ msgstr "Избиране на %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Зареждане на %s..."
+@@ -3179,13 +3286,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): грешка при поставянето на марка за време на файла"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Запис на %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3208,7 +3315,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3251,54 +3358,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Грешка при инициализация на терминала"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "потребителското Ви име не може да бъде установено"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "личната Ви директория не може да бъде намерена"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Грешка: '%s' е невалиден IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Не са указани получатели"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Грешка при отваряне на файла: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: грешка при прилагането на файл"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Няма пощенска кутия с нови писма"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Не са дефинирани входни пощенски кутии"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Пощенската кутия е празна"
+
+@@ -3340,52 +3447,52 @@ msgstr "Грешка при повторното отваряне на поще
+ msgid "Can't write message"
+ msgstr "Невъзможен запис на писмо"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Скок към: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Невалиден номер на индекс"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Няма вписвания"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Не може да превъртате надолу повече"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Не може да превъртате нагоре повече"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Това е първата страница"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Това е последната страница"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Това е последният запис"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Това е първият запис"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Търсене: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Обратно търсене: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Няма резултати от търсенето"
+
+@@ -3428,20 +3535,20 @@ msgstr "Чакане за flock заключване... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Грешка при създаване на временен файл"
+
+@@ -3460,7 +3567,7 @@ msgstr "Debugging на ниво %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Debugging на ниво %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Грешка при свързване със сървъра: %s"
+@@ -3484,17 +3591,17 @@ msgstr "Получен сигнал %d (%s) ... Изход от програма
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Получен сигнал %d ... Изход от програмата.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3502,149 +3609,121 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Файлът е директория. Желаете ли да запишете в нея? (y) да, (n) не, (a) всички"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Файлът е директория. Желаете ли да запишете в нея?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Файл в тази директория: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Файлът съществува. Презапис(o), добавяне(a) или отказ(c)?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Запис на писмо на POP сървър не е възможно"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Желаете ли да добавите писмата към %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Редактирането на писмо на POP сървър не е възможно"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Потребителско име на %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Парола за %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Команда за запитване не е дефинирана"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Няма шаблон с това име. Желаете ли да продължите?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Записът \"compose\" в mailcap изисква %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Грешка при отваряне на файла за прочит на заглавната информация"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Грешка при отваряне на файла за изтриване на заглавна информация"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "Грешка при отваряне на файла за прочит на заглавната информация"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "В mailcap липсва запис \"compose\" за %s. Създаване на празен файл"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Записът \"edit\" в mailcap изисква %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "В mailcap липсва запис \"edit\" за %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Не е намерено подходящо mailcap вписване. Приложението е показано като текст."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Недефиниран MIME тип. Приложението не може да бъде показано."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Приложения"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Приложения"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Грешка при запис"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Невъзможно отпечатване"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Търсене"
+
+@@ -3653,21 +3732,21 @@ msgstr "Търсене"
+ msgid "History '%s'"
+ msgstr "Запитване '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Невалиден ден от месеца: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Невъзможно заключване на %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Нови писма в "
+
+@@ -3689,20 +3768,20 @@ msgstr "Родителското писмо не е видимо в този о
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Родителското писмо не е видимо в този ограничен изглед"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Търсенето е прекъснато."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Прилагането на %s е невъзможно"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3714,69 +3793,69 @@ msgstr[1] "Маркиране на %d съобщения за изтриване
+ msgid "Can't open trash folder"
+ msgstr "Грешка при добавянето на писмо към пощенската кутия: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Желаете ли да преместите прочетените писма в %s?"
+ msgstr[1] "Желаете ли да преместите прочетените писма в %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Желаете ли да изтриете %d-то отбелязано за изтриване писмо?"
+ msgstr[1] "Желаете ли да изтриете %d отбелязани за изтриване писма?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Преместване на прочетените писма в %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Пощенската кутия е непроменена"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "запазени: %d; преместени: %d; изтрити: %d"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "запазени: %d; изтрити: %d"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Натиснете '%s' за включване/изключване на режима за запис"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Използвайте 'toggle-write' за реактивиране на режима за запис"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Пощенската кутия е само за четене. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Пощенската кутия е отбелязана"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (текущо време: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s следва резултатът%s) --]\n"
+@@ -3785,53 +3864,53 @@ msgstr "[-- %s следва резултатът%s) --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Паролите са забравени"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Стартиране на PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Писмото не е изпратено"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME писма без указание за съдържанието им не се поддържат"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Опит за извличане на PGP ключове...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Опит за извличане на S/MIME сертификати..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3840,7 +3919,7 @@ msgstr ""
+ "[-- Грешка: Непознат multipart/signed протокол %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3849,7 +3928,7 @@ msgstr ""
+ "[-- Грешка: Противоречива multipart/signed структура --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3858,7 +3937,7 @@ msgstr ""
+ "[-- Предупреждение: %s/%s-подписи не могат да бъдат проверявани. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3866,7 +3945,7 @@ msgstr ""
+ "[-- Следните данни са подписани --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3874,7 +3953,7 @@ msgstr ""
+ "[-- Предупреждение: не могат да бъдат намерени подписи. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3894,236 +3973,236 @@ msgstr "Стартиране на PGP..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Невалиден месец: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Невалиден месец: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Пръстов отпечатък: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Ключов идентификатор: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Сертификатът на сървъра е изтекъл"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "SSL не е на разположение."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Желаете ли да създадете %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Грешка в командния ред: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4132,28 +4211,34 @@ msgstr ""
+ "\n"
+ "[-- Край на подписаните данни --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Грешка: не може да бъде създаден временен файл! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "PGP-подписът е потвърден успешно"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4161,11 +4246,11 @@ msgstr ""
+ "[-- НАЧАЛО НА PGP-ПИСМО --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- НАЧАЛО НА БЛОК С ПУБЛИЧЕН PGP-КЛЮЧ --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4173,19 +4258,19 @@ msgstr ""
+ "[-- НАЧАЛО НА PGP-ПОДПИСАНО ПИСМО --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- КРАЙ НА PGP-ПИСМОТО --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- КРАЙ НА БЛОКА С ПУБЛИЧНИЯ PGP-КЛЮЧ --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- КРАЙ НА PGP-ПОДПИСАНОТО ПИСМО --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4193,11 +4278,11 @@ msgstr ""
+ "[-- Грешка: началото на PGP-писмото не може да бъде намерено --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Грешка: не може да бъде създаден временен файл --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4206,7 +4291,7 @@ msgstr ""
+ "[-- Следните данни са шифровани с PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4214,75 +4299,70 @@ msgstr ""
+ "[-- Следните данни са шифровани с PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Край на шифрованите с PGP/MIME данни --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Край на шифрованите с PGP/MIME данни --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-подписът е потвърден успешно"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "Писмото не може да бъде копирано."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+ msgstr "[-- Следните данни са подписани със S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+ msgstr "[-- Следните данни са шифровани със S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Край на подписаните със S/MIME данни --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Край на шифрованите със S/MIME данни --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "Невалиден "
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4290,104 +4370,104 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Шифроване"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "Сертификатът е записан"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ #, fuzzy
+ msgid "[Revoked]"
+ msgstr "Анулиран "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "Изтекъл "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "Свързване с %s..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Грешка при свързване със сървъра: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Грешка в командния ред: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Ключов идентификатор: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Всички подходящи ключове са остарели, анулирани или деактивирани"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Избор "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Проверка на ключ "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP ключове, съвпадащи с \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "PGP ключове, съвпадащи с \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME сертификати, съвпадащи с \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "PGP ключове, съвпадащи с \"%s\"."
+@@ -4396,59 +4476,59 @@ msgstr "PGP ключове, съвпадащи с \"%s\"."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr ""
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Този ключ не може да бъде използван, защото е остарял, деактивиран или анулиран"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Този идентификатор е остарял, деактивиран или анулиран. Действително ли искате да използвате този ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Този идентификатор не не е валиден. Действително ли искате да използвате този ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Този идентификатор е с ограничена валидност. Действително ли искате да използвате този ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Този идентификатор е с недефинирана валидност. Действително ли искате да използвате този ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Търсене на ключове, отговарящи на \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Желаете ли използвате ключовия идентификатор \"%s\" за %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Въведете ключов идентификатор за %s: "
+@@ -4457,16 +4537,16 @@ msgstr "Въведете ключов идентификатор за %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Няма резултати от търсенето"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Моля, въведете ключовия идентификатор: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "грешка в шаблона при: %s"
+@@ -4474,97 +4554,97 @@ msgstr "грешка в шаблона при: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP ключ %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "esabf"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "esabf"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "esabf"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "esabf"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, 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)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "esabf"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, 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)?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "esabf"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Грешка при отваряне на файла за прочит на заглавната информация."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Въвеждане на PGP парола:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Грешка: не може да бъде стартиран дъщерен PGP процес --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4575,16 +4655,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-подписът е потвърден успешно"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4592,128 +4672,128 @@ msgstr ""
+ "[-- Грешка: не може да бъде стартиран дъщерен PGP процес --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Неуспешно разшифроване"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Не може да бъде стартиран дъщерен PGP процес"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP не може да бъде стартиран"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "esabf"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "esabf"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "esabf"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "esabf"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "esabf"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP шифроване(e), подпис(s), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "esabf"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Получаване на PGP ключ..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Всички подходящи ключове са остарели, анулирани или деактивирани"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP ключове, съвпадащи с <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP ключове, съвпадащи с \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Грешка при отваряне на /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP ключ %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ #, fuzzy
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Въвеждане на SMIME парола:"
+@@ -4723,7 +4803,7 @@ msgstr "Въвеждане на SMIME парола:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Изтекъл "
+
+@@ -4732,7 +4812,7 @@ msgstr "Изтекъл "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Невалиден "
+
+@@ -4741,7 +4821,7 @@ msgstr "Невалиден "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Анулиран "
+
+@@ -4750,7 +4830,7 @@ msgstr "Анулиран "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Ползващ се с доверие "
+
+@@ -4759,7 +4839,7 @@ msgstr "Ползващ се с доверие "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Непроверен"
+
+@@ -4768,7 +4848,7 @@ msgstr "Непроверен"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Проверен "
+
+@@ -4777,61 +4857,61 @@ msgstr "Проверен "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Неизвестен "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME сертификати, съвпадащи с \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Този идентификатор не не е валиден. Действително ли искате да използвате този ключ?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Въведете ключов идентификатор: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Не е намерен (валиден) сертификат за %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Грешка: не може да бъде стартиран дъщерен OpenSSL процес"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "От сървъра не може да бъде получен сертификат"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ #, fuzzy
+ msgid "no certfile"
+ msgstr "no certfile"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "няма пощенска кутия"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Няма резултат от дъщерния OpenSSL процес..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Не може да бъде стартиран дъщерен OpenSSL процес"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4839,19 +4919,19 @@ msgstr ""
+ "[-- Край на OpenSSL-резултата --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Грешка: не може да бъде стартиран дъщерен OpenSSL процес --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Следните данни са шифровани със S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Следните данни са подписани със S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4859,7 +4939,7 @@ msgstr ""
+ "\n"
+ "[-- Край на шифрованите със S/MIME данни --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4868,168 +4948,168 @@ msgstr ""
+ "[-- Край на подписаните със S/MIME данни --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME шифроване(e), подпис(s), шифроване с(w), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME шифроване(e), подпис(s), шифроване с(w), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME шифроване(e), подпис(s), шифроване с(w), подпис като(a), и двете(b) или без тях(f)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabf"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s не е валидна POP пътека"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Сървърът затвори връзката"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Няма налични идентификатори."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Неуспешна SASL идентификация"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Връзката с %s е затворена"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Изтегляне на списък с писмата..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Проверка за нови писма..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "грешка при запис във временната пощенска кутия: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Свързване с %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Няма какво да се прави"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Грешка при отваряне на %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Премахване на съобщенията от сървъра..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Включване..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Проверка за нови писма..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s не е валидна POP пътека"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5041,7 +5121,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6194,189 +6274,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "показва S/MIME настройките"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Функцията не е достъпна от това меню"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Пред. стр."
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Следв. стр."
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Приложения"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Следващо"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Това е краят на писмото"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Това е началото на писмото"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Помощта вече е показана"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Няма повече цитиран текст"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Няма повече нецитиран текст след цитирания"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Грешка в израза: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "грешка в израза"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Команда за запитване не е дефинирана"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Автоматично показване посредством: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Невалиден ден от месеца: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Невалиден месец: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Невалидна дата: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Няма непрочетени писма"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Грешка при отваряне на пощенската кутия!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Грешка при отваряне на пощенската кутия!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Грешка при отваряне на /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "грешка в шаблона при: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "липсва параметър"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "неподходящо поставени скоби: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: невалидна команда"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: не се поддържа в този режим"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "липсва параметър"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "празен шаблон"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "грешка: непознат оператор %d (моля, съобщете за тази грешка)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Компилиране на шаблона за търсене..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Изпълняване на команда върху писмата..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Няма писма, отговарящи на този критерий"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Записване..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Търсенето достигна до края, без да бъде намерено съвпадение"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Търсенето достигна до началото, без да бъде намерено съвпадение"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Търсенето е прекъснато"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Сървърът не поддържа командата TOP"
+
+@@ -6384,7 +6464,7 @@ msgstr "Сървърът не поддържа командата TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "Грешка при запис на заглавната част на писмото във временен файл"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Сървърът не поддържа командата UIDL"
+
+@@ -6399,7 +6479,7 @@ msgstr[1] "Невалиден индекс на писмо. Опитайте д
+ msgid "POP host is not defined"
+ msgstr "POP хостът не е дефиниран"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s не е валидна POP пътека"
+@@ -6432,156 +6512,156 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d от %d писма са прочетени]"
+ msgstr[1] "%s [%d от %d писма са прочетени]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Изтегляне на списък с писмата..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Маркиране на %d съобщения за изтриване..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Грешка при запис на писмото във временен файл"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Идентифициране (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Идентифициране (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Неуспешна APOP идентификация"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Сървърът не поддържа командата USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Неуспешна SASL идентификация"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Невалиден "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Оставянето на писмата на сървъра е невъзможно"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Грешка при свързване със сървъра: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Затваряне на връзката към POP сървър..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Потвърждаване индексите на писмата..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Връзката пропадна. Желаете ли да се включите отново към POP сървъра?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Чернови"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Няма запазени чернови"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Невалидна S/MIME заглавна част"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Невалидна PGP заглавна част"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Изтегляне на писмо..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Ново запитване"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Създаване на псевдоним"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Чакане на отговор..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Запитване: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Запитване '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Команда за запитване не е дефинирана"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipe"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Отпечатване"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Записване..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Приложението е записано на диска"
+ msgstr[1] "Приложението е записано на диска"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ! На път сте да презапишете %s, наистина ли?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Приложението е филтрирано"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Филтриране през: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Предаване на (pipe): "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Не е дефинирана команда за отпечатване на %s приложения"
+@@ -6589,58 +6669,58 @@ msgstr "Не е дефинирана команда за отпечатване
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Желаете ли да отпечатате маркираните приложения?"
+ msgstr[1] "Желаете ли да отпечатате маркираните приложения?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Желаете ли да отпечатате приложението?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Грешка при дешифрирането на шифровано писмо"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Приложения"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ #, fuzzy
+ msgid "There are no subparts to show"
+ msgstr "Няма подчасти, които да бъдат показани."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Грешка при изтриването на приложение от POP сървъра"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Грешка при изтриването на приложение от POP сървъра"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Изтриването на приложения от шифровани писма не се поддържа"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Изтриването на приложения от шифровани писма не се поддържа"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Поддържа се само изтриване на приложения от съставни писма"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Може да изпращате отново само message/rfc822 части"
+
+@@ -6677,7 +6757,7 @@ msgstr "Грешка при създаване на %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Няма маркирани писма"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Няма mailing list-ове"
+
+@@ -6692,67 +6772,67 @@ msgstr "Декодирането на всички маркирани прило
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Може да изпращате отново само message/rfc822 части"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Добавяне"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Вмъкване"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "ОК"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Невъзможно получаването на mixmaster \"type2.list\""
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Избор на remailer верига"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Грешка: %s не може да се използва като последен remailer във веригата"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "mixmaster веригите са ограничени до %d елемента"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "remailer веригата вече е празна"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Първият елемент от веригата е вече избран"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Последният елемент от веригата е вече избран"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "mixmaster не приема Cc или Bcc заглавни полета"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Моля, поставете валидна стойност в променливата \"hostname\" когато използвате mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Грешка (%d) при изпращане на писмото.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Грешка при изпращане на писмото"
+
+@@ -6783,42 +6863,42 @@ msgstr "Желаете ли да ги препратите като прилож
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Желаете ли да отговорите на %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Желаете ли да проследите до %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Желаете ли да прикачите писмото към отговора?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Прикачване на цитирано писмо..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Не всички поискани писма могат да бъдат прикачени"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Желаете ли да го препратите като приложение?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Подготовка за препращане..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: не се поддържа в този режим"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "показва приложението като текст"
+@@ -6827,196 +6907,196 @@ msgstr "показва приложението като текст"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Няма пощенска кутия.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Желаете ли да редактирате чернова?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Желаете ли да редактирате писмото преди препращане?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Желаете ли да изтриете непромененото писмо?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Непромененото писмо е изтрито"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Писмото не е изпратено"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Писмото е записано като чернова"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Липсва тема на писмото. Желаете ли да прекъснете изпращането?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Липсва тема"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Липсва тема"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "променя кодирането на приложението"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Изпращане на писмото..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Писмото не може да бъде изпратено"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Изпращане на заден фон"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Писмото е изпратенo"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Не е намерен \"boundary\" параметър [моля, съобщете за тази грешка]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s вече не съществува"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s не е обикновен файл"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Писмото не може да бъде изпратено."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Грешка при отваряне на %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Грешка %d (%s) при изпращане на писмото"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Изпращащ процес:"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Лош IDN %s докато формата за повторно изпращане беше подготвяна"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Неуспешен SSL: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Неуспешен SSL: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Невалиден "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Неуспешна SASL идентификация."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Неуспешна GSSAPI идентификация"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Подреждане на пощенската кутия..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Не може да бъде намерена функция за подреждане (Моля, съобщете за тази грешка)"
+
+@@ -7068,11 +7148,11 @@ msgstr ""
+ "NeoMutt е свободен софтуер и може да бъде разпространяван\n"
+ "при определени условия; напишете 'neomutt -vv' за повече подробности.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Опции при компилация:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Опции при компилация:"
+diff --git a/po/ca.po b/po/ca.po
+index 7ac715bb0..8f85635a5 100644
+--- a/po/ca.po
++++ b/po/ca.po
+@@ -58,7 +58,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-05-15 01:16-0400\n"
+ "Last-Translator: Ivan Vilata i Balaguer <ivan@selidor.net>\n"
+ "Language-Team: Catalan <ca@dodds.net>\n"
+@@ -68,16 +68,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)ebutja, accepta (u)na sola volta, accepta (s)empre, sal(t)a"
++
++msgid "roas"
++msgstr "rust"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)ebutja, accepta (u)na sola volta, accepta (s)empre"
++
++msgid "roa"
++msgstr "rus"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)ebutja, accepta (u)na sola volta, sal(t)a"
++
++msgid "ros"
++msgstr "rut"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)ebutja, accepta (u)na sola volta"
++
++msgid "ro"
++msgstr "ru"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Ix"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Esborra"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Recupera"
+
+@@ -85,18 +109,18 @@ msgstr "Recupera"
+ msgid "Select"
+ msgstr "Selecciona"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Ajuda"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "No teniu cap àlies."
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Àlies"
+
+@@ -105,52 +129,52 @@ msgstr "Àlies"
+ msgid "Alias as: "
+ msgstr "Nou àlies: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Ja heu definit un àlies amb aquest nom."
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Avís: Aquest àlies podria no funcionar. Voleu reparar-lo?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adreça: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "L’IDN no és vàlid: %s"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nom personal: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "Voleu acceptar «%s» com a àlies de «%s»?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Desa al fitxer: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Error en llegir el fitxer d’àlies."
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Error en llegir el fitxer d’àlies."
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "S’ha afegit l’àlies"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Error en desplaçar-se dins del fitxer d’àlies."
+
+@@ -161,7 +185,7 @@ msgstr "Error en desplaçar-se dins del fitxer d’àlies."
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "«%s» no existeix. Voleu crear-lo?"
+@@ -170,8 +194,8 @@ msgstr "«%s» no existeix. Voleu crear-lo?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "No s’ha pogut crear «%s»: %s"
+@@ -181,7 +205,7 @@ msgstr "No s’ha pogut crear «%s»: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Voleu crear un compte inicial d’Autocrypt?"
+
+@@ -190,7 +214,7 @@ msgstr "Voleu crear un compte inicial d’Autocrypt?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Adreça del compte d’Autocrypt: "
+
+@@ -199,7 +223,7 @@ msgstr "Adreça del compte d’Autocrypt: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Per favor, entreu una sola adreça de correu"
+
+@@ -208,7 +232,7 @@ msgstr "Per favor, entreu una sola adreça de correu"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Aquesta adreça de correu ja té un compte d’Autocrypt associat"
+
+@@ -221,31 +245,31 @@ msgstr "Aquesta adreça de correu ja té un compte d’Autocrypt associat"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Preferiu xifrar?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+-msgstr "S’ha avortat la creació del compte d’Autocrypt"
++msgstr "S’ha pogut crear amb èxit el compte d’Autocrypt"
+
+ #. L10N:
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+-msgstr "S’ha pogut crear amb èxit el compte d’Autocrypt"
++msgstr "S’ha avortat la creació del compte d’Autocrypt"
+
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "No s’ha trobat cap clau (vàlida) d’Autocrypt per a %s"
+@@ -257,12 +281,12 @@ msgstr "No s’ha trobat cap clau (vàlida) d’Autocrypt per a %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Voleu cercar capçaleres d’Autocrypt a una bústia?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Bústia on cercar"
+
+@@ -273,21 +297,21 @@ msgstr "Bústia on cercar"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Voleu cercar capçaleres d’Autocrypt en una altra bústia?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Crea"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Esborra"
+
+@@ -295,9 +319,9 @@ msgstr "Esborra"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "(Des)Activa"
+
+@@ -305,17 +329,17 @@ msgstr "(Des)Activa"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "(No)Pref xifrar"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "es prefereix xifrar"
+
+@@ -324,7 +348,7 @@ msgstr "es prefereix xifrar"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "xifrar manualment"
+
+@@ -332,7 +356,7 @@ msgstr "xifrar manualment"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "actiu"
+
+@@ -340,12 +364,12 @@ msgstr "actiu"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "inactiu"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Comptes d’Autocrypt"
+
+@@ -353,12 +377,12 @@ msgstr "Comptes d’Autocrypt"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Error en actualitzar el registre del compte"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Voleu realment esborrar el compte «%s»?"
+@@ -376,7 +400,7 @@ msgstr "Voleu realment esborrar el compte «%s»?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "No s’ha pogut obrir la base de dades d’Autocrypt «%s»"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "Error en crear el context GPGME: %s"
+@@ -449,339 +473,287 @@ msgstr "La versió de la base de dades d’Autocrypt és massa nova"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "«%s» no és un directori"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Canvia de directori"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Màscara"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "S’ha subscrit a «%s»."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "S’ha dessubscrit de «%s»."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "«%s» no és un directori"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "S’ha subscrit a «%s»."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+ # ivb (2001/12/07)
+ # ivb Es refereix a les definides en «mailboxes».
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Bústies d’entrada [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Subscrites [%s], màscara de fitxers: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Directori [%s], màscara de fitxers: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "No es pot adjuntar un directori."
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "No hi ha cap fitxer que concorde amb la màscara de fitxers."
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Només es poden crear bústies amb IMAP."
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Només es poden reanomenar bústies amb IMAP."
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Només es poden esborrar bústies amb IMAP."
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Mostra el nom del fitxer seleccionat actualment."
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Voleu realment esborrar la bústia «%s»?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "S’ha esborrat la bústia"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "L’esborrat la bústia ha fallat"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "No s’ha esborrat la bústia"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Canvia al directori: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Error en llegir el directori"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Màscara de fitxers: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr ""
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr ""
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nom del nou fitxer: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "No es pot veure un directori."
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Error en intentar veure el fitxer."
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "S’ha subscrit a «%s»."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "S’ha dessubscrit de «%s»."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "No hi ha cap fitxer que concorde amb la màscara de fitxers."
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: El terminal no permet aquest color."
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: El color no existeix."
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: L’objecte no existeix."
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: Manquen arguments."
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: L’atribut no existeix."
+-
+-# ivb (2001/12/08)
+-# ivb També apareix com a error aïllat.
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: Sobren arguments."
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "No es permet l’ús de colors per defecte."
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-# És un error com els anteriors. ivb
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "score: El número no és vàlid."
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Voleu verificar la signatura?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "No s’ha pogut crear un fitxer temporal."
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "No s’ha pogut crear el filtre de visualització."
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "No s’ha pogut copiar el missatge."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S’ha pogut verificar amb èxit la signatura S/MIME"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "El propietari del certificat S/MIME no concorda amb el remitent"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Avís: Part d’aquest missatge no ha estat signat"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "NO s’ha pogut verificar la signatura S/MIME"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "S’ha pogut verificar amb èxit la signatura PGP"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "NO s’ha pogut verificar la signatura PGP"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Error en executar «%s»."
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Ordre: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Avís: El missatge no té capçalera «From:»."
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Redirigeix el missatge a: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Redirigeix els missatges marcats a: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Error en interpretar l’adreça."
+
+ # ivb (2001/12/02)
+ # ivb El programa posa l’interrogant.
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Voleu redirigir el missatge a «%s»"
+ msgstr[1] "Voleu redirigir els missatges a «%s»"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "No s’ha redirigit el missatge"
+ msgstr[1] "No s’han redirigit els missatges"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "S’ha redirigit el missatge"
+ msgstr[1] "S’han redirigit els missatges"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "No s’ha pogut crear el procés filtre."
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Redirigeix a l’ordre: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "No s’ha definit cap ordre d’impressió"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Voleu imprimir el missatge?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Voleu imprimir els misatges marcats?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "S’ha imprès el missatge."
+ msgstr[1] "S’han imprès els missatges."
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -789,169 +761,343 @@ msgstr[0] "No s’ha pogut imprimir el missatge."
+ msgstr[1] "No s’han pogut imprimir els missatges."
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Descendent per (d)ata/(o)rig/(r)ebut/(t)ema/de(s)t/(f)il/(c)ap/(m)ida/(p)unts/sp(a)m/(e)tiqueta?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ascendent per (d)ata/(o)rig/(r)ebut/(t)ema/de(s)t/(f)il/(c)ap/(m)ida/(p)unts/sp(a)m/(e)tiqueta?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dortsfcmpae"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Ordre per a l’intèrpret: "
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Descodifica i desa a la bústia"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Descodifica i desa els marcats a la bústia"
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Desxifra i desa a la bústia"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Desxifra i desa els marcats a la bústia"
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Desa a la bústia"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Desa els marcats a la bústia"
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Descodifica i copia a la bústia"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Descodifica i copia els marcats a la bústia"
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Desxifra i copia a la bústia"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Desxifra i copia els marcats a la bústia"
+
+ # «%s» podria ser « els marcats». ivb
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Copia a la bústia"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Copia els marcats a la bústia"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "S’està copiant a «%s»…"
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "S’ha canviat «Content-Type» a «%s»"
+
+ # «%s» és un codi de caràcters. ivb
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Voleu convertir en %s en enviar?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "S’ha canviat «Content-Type» a «%s»"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "S’ha canviat el joc de caràcters a %s; es farà conversió"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "S’ha canviat el joc de caràcters a %s; no es farà conversió"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: Manquen arguments."
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: No s’ha indicat el nom del grup."
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "Manquen arguments."
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Error a «%s», línia %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Error a «%s», línia %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: Hi ha errors a «%s»."
++
++# ivb (2001/12/08)
++# ivb ABREUJAT!
++# ivb source: S’avorta la lectura de «%s» perquè conté massa errors.
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: «%s» conté massa errors: s’avorta la lectura."
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: Hi ha errors a «%s»."
++msgstr[1] "source: Hi ha errors a «%s»."
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: No s’ha indicat cap adreça."
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Avís: L’IDN de l’àlies «%2$s» no és vàlid: %1$s"
++
++# «attachments» és una ordre de configuració. ivb
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: No s’ha indicat la disposició."
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "Edita la descripció d’una adjunció."
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: La disposició no és vàlida."
++
++# ivb (2001/12/08)
++# ivb També apareix com a error aïllat.
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: Sobren arguments."
++
++# L’indicador de format inicial altera l’ordre de configuració. ivb
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: Manca «-rx» o «-addr»"
++
++# L’indicador de format inicial altera l’ordre de configuració. ivb
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: Avís: L’IDN no és vàlid: %s"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "El camp de capçalera no és vàlid."
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: La variable no és coneguda."
++
++# ivb (2001/11/24)
++# ivb Es refereix a una variable lògica.
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "«%s» no està activada."
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: Error a «%s»."
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "No s’han pogut imprimir els missatges"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: No s’ha indicat el patró de concordança."
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: No s’ha indicat el patró de concordança."
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "S’ha subscrit a «%s»."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "S’ha subscrit a «%s»."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "No s’ha indicat l’assumpte."
++
++# «unattachments» és una ordre de configuració. ivb
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: No s’ha indicat la disposició."
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: La disposició no és vàlida."
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "S’ha dessubscrit de «%s»."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "S’ha dessubscrit de «%s»."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "No hi ha cap adjunció"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Remitent: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Destinatari: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "En còpia: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "En còpia oculta: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Assumpte: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Respostes a: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Còpia a bústia: "
+
+ # Ho deixe tal qual perquè és curt i a les altres cadenes traduïdes apareix «Mixmaster». ivb
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Seguretat: "
+
+@@ -962,31 +1108,31 @@ msgstr "Seguretat: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Signa com a: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ # ivb (2001/12/07)
+ # ivb El primer «%s» és una adreça de correu i el segon potser «,...».
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Voleu escriure un seguiment a %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "Edita el camp de resposta (Reply-To)."
+@@ -994,51 +1140,51 @@ msgstr "Edita el camp de resposta (Reply-To)."
+ # Línia completa (78 caràcters):
+ #
+ # y:Envia q:Avorta t:Dest. c:Còpia s:Assumpte a:Ajunta d:Descriu ?:Ajuda
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Envia"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Avorta"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Dest."
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Còpia"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Assumpte"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Ajunta"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descriu"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "No s’ha indicat l’assumpte."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Desactivat"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "No"
+
+@@ -1046,7 +1192,7 @@ msgstr "No"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "No recomanat"
+
+@@ -1054,14 +1200,14 @@ msgstr "No recomanat"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Disponible"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Sí"
+
+@@ -1071,7 +1217,7 @@ msgstr "Sí"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (x)ifra, en (c)lar, (a)utomàtic?"
+
+@@ -1079,52 +1225,52 @@ msgstr "Autocrypt: (x)ifra, en (c)lar, (a)utomàtic?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "xca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "No es permet"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Signa i xifra"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Xifra"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Signa"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Cap"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP en línia)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+ # Crec que hi ha bastant d’espai per a la cadena. ivb
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (xifratge oportunista)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<per defecte>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Xifra amb: "
+
+@@ -1133,11 +1279,11 @@ msgstr "Xifra amb: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Recomanació: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1148,7 +1294,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "L’adjunció #%d ja no existeix: %s"
+@@ -1163,242 +1309,364 @@ msgstr "L’adjunció #%d ja no existeix: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "S’ha modificat l’adjunció #%d. Actualitzar codificació de «%s»?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Adjuncions"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "No es pot esborrar l’única adjunció"
+
+ # El primer camp és una capçalera de correu. ivb
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "L’IDN de «%s» no és vàlid: %s"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "S’ha desat l’adjunció"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "No es convertirà l’adjunció actual"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "S’ha filtrat l’adjunció"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Error en enviar el missatge"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "S’estan adjuntant els fitxers seleccionats…"
+ msgstr[1] "S’estan adjuntant els fitxers seleccionats…"
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "No s’ha pogut adjuntar «%s»."
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Bústia a obrir per a adjuntar-ne missatges"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Bústia a obrir per a adjuntar-ne missatges"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "No s’ha pogut obrir la bústia «%s»."
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "La carpeta no conté missatges"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Marqueu els missatges que voleu adjuntar."
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "No s’ha pogut adjuntar."
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "La recodificació només afecta les adjuncions de tipus text"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "No es convertirà l’adjunció actual"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Es convertirà l’adjunció actual"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "La codificació no és vàlida"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Voleu desar una còpia d’aquest missatge?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Envia l’adjunt amb el nom: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Reanomena a: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Ha fallat stat() sobre «%s»: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nou fitxer: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "«Content-Type» ha de tenir la forma «base/sub»."
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "El valor de «Content-Type» «%s» no és conegut."
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "No s’ha pogut crear el fitxer «%s»."
+
+ # ivb (2001/11/20)
+ # ivb Curiosa forma d’emetre un error…
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "El que ocorre aquí és que no s’ha pogut incloure una adjunció."
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Voleu recuperar un missatge posposat?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Escriu el missatge a la bústia"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "S’està escrivint el missatge a «%s»…"
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "S’ha escrit el missatge"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "No heu configurat cap implementació de PGP."
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "El missatge ja empra S/MIME. Voleu posar-lo en clar i continuar?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "No heu configurat cap implementació de S/MIME."
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "El missatge ja empra PGP. Voleu posar-lo en clar i continuar?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "No es pot afegir sense definir «append-hook» o «close-hook»: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "No s’ha pogut blocar la bústia."
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "S’està descomprimint «%s»…"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "No s’ha pogut identificar el contingut del fitxer comprimit."
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "No s’han pogut trobar les operacions per al tipus de bústia %d."
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "L’ordre de compressió ha fallat: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "No es poden afegir missatges a les bústies d’aquest tipus"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "No es pot sincronitzar un fitxer comprimit sense definir «close-hook»."
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "S’està comprimint «%s»…"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "S’està afegint comprimit a «%s»…"
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Error. Es manté el fitxer temporal: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "La data relativa no és vàlida: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "La data relativa no és vàlida: %s"
++
++# És un error com els anteriors. ivb
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "score: El número no és vàlid."
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "El valor de l’opció «%s» no és vàlid: «%s»"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "El mes no és vàlid: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "No es permet aquesta funció al mode d’adjuntar missatges."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++# És un error com els anteriors. ivb
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "score: El número no és vàlid."
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++# És un error com els anteriors. ivb
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "score: El número no és vàlid."
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "La data relativa no és vàlida: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "El valor de l’opció «%s» no és vàlid: «%s»"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Error: L’argument de l’opció «-d» no és vàlid: %s"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: La variable no és coneguda."
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "La data relativa no és vàlida: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "La data relativa no és vàlida: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nom d’usuari a «%s»: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Contrasenya per a «%s@%s»: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "No s’ha definit l’ordre de refresc OAUTH."
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "No s’ha pogut executar l’ordre de refresc."
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "L’ordre ha retornat la cadena buida."
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1422,7 +1690,7 @@ msgstr "No s’ha pogut connectar amb «%s» (%s)"
+ # ivb (2001/12/08)
+ # ivb Apareix amb més coses al darrere (curs_lib) o entre parèntesis
+ # ivb (mutt_socket) -> sense punt.
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "Error desconegut"
+
+@@ -1436,23 +1704,23 @@ msgstr "Error en parlar amb «%s» (%s)."
+ msgid "Connection to %s has been aborted"
+ msgstr "S’ha tancat la connexió amb «%s»."
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "El perfil SASL no és conegut."
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Error en reservar una connexió SASL."
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Error en establir les propietats de seguretat de SASL."
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Error en establir el nivell de seguretat extern de SASL."
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Error en establir el nom d’usuari extern de SASL."
+
+@@ -1466,138 +1734,114 @@ msgstr "preconnect: L’ordre de preconnexió ha fallat"
+ msgid "Connection to %s closed"
+ msgstr "S’ha tancat la connexió amb «%s»."
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "S’està plenant la piscina d’entropia «%s»…"
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "«%s» no té uns permisos segurs."
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "S’ha inhabilitat l’SSL per manca d’entropia."
+
+ # ivb (2001/12/02)
+ # ivb Es pot referir a nom, correu, organització, unitat organitzativa,
+ # ivb localitat, estat, país -> ni masculí ni femení, sinó tot el contrari.
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "No es coneix"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[no s’ha pogut calcular]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[la data no és vàlida]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "El certificat del servidor encara no és vàlid."
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "El certificat del servidor ha expirat."
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "No s’ha pogut extraure l’entropia suficient del vostre sistema."
+
+ # Sí, «subjecte» del certificat X.509, no «assumpte». ivb
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "No s’ha pogut obtenir el subjecte del certificat."
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "No s’ha pogut obtenir el nom comú del certificat."
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "El propietari del certificat no concorda amb l’amfitrió «%s»."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Aquest certificat pertany a:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Aquest certificat ha estat lliurat per:"
+
+ # ivb (2001/12/08)
+ # ivb A continuació ve el rang de validesa.
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Aquest certificat té validesa"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " des de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " fins a %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Empremta digital SHA1: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "Empremta digital SHA256: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Comprovació del certificat SSL (%zu de %zu en la cadena)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)ebutja, accepta (u)na sola volta, accepta (s)empre, sal(t)a"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)ebutja, accepta (u)na sola volta, accepta (s)empre"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)ebutja, accepta (u)na sola volta, sal(t)a"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)ebutja, accepta (u)na sola volta"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Ix "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Avís: No s’ha pogut desar el certificat."
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "S’ha desat el certificat."
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "La comprovació de l’amfitrió del certificat ha fallat: %s"
+@@ -1605,15 +1849,15 @@ msgstr "La comprovació de l’amfitrió del certificat ha fallat: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Avís: No s’ha pogut establir el nom d’estació per a SNI de TLS."
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Error d’E/S."
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "La negociació d’SSL ha fallat: %s"
+@@ -1621,93 +1865,73 @@ msgstr "La negociació d’SSL ha fallat: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "No s’ha pogut crear el context SSL."
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Avís: Error en habilitar $ssl_verify_partial_chains."
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "No s’ha pogut obtenir el certificat del servidor."
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Error en verificar el certificat: %s"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "El certificat no és de tipus X.509."
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Error en inicialitzar les dades de certificat de GNU TLS."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Error en processar les dades del certificat."
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Avís: El certificat del servidor encara no és vàlid."
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Avís: El certificat del servidor ha expirat."
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Avís: El certificat del servidor ha estat revocat."
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "Avís: El nom d’estació del servidor no concorda amb el del certificat."
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Avís: El signatari del certificat del servidor no és una CA."
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+-msgstr "Avís: El certificat del servidor s’ha signat emprant un algorisme insegur."
+-
+-# ivb (2001/11/27)
+-# ivb (r)ebutja, accepta (u)na sola volta, accepta (s)empre
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "rus"
+-
+-# ivb (2001/11/27)
+-# ivb (r)ebutja, accepta (u)na sola volta
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ru"
++msgstr "Avís: El certificat del servidor s’ha signat emprant un algorisme insegur."
+
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Tots els protocols de connexió TLS/SSL disponibles estan inhabilitats."
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "No es permet la selecció explícita de la suite de xifrat amb $ssl_ciphers."
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "La connexió SSL/TLS empra «%s» (%s/%s/%s)."
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Error: No hi ha un connector TLS obert."
+
+@@ -1726,38 +1950,18 @@ msgstr "Error al túnel establert amb «%s»: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "El túnel a «%s» ha tornat l’error %d: %s"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "No hi ha cap mecanisme disponible per a desxifrar el missatge"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "sí"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Voleu abandonar NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Premeu qualsevol tecla per a continuar…"
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " («?» llista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1781,7 +1985,7 @@ msgstr ""
+ " capçaleres.\n"
+ "~p Imprimeix el missatge.\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1803,20 +2007,20 @@ msgstr ""
+ "~? Mostra aquest missatge.\n"
+ ". A soles en una línia termina l’entrada.\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: El número de missatge no és vàlid.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Termineu el missatge amb «.» a soles en una línia)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "No hi ha cap bústia activa.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Contingut del missatge:\n"
+
+@@ -1824,19 +2028,19 @@ msgstr "Contingut del missatge:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continuar)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "Manca un nom de fitxer.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "El missatge no conté cap línia.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: L’ordre de l’editor no és coneguda («~?» per a l’ajuda).\n"
+@@ -1883,23 +2087,78 @@ msgstr "No s’ha pogut afegir a la carpeta: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "El missatge «multipart» no té paràmetre «boundary»."
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "No s’ha habilitat l’ús de fils"
+
+ # ivb (2001/12/08)
+ # ivb Així queda més clar. El programa posa l’interrogant.
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Quin senyalador voleu activar"
+
+ # ivb (2001/12/08)
+ # ivb Així queda més clar. El programa posa l’interrogant.
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Quin senyalador voleu desactivar"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: El terminal no permet aquest color."
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: El color no existeix."
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: L’objecte no existeix."
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: L’atribut no existeix."
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "No es permet l’ús de colors per defecte."
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++# És un error com els anteriors. ivb
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "score: El número no és vàlid."
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "sí"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Voleu abandonar NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Premeu qualsevol tecla per a continuar…"
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " («?» llista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1925,25 +2184,25 @@ msgstr ""
+ msgid "Invoking autoview command: %s"
+ msgstr "Ordre de visualització automàtica: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "No s’ha pogut crear el filtre."
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- No s’ha pogut executar «%s». --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr ""
+ "[-- Errors de l’ordre de visualització automàtica --]\n"
+ "[-- «%s». --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Error: La part «message/external-body» no té paràmetre «access-type». --]\n"
+
+@@ -1962,7 +2221,7 @@ msgstr "[-- Error: La part «message/external-body» no té paràmetre «access-
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1993,7 +2252,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -2011,7 +2270,7 @@ msgstr[1] ""
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -2024,14 +2283,14 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr ""
+ "[-- Aquesta adjunció de tipus «%s/%s» --]\n"
+ "[-- ha estat esborrada --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- Nom: %s --]\n"
+@@ -2039,7 +2298,7 @@ msgstr "[-- Nom: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2054,7 +2313,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2063,101 +2322,101 @@ msgstr ""
+ "[-- Aquesta adjunció de tipus «%s/%s» no s’inclou, --]\n"
+ "[-- i no es pot emprar el mètode d’accés indicat, «%s». --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Error: No s’ha pogut mostrar cap part del «multipart/alternative». --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Adjunció #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Adjunció #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "No s’han pogut mostrar una o més parts d’aquest missatge."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "No s’ha pogut obrir el fitxer temporal."
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "No s’ha pogut obrir el fitxer temporal."
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "No s’ha pogut obrir el fitxer temporal."
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Error: La part «multipart/signed» no té paràmetre «protocol»"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Açò és una adjunció. (Useu «%s» per a veure aquesta part.) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- No es pot mostrar «%s/%s». (Empreu «%s» per a veure aquesta part.) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Açò és una adjunció. (Vinculeu «view-attachents» a una tecla.) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- No es pot mostrar «%s/%s». (Vinculeu «view-attachents» a una tecla.) --]\n"
+
+ # Es concatenen amb una o cap de les següents i en acabant « --]». ivb
+ # Sí, la concatenació original està malament. ivb
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Açò és una adjunció. --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- No es pot mostrar «%s/%s». --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "Error: Per favor, informeu d’aquest error."
+
+ # ivb (2001/12/07)
+ # ivb Es refereix a un menú -> masculí.
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<DESCONEGUT>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Vincles genèrics:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funcions no vinculades:"
+
+ # ivb (2001/12/08)
+ # ivb El noms dels menús no estan traduïts.
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Ajuda de «%s»"
+@@ -2174,41 +2433,41 @@ msgstr "La drecera a bústia s’ha expandit a l’expressió regular buida."
+ msgid "badly formatted command string"
+ msgstr "La cadena d’ordre no té un format vàlid."
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: No es pot fer «unhook *» des d’un «hook»"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: El tipus de «hook» no és conegut: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: No es pot esborrar un «%s» des d’un «%s»"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: El menú no existeix."
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: El menú no existeix."
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: El menú no existeix."
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "No s’ha pogut crear el fitxer temporal «%s»."
+@@ -2246,28 +2505,28 @@ msgstr "L’autenticació GSSAPI ha fallat"
+ msgid "LOGIN disabled on this server"
+ msgstr "L’ordre «LOGIN» no es troba habilitada en aquest servidor"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "S’està entrant…"
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "L’entrada ha fallat"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "S’està autenticant (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "L’autenticació OAUTHBEARER ha fallat"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "S’està autenticant (%s)…"
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "L’autenticació SASL ha fallat."
+
+@@ -2314,90 +2573,80 @@ msgstr "El reanomenament ha fallat: %s"
+ msgid "Mailbox renamed"
+ msgstr "S’ha reanomenat la bústia"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "S’ha tancat la bústia."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "La connexió amb «%s» ha expirat."
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Aquest servidor IMAP és antic. NeoMutt no pot funcionar amb ell."
+
+ # És un missatge d’error. ivb
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Cal un nom de capçalera per a cercar les capçaleres: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "L’ordre «CREATE» ha fallat: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "S’està tancant la connexió amb «%s»…"
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Voleu protegir la connexió emprant TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "No s’ha pogut negociar la connexió TLS."
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "No s’ha pogut establir una connexió xifrada."
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "S’està subscrivint a «%s»…"
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "S’està dessubscrivint de «%s»…"
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "S’ha subscrit a «%s»."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "S’ha dessubscrit de «%s»."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "S’estan copiant %d missatges a «%s»…"
+ msgstr[1] "S’estan copiant %d missatges a «%s»…"
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Voleu crear «%s»?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "No s’han pogut eliminar els missatges."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2405,44 +2654,44 @@ msgstr[0] "S’estan marcant %d missatges com a esborrats…"
+ msgstr[1] "S’estan marcant %d missatges com a esborrats…"
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "S’estan desant els missatges canviats… [%d/%d]"
+ msgstr[1] "S’estan desant els missatges canviats… [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Error en desar els senyaladors. Voleu tancar igualment?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Error en desar els senyaladors."
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "S’estan eliminant missatges del servidor…"
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: Ha fallat «EXPUNGE»."
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "S’està seleccionant la bústia «%s»…"
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Error en obrir la bústia."
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "El servidor SMTP no admet autenticació."
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "No vàlid "
+@@ -2453,7 +2702,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Voleu avortar la descàrrega i tancar la bústia?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "No resta memòria."
+
+@@ -2472,7 +2721,7 @@ msgstr "S’estan recollint els canvis als senyaladors…"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "No s’han pogut recollir les capçaleres d’aquesta versió de servidor IMAP"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "S’estan recollint les capçaleres dels missatges…"
+
+@@ -2485,160 +2734,160 @@ msgstr "S’està penjant el missatge…"
+ msgid "Copying message %d to %s..."
+ msgstr "S’està copiant el missatge %d a «%s»…"
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "S’està recollint el missatge…"
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "L’índex del missatge no és correcte. Proveu de reobrir la bústia."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Voleu continuar?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Ix"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Desa"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Nou correu"
+
+ # ivb (2001/12/08)
+ # ivb Menú superpoblat: mantenir _molt_ curt!
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Respon"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grup"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+ # ivb (2001/12/07)
+ # ivb El primer «%s» és una adreça de correu i el segon potser «,...».
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Voleu escriure un seguiment a %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "No hi ha cap bústia oberta"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "No hi ha cap missatge"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "No hi ha cap missatge visible"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "La bústia és de només lectura"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "No es permet aquesta funció al mode d’adjuntar missatges"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: l’ACL no permet l’operació."
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "No es pot establir si una bústia de només lectura pot ser modificada."
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "S’escriuran els canvis a la carpeta en abandonar-la"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "No s’escriuran els canvis a la carpeta"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "«%s» no és una bústia."
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "S’ha modificat la bústia des de fora. Els senyaladors poden ser incorrectes."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Hi ha correu nou en aquesta bústia"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "S’ha modificat la bústia des de fora"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "No hi ha cap missatge marcat"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "No hi ha res per fer"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Entreu l’ID de clau: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "El missatge pare no és visible en aquesta vista limitada"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "S’estan eliminant missatges del servidor…"
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "Esborra tots els missatges d’un fil"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Salta al missatge: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "L’argument ha de ser un número de missatge"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "El número de missatge no és vàlid"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "El missatge no és visible"
+
+@@ -2652,40 +2901,40 @@ msgstr "El missatge no és visible"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "No es pot esborrar el missatge"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Esborra els missatges que concorden amb: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "No hi ha cap patró limitant en efecte"
+
+ # ivb (2001/12/08)
+ # ivb Nooop! Només mostra el límit actual.
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Límit: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limita als missatges que concorden amb: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Per a veure tots els missatges, limiteu a «all»"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Voleu abandonar NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marca els missatges que concorden amb: "
+
+@@ -2694,213 +2943,213 @@ msgstr "Marca els missatges que concorden amb: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "No es pot restaurar el missatge"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Restaura els missatges que concorden amb: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Desmarca els missatges que concorden amb: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "S’ha eixit dels servidors IMAP"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "S’avorta el missatge sense assumpte"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "El servidor SMTP no admet autenticació"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "S’avorta el missatge sense assumpte"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "S’avorta el missatge sense assumpte"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+ # És una pregunta. -- ivb
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Obri en mode de només lectura la bústia"
+
+ # És una pregunta. -- ivb
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Obri la bústia"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "No hi ha cap bústia amb correu nou."
+
+ # És una pregunta. -- ivb
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Obri en mode de només lectura la bústia"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Voleu abandonar NeoMutt sense desar els canvis?"
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "No es poden enllaçar els fils"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "S’ha trencat el fil."
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "No es pot trencar el fil, el missatge no n’és part de cap."
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "No es poden enllaçar els fils"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "No hi ha capçalera «Message-ID:» amb què enllaçar el fil."
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Per favor, marqueu un missatge per a enllaçar-lo ací."
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "S’han enllaçat els fils."
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "No s’ha enllaçat cap fil."
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Vos trobeu sobre el darrer missatge"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "No hi ha cap missatge no esborrat"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Vos trobeu sobre el primer missatge"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "No hi ha cap missatge nou en aquesta vista limitada"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "No hi ha cap missatge nou"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "No hi ha cap missatge no llegit en aquesta vista limitada"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "No hi ha cap missatge no llegit"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "La cerca ha tornat al principi"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "La cerca ha tornat al final"
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "No es pot senyalar el missatge"
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "No es pot canviar el senyalador «nou»"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "No hi ha més fils"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Vos trobeu al primer fil"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "El fil conté missatges no llegits"
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "No es pot esborrar el missatge"
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "No es pot editar el missatge."
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2910,7 +3159,7 @@ msgstr[1] "S’han canviat %d etiquetes"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "No s’ha canviat cap etiqueta"
+
+@@ -2919,7 +3168,7 @@ msgstr "No s’ha canviat cap etiqueta"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "No es poden marcar els missatges com a llegits"
+@@ -2927,280 +3176,134 @@ msgstr "No es poden marcar els missatges com a llegits"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Entreu una pulsació per a la drecera: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "Drecera de teclat per a un missatge."
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "S’ha vinculat el missatge amb la drecera «%s»"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "El missatge no té identificador per a ser vinculat amb la drecera"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ # Al darrere porta dos punts. ivb
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "No es pot restaurar el missatge"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Error a la línia d’ordres: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Error a la línia d’ordres: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "No s’ha pogut determinar el nom de l’estació amb uname()."
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: No s’ha indicat el nom del grup."
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "Manquen arguments."
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Error a «%s», línia %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Error a «%s», línia %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: Hi ha errors a «%s»."
+-
+-# ivb (2001/12/08)
+-# ivb ABREUJAT!
+-# ivb source: S’avorta la lectura de «%s» perquè conté massa errors.
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: «%s» conté massa errors: s’avorta la lectura."
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: Hi ha errors a «%s»."
+-msgstr[1] "source: Hi ha errors a «%s»."
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: No s’ha indicat cap adreça."
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Avís: L’IDN de l’àlies «%2$s» no és vàlid: %1$s"
+-
+-# «attachments» és una ordre de configuració. ivb
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: No s’ha indicat la disposició."
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "Edita la descripció d’una adjunció."
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: La disposició no és vàlida."
+-
+-# L’indicador de format inicial altera l’ordre de configuració. ivb
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: Manca «-rx» o «-addr»"
+-
+-# L’indicador de format inicial altera l’ordre de configuració. ivb
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: Avís: L’IDN no és vàlid: %s"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "El camp de capçalera no és vàlid."
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: La variable no és coneguda."
+-
+-# ivb (2001/11/24)
+-# ivb Es refereix a una variable lògica.
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "«%s» no està activada."
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: Error a «%s»."
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "No s’han pogut imprimir els missatges"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: No s’ha indicat el patró de concordança."
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: No s’ha indicat el patró de concordança."
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "S’ha subscrit a «%s»."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "No s’ha indicat l’assumpte."
+-
+-# «unattachments» és una ordre de configuració. ivb
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: No s’ha indicat la disposició."
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: La disposició no és vàlida."
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "S’ha dessubscrit de «%s»."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: L’ordre no és coneguda."
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "El valor de l’opció «%s» no és vàlid: «%s»"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "No es permet aquesta funció al mode d’adjuntar missatges."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "S’ha detectat un bucle entre macros"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "La tecla no està vinculada"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "La tecla no està vinculada. Premeu «%s» per a obtenir ajuda."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: La seqüència de tecles és nul·la."
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: La seqüència de tecles és buida."
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: Manquen arguments."
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: La funció no existeix."
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Premeu les tecles («^G» avorta): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Caràcter = %s, Octal = %o, Decimal = %d"
+@@ -3228,7 +3331,7 @@ msgstr "No s’ha trobat cap entrada pel tipus «%s» a «mailcap»"
+ msgid "Scanning %s..."
+ msgstr "S’està llegint «%s»…"
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "S’està llegint «%s»…"
+@@ -3243,13 +3346,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): No s’ha pogut canviar la data del fitxer."
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "S’està escrivint «%s»…"
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3272,7 +3375,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3315,55 +3418,55 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Error en inicialitzar el terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "No s’ha pogut determinar el nom de l’usuari."
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "No s’ha pogut determinar el directori de l’usuari."
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Error: L’argument de l’opció «-d» no és vàlid: %s"
+
+ # Es refereix a l’esquema d’URL. ivb
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "No s’ha pogut interpretar l’enllaç de tipus «mailto:»."
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "No s’ha indicat cap destinatari"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "No es pot emprar l’opció «-E» amb l’entrada estàndard."
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "No s’ha pogut obrir el fitxer missatge: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: No s’ha pogut adjuntar el fitxer."
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "No hi ha cap bústia amb correu nou"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "No s’ha definit cap bústia d’entrada"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "La bústia és buida"
+
+@@ -3411,52 +3514,52 @@ msgstr "No s’ha pogut reobrir la bústia."
+ msgid "Can't write message"
+ msgstr "No s’ha pogut escriure el missatge."
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Salta a: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "El número d’índex no és vàlid"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "No hi ha cap entrada"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "No podeu baixar més"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "No podeu pujar més"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Vos trobeu a la primera pàgina"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Vos trobeu a la darrera pàgina"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Vos trobeu a la darrera entrada"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Vos trobeu a la primera entrada"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Cerca: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Cerca cap enrere: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "No s’ha trobat"
+
+@@ -3499,20 +3602,20 @@ msgstr "S’està esperant el blocatge amb flock()… %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "El format del fitxer d’historial no és vàlid (línia %d)."
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "No s’ha pogut crear un fitxer temporal."
+
+@@ -3531,7 +3634,7 @@ msgstr "S’activa la depuració a nivell %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "S’activa la depuració a nivell %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Error en connectar amb el servidor: %s"
+@@ -3563,17 +3666,17 @@ msgstr "S’ha rebut el senyal %d (%s)… Eixint.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "S’ha rebut el senyal %d… Eixint.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3581,155 +3684,128 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "El fitxer és un directori; voleu desar a dins? [(s)í, (n)o, (t)ots]"
+
+ # (s)í, (n)o, (t)ots ivb
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "snt"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "El fitxer és un directori; voleu desar a dins?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Fitxer a sota del directori: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "El fitxer ja existeix; (s)obreescriu, (a)fegeix, (c)ancel·la?"
+
+ # ivb (2001/11/27)
+ # ivb (s)obreescriu, (a)fegeix, (c)ancel·la
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "sac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "No es poden desar missatges en bústies POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Voleu afegir els missatges a «%s»?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "No s’han pogut deixar els missatges al servidor"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nom d’usuari a «%s»: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Contrasenya per a «%s@%s»: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "No s’ha definit l’ordre de refresc OAUTH."
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "No s’ha pogut executar l’ordre de refresc."
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "L’ordre ha retornat la cadena buida."
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "El nom de fitxer no concorda amb cap «nametemplate»; continuar?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Cal que l’entrada «compose» de «mailcap» continga «%%s»."
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "No s’ha pogut obrir el fitxer per a interpretar-ne les capçaleres"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "No s’ha pogut obrir el fitxer per a eliminar-ne les capçaleres"
+
+ # Es refereix a un fitxer temporal. ivb
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "No s’ha pogut reanomenar un fitxer"
+
+ # ABREUJAT!
+ # No hi ha cap entrada «compose» de «%s» a «mailcap»: es crea un fitxer buit.
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "«%s» no té entrada «compose» a «mailcap»: cree fitxer buit"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Cal que l’entrada «edit» de «mailcap» continga «%%s»."
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "No hi ha cap entrada «edit» de «%s» a «mailcap»."
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "No hi ha cap entrada adequada a «mailcap». Es visualitza com a text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "No s’ha definit el tipus MIME. No es pot veure l’adjunció."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Ordre: %-20.20s Descripció: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Ordre: %-30.30s Adjunció: %s"
+
+ # Nom de fitxer i tipus MIME. ivb
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Adjunció: %s: %s"
+
+ # Nom de fitxer. ivb
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Adjunció: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Error d’escriptura."
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Es desconeix com imprimir l’adjunció."
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Cerca"
+
+@@ -3738,22 +3814,22 @@ msgstr "Cerca"
+ msgid "History '%s'"
+ msgstr "Consulta de «%s»"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "El valor de l’opció «%s» no és vàlid: «%s»"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "No s’ha pogut blocar «%s».\n"
+
+ # Vaja, no hi ha com posar-li cometes… ivb
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Hi ha correu nou a "
+
+@@ -3774,21 +3850,21 @@ msgstr "El missatge arrel no és visible en aquesta vista limitada"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "El missatge pare no és visible en aquesta vista limitada"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "S’ha interromput la cerca."
+
+ # Condició d’error. ivb
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "No s’ha pogut escriure «%s»."
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3800,13 +3876,13 @@ msgstr[1] "No s’han pogut esborrar els missatges."
+ msgid "Can't open trash folder"
+ msgstr "No s’ha pogut obrir la carpeta paperera."
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3815,56 +3891,56 @@ msgstr[1] "Voleu moure %d missatges llegits a «%s»?"
+
+ # ivb (2001/12/08)
+ # ivb Ací «%d» sempre és 1.
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Voleu eliminar %d missatge esborrat?"
+ msgstr[1] "Voleu eliminar %d missatges esborrats?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "S’estan movent els missatges llegits a «%s»…"
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "No s’ha modificat la bústia"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d mantinguts, %d moguts, %d esborrats"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d mantinguts, %d esborrats"
+
+ # ivb (2001/12/08)
+ # ivb Pot anar darrere de la següent de la següent.
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Premeu «%s» per a habilitar l’escriptura."
+
+ # ivb (2001/12/08)
+ # ivb Pot anar darrere de la següent.
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Habiliteu l’escriptura amb «toggle-write»."
+
+ # Precedeix alguna de les anteriors. Mantenir breu. ivb
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Bústia en estat de només lectura. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "S’ha establert un punt de control a la bústia"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (data actual: %c)"
+@@ -3874,7 +3950,7 @@ msgstr " (data actual: %c)"
+ # Exemple:
+ # [-- Eixida de OpenSSL (data actual: dg 05 nov 2006 21:04:11 CET). --]
+ # La primera: «OpenSSL» o «PGP» (meec, apòstrof); la segona l’anterior. ivb
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Eixida de %s%s: --]\n"
+@@ -3883,61 +3959,61 @@ msgstr "[-- Eixida de %s%s: --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "S’han esborrat de la memòria les frases clau"
+
+ # No es pot fer mai. ivb
+ # ABREUJAT! ivb
+ # No es pot emprar PGP en línia amb adjuncions. Voleu recórrer a emprar PGP/MIME?
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "No es pot emprar PGP en línia amb adjuncions. Emprar PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "No s’ha enviat el missatge: no es pot emprar PGP en línia amb adjuncions"
+
+ # No es pot fer mai. ivb
+ # ABREUJAT! ivb
+ # No es pot emprar PGP en línia amb adjuncions. Voleu recórrer a emprar PGP/MIME?
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "No es pot emprar PGP en línia amb «format=flowed». Emprar PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "No s’ha enviat el missatge: no es pot emprar PGP en línia amb «format=flowed»"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "S’està invocant PGP…"
+
+ # S’ha intentat però ha fallat. ivb
+ # ABREUJAT! ivb
+ # No s’ha pogut enviar el missatge en línia. Voleu recórrer a emprar PGP/MIME?
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "No s’ha pogut enviar el missatge en línia. Emprar PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "No s’ha enviat el missatge"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "No es permeten els misatges S/MIME sense pistes sobre el contingut"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "S’està provant d’extreure les claus PGP…\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S’està provant d’extreure els certificats S/MIME…"
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3946,7 +4022,7 @@ msgstr ""
+ "[-- Error: El protocol «%s» de «multipart/signed» no és conegut. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3954,7 +4030,7 @@ msgstr ""
+ "[-- Error: La signatura de «multipart/signed» manca o és feta malbé. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3963,7 +4039,7 @@ msgstr ""
+ "[-- Avís: No es poden verificar les signatures «%s/%s». --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3971,7 +4047,7 @@ msgstr ""
+ "[-- Les dades següents es troben signades: --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3979,7 +4055,7 @@ msgstr ""
+ "[-- Avís: No s’ha trobat cap signatura. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -4000,239 +4076,239 @@ msgstr "S’està invocant S/MIME…"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nom: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "també conegut com a: "
+
+ # Es refereix a una clau. ivb
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Vàlida des de: "
+
+ # Es refereix a una clau. ivb
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Vàlida fins a: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Tipus de la clau: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Utilitat de la clau: "
+
+ # XXX No puc unificar les traduccions pq una porta replè i l’altra no! ivb
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Empremta digital .....: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Número de sèrie: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Lliurada per: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Subclau: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "Error en habilitar el protocol CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "Error en crear l’objecte de dades GPGME: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "Error en reservar l’objecte de dades: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "Error en rebobinar l’objecte de dades: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "Error en llegir l’objecte de dades: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "Error en afegir el destinatari «%s»: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "No s’ha trobat la clau secreta «%s»: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "L’especificació de la clau secreta «%s» és ambigua."
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "Error en establir la clau secreta «%s»: %s"
+
+ # PKA és la notació, no la signatura. ivb
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "Error en establir la notació PKA de la signatura: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "Error en xifrar les dades: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "Error en signar les dades: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as no està establerta i «~/.gnupg/gpg.conf» no conté una clau per defecte"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Avís: Una de les claus ha estat revocada.\n"
+
+ # I darrere va la data sense punt. ivb
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Avís: La clau emprada per a crear la signatura expirà en: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Avís: Almenys una de les claus de certificació ha expirat.\n"
+
+ # I darrere va la data sense punt. ivb
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Avís: La signatura expirà en: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "No s’ha pogut verificar perquè manca una clau o certificat.\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "La CRL (llista de certificats revocats) no es troba disponible.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "La CRL (llista de certificats revocats) és massa vella.\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "No s’ha acomplert un requeriment establert per política.\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "S’ha produït un error de sistema."
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "Avís: L’entrada PKA no concorda amb l’adreça del signatari: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "L’adreça del signatari verificada amb PKA és: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "Avís: RES indica que la clau pertanya a la persona esmentada a sobre.\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "Avís: La clau NO PERTANY a la persona esmentada a sobre.\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "Avís: NO és segur que la clau pertanya a la persona esmentada a sobre.\n"
+
+ # Millor amb cometes però no es pot. ivb
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "identificador "
+
+ # No és una frase completa. ivb
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "sense empremta de signatura"
+
+ # Es refereix a una signatura. ivb
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "creada en: "
+
+ # Millor amb cometes però no es pot (per coherència amb l’anterior). ivb
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Error en obtenir informació de la clau amb identificador %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Signatura correcta de:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "Signatura *INCORRECTA* de:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problema, la signatura de:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " expira en: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Inici de la informació de la signatura. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Error: La verificació ha fallat: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Inici de la notació (signatura de: %s). ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Final de la notació. ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4240,7 +4316,7 @@ msgstr ""
+ "[-- Final de la informació de la signatura. --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4249,23 +4325,28 @@ msgstr ""
+ "[-- Error: El desxifratge ha fallat: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Error en importar la clau: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Error: El desxifratge o verificació ha fallat: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "S’ha pogut desxifrar amb èxit el missatge PGP"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Error: La còpia de les dades ha fallat.\n"
+
+ # Aquests texts en majúscules reprodueixen els marcadors dels fitxers PGP,
+ # així que no té molt de sentit mantenir les majúscules en la traducció. ivb
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4273,11 +4354,11 @@ msgstr ""
+ "[-- Inici del missatge PGP. --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Inici del bloc de clau pública PGP. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4285,19 +4366,19 @@ msgstr ""
+ "[-- Inici del missatge PGP signat. --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- Final del missatge PGP. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Final del bloc de clau pública PGP. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- Final del missatge PGP signat. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4305,11 +4386,11 @@ msgstr ""
+ "[-- Error: No s’ha trobat l’inici del missatge PGP. --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Error: No s’ha pogut crear un fitxer temporal. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4317,7 +4398,7 @@ msgstr ""
+ "[-- Les dades següents es troben signades i xifrades amb PGP/MIME: --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4325,24 +4406,20 @@ msgstr ""
+ "[-- Les dades següents es troben xifrades amb PGP/MIME: --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Final de les dades signades i xifrades amb PGP/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Final de les dades xifrades amb PGP/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "S’ha pogut desxifrar amb èxit el missatge PGP"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "No s’ha pogut desxifrar el missatge PGP."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4350,7 +4427,7 @@ msgstr ""
+ "[-- Les dades següents es troben signades amb S/MIME: --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4358,39 +4435,39 @@ msgstr ""
+ "[-- Les dades següents es troben xifrades amb S/MIME: --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Final de les dades signades amb S/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Final de les dades xifrades amb S/MIME. --]\n"
+
+ # Cal mantenir-lo curt (porta al davant «Nom ..................: »). ivb
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[No es mostra l’ID d’usuari (codificació desconeguda).]"
+
+ # Cal mantenir-lo curt (porta al davant «Nom ..................: »). ivb
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[No es mostra l’ID d’usuari (codificació no vàlida).]"
+
+ # Cal mantenir-lo curt (porta al davant «Nom ..................: »). ivb
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[No es mostra l’ID d’usuari (DN desconegut).]"
+
+ # Es refereix a un identificador d’usuari. ivb
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[No és vàlid]"
+
+ # Tipus de certificat, bits de l’algorisme, tipus d’algorisme. ivb
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4399,104 +4476,104 @@ msgstr[1] "%1$s, %3$s de %2$lu bits\n"
+
+ # Capacitats d’una clau. ivb
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "xifratge"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ # Capacitats d’una clau. ivb
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "signatura"
+
+ # Capacitats d’una clau. ivb
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certificació"
+
+ # Subclau. ivb
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revocada]"
+
+ # Subclau. ivb
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Expirada]"
+
+ # Subclau. ivb
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Inhabilitada]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "S’estan recollint les dades…"
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Error en trobar la clau del lliurador: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Error: La cadena de certificació és massa llarga, s’abandona aquí.\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID de la clau: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "Ha fallat gpgme_op_keylist_start(): %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "Ha fallat gpgme_op_keylist_next(): %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Totes les claus concordants estan marcades com a expirades o revocades"
+
+ # Aquest menú no està massa poblat. -- ivb
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Selecciona "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Comprova la clau "
+
+ # Darrere va el patró corresponent. ivb
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Claus PGP i S/MIME que concordem amb"
+
+ # Darrere va el patró corresponent. ivb
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Claus PGP que concordem amb"
+
+ # Darrere va el patró corresponent. ivb
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Claus S/MIME que concorden amb"
+
+ # Darrere va el patró corresponent. ivb
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Claus que concordem amb"
+
+@@ -4505,26 +4582,26 @@ msgstr "Claus que concordem amb"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ # Nom i àlies? ivb
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s «%s»"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "No es pot emprar aquesta clau: es troba expirada, inhabilitada o revocada"
+
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb Aquest ID es troba expirat, inhabilitat o revocat.
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID expirat/inhabilitat/revocat. Voleu realment emprar la clau?"
+@@ -4532,7 +4609,7 @@ msgstr "ID expirat/inhabilitat/revocat. Voleu realment emprar la clau?"
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb Aquest ID no és vàlid.
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "L’ID no és vàlid. Voleu realment emprar la clau?"
+@@ -4540,7 +4617,7 @@ msgstr "L’ID no és vàlid. Voleu realment emprar la clau?"
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb Aquest ID només és lleugerament vàlid.
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "L’ID és lleugerament vàlid. Voleu realment emprar la clau?"
+@@ -4548,29 +4625,29 @@ msgstr "L’ID és lleugerament vàlid. Voleu realment emprar la clau?"
+ # ivb (2002/02/02)
+ # ivb ABREUJAT! (Hei! Hui és 2/2/2!)
+ # ivb Aquest ID té una validesa indefinida.
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "L’ID té una validesa indefinida. Voleu realment emprar la clau?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "S’estan cercant les claus que concorden amb «%s»…"
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Voleu emprar l’ID de clau «%s» per a %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Entreu l’ID de clau per a %s: "
+@@ -4579,15 +4656,15 @@ msgstr "Entreu l’ID de clau per a %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "No s’ha trobat cap clau secreta"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Per favor, entreu l’ID de la clau: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Error en exportar la clau: %s"
+@@ -4595,104 +4672,104 @@ msgstr "Error en exportar la clau: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Clau PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: El protocol OpenPGP no es troba disponible."
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: El protocol CMS no es troba disponible."
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: (s)igna, si(g)na com a, (p)gp, (c)lar, no (o)portunista?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sgpco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (s)igna, si(g)na com a, s/(m)ime, (c)lar, no (o)portunista?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "sgmco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (p)gp, (c)lar, (o)portunista?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (p)gp, (c)lar, (o)portunista
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "xsgapco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, s/(m)ime, (c)lar, (o)portunista?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, s/(m)ime, (c)lar, (o)portunista
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "xsgamco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (p)gp, (c)lar?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (p)gp, (c)lar
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "xsgapc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, s/(m)ime, (c)lar?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, s/(m)ime, (c)lar
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "xsgamc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "No s’ha pogut verificar el remitent."
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "No s’ha pogut endevinar el remitent."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Entreu la frase clau de PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Error: No s’ha pogut crear el subprocés PGP. --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4703,15 +4780,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "El missatge PGP no es troba xifrat"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Error intern. Per favor, informeu d’aquest error."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4719,61 +4796,61 @@ msgstr ""
+ "[-- Error: No s’ha pogut crear el subprocés PGP. --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "El desxifratge ha fallat"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "No s’ha pogut obrir el subprocés PGP."
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "No s’ha pogut invocar PGP."
+
+ # Ull! La mateixa clau que «en línia». ivb
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ # Ull! La mateixa clau que «PGP/MIME». ivb
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "en lín(i)a"
+
+ # Prescindesc de la paraula «format» perquè en reemplaçar-hi les cadenes
+ # següents la línia esdevé massa llarga. ivb
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (s)igna, si(g)na com a, %s, (c)lar, no (o)portunista?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "sgico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (s)igna, si(g)na com a, (c)lar, no (o)portunista?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "sgco"
+
+ # Prescindesc de la paraula «format» perquè en reemplaçar-hi les cadenes
+ # següents la línia esdevé massa llarga. ivb
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, %s, (c)lar, (o)portunista?"
+@@ -4782,20 +4859,20 @@ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, %s, (c)lar, (o)portunis
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "xsgaico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (c)lar, (o)portunista?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (c)lar, (o)portunista
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "xsgaco"
+@@ -4803,7 +4880,7 @@ msgstr "xsgaco"
+ # Prescindesc de la paraula «format» perquè en reemplaçar-hi les cadenes
+ # següents la línia esdevé massa llarga. ivb
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, %s, (c)lar?"
+@@ -4812,54 +4889,54 @@ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, %s, (c)lar?"
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "xsgaic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP: (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (c)lar?"
+
+ # (x)ifra, (s)igna, si(g)na com a, (a)mbdós, (c)lar
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "xsgac"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "S’està recollint la clau PGP…"
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Totes les claus concordants han expirat o estan revocades o inhabilitades"
+
+ # Una adreça.. ivb
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Claus PGP que concorden amb <%s>"
+
+ # Un nom. ivb
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Claus PGP que concordem amb «%s»"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "No s’ha pogut obrir «/dev/null»."
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Clau PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Entreu la frase clau de S/MIME:"
+
+@@ -4868,7 +4945,7 @@ msgstr "Entreu la frase clau de S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Expirat "
+
+@@ -4877,7 +4954,7 @@ msgstr "Expirat "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "No vàlid "
+
+@@ -4886,7 +4963,7 @@ msgstr "No vàlid "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Revocat "
+
+@@ -4897,7 +4974,7 @@ msgstr "Revocat "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Confiat "
+
+@@ -4906,7 +4983,7 @@ msgstr "Confiat "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "No verificat"
+
+@@ -4915,7 +4992,7 @@ msgstr "No verificat"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Verficat "
+
+@@ -4924,11 +5001,11 @@ msgstr "Verficat "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Desconegut "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Certificats S/MIME que concorden amb «%s»"
+@@ -4936,53 +5013,53 @@ msgstr "Certificats S/MIME que concorden amb «%s»"
+ # ivb (2015/08/29)
+ # ivb ABREUJAT!
+ # ivb Aquest ID no és de confiança.
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "L’ID no és de confiança. Voleu realment emprar la clau?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Entreu l’ID de clau: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "No s’ha trobat cap certificat (vàlid) per a %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Error: No s’ha pogut crear el subprocés OpenSSL."
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Etiqueta per al certificat: "
+
+ # Hau! ivb
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "No hi ha fitxer de certificat."
+
+ # Hau! ivb
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "No hi ha bústia."
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL no ha produit cap eixida…"
+
+ # Encara no s’ha signat. ivb
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "No es pot signar: no s’ha indicat cap clau. Empreu «signa com a»."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "No s’ha pogut obrir el subprocés OpenSSL."
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4990,19 +5067,19 @@ msgstr ""
+ "[-- Final de l’eixida d’OpenSSL. --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Error: No s’ha pogut crear el subprocés OpenSSL. --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Les dades següents es troben xifrades amb S/MIME: --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Les dades següents es troben signades amb S/MIME: --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -5010,7 +5087,7 @@ msgstr ""
+ "\n"
+ "[-- Final de les dades xifrades amb S/MIME. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -5019,30 +5096,30 @@ msgstr ""
+ "[-- Final de les dades signades amb S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: (s)igna, xi(f)ra amb, si(g)na com a, (c)lar, no (o)portunista?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "sfgco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (x)ifra, (s)igna, xi(f)ra amb, si(g)na com a, (a)mbdós, (c)lar, (o)portunista?"
+
+ # (x)ifra, (s)igna, xi(f)ra amb, si(g)na com a, (a)mbdós, (c)lar, (o)portunista
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "xsfgaco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME: (x)ifra, (s)igna, xi(f)ra amb, si(g)na com a, (a)mbdós, (c)lar?"
+
+@@ -5050,142 +5127,142 @@ msgstr "S/MIME: (x)ifra, (s)igna, xi(f)ra amb, si(g)na com a, (a)mbdós, (c)lar?
+ # ivb (x)ifra, (s)igna, xi(f)ra amb, si(g)na com a, (a)mbdós, (c)lar
+ # La «f» i la «c» originals s’agafen en el mateix cas en el codi. ivb
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "xsfgac"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Trieu la família d’algorismes: (1) DES, (2) RC2, (3) AES, (c)lar?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) DES triple?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "«%s» no és un camí POP vàlid."
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "El servidor ha tancat la connexió."
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "El servidor SMTP no admet autenticació"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "No hi ha cap autenticador disponible."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "L’autenticació SASL ha fallat"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "S’ha tancat la connexió amb «%s»."
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "S’està recollint la llista de missatges…"
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "S’està comprovant si hi ha missatges nous…"
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "No s’ha pogut escriure en una carpeta temporal: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "S’està connectant amb «%s»…"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "No hi ha res per fer"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Ha fallat stat() sobre «%s»: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "S’estan eliminant missatges del servidor…"
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "S’està entrant…"
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "S’està comprovant si hi ha missatges nous…"
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "«%s» no és un camí POP vàlid."
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5198,7 +5275,7 @@ msgstr ""
+ # Es refereix a l’esquema d’URL. ivb
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "No s’ha pogut interpretar l’enllaç de tipus «mailto:».\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6350,76 +6427,76 @@ msgstr "Mostra o amaga la llista de bústies."
+ msgid "show S/MIME options"
+ msgstr "Mostra les opcions de S/MIME."
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "No es troba disponible en aquest menú"
+
+ # ivb (2001/12/08)
+ # ivb Menú superpoblat: mantenir _molt_ curt!
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "RePàg"
+
+ # ivb (2001/12/08)
+ # ivb Menú superpoblat: mantenir _molt_ curt!
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "AvPàg"
+
+ # ivb (2001/12/08)
+ # ivb Menú superpoblat: mantenir _molt_ curt!
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Adjuncs."
+
+ # ivb (2001/12/08)
+ # ivb Menú superpoblat: mantenir _molt_ curt!
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Segnt."
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "El final del missatge ja és visible"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "L’inici del missatge ja és visible"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Ja s’està mostrant l’ajuda"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "No hi ha més text citat"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "No hi ha més text sense citar després del text citat"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Error a l’expressió: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "L’expressió és buida."
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "No s’ha definit cap ordre de consulta"
+@@ -6427,121 +6504,121 @@ msgstr "No s’ha definit cap ordre de consulta"
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb S’està invocant l’ordre de visualització automàtica: %s
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Ordre de visualització automàtica: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "El dia del mes no és vàlid: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "El mes no és vàlid: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "La data relativa no és vàlida: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "No hi ha cap missatge no llegit."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Error en obrir la bústia."
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Error en obrir la bústia."
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "No s’ha pogut obrir «/dev/null»."
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "Error al patró a: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "Manca el patró: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "Els parèntesis no estan aparellats: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: El modificador de patró no és vàlid."
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: No es permet en aquest mode."
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "Manca un paràmetre."
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "El patró és buit."
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "Error: L’operació %d no és coneguda (informeu d’aquest error)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "S’està compilant el patró de cerca…"
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "S’està executant l’ordre sobre els missatges concordants…"
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "No hi ha cap missatge que concorde amb el criteri"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "S’està cercant…"
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "La cerca ha arribat al final sense trobar cap concordança."
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "La cerca ha arribat a l’inici sense trobar cap concordança."
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "S’ha interromput la cerca"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "El servidor no permet l’ordre «TOP»"
+
+@@ -6549,7 +6626,7 @@ msgstr "El servidor no permet l’ordre «TOP»"
+ msgid "Can't write header to temporary file"
+ msgstr "No s’ha pogut escriure la capçalera en un fitxer temporal."
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "El servidor no permet l’ordre «UIDL»"
+
+@@ -6564,7 +6641,7 @@ msgstr[1] "S’han perdut %d missatges. Proveu de reobrir la bústia."
+ msgid "POP host is not defined"
+ msgstr "No s’ha definit el servidor POP (pop_host)"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "«%s» no és un camí POP vàlid."
+@@ -6600,130 +6677,130 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [llegits %d de %d missatges]"
+ msgstr[1] "%s [llegits %d de %d missatges]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "S’està recollint la llista de missatges…"
+
+ # No els seleccionats, sinó els marcats per a esborrar. ivb
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "S’estan marcant els missatges per a esborrar…"
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "No s’ha pogut escriure el missatge en un fitxer temporal."
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "S’està autenticant (SASL)…"
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "La marca horària de POP no és vàlida."
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "S’està autenticant (APOP)…"
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "L’autenticació APOP ha fallat"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "El servidor no permet l’ordre «USER»"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "L’autenticació ha fallat."
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "L’URL de POP no és vàlid: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "No s’han pogut deixar els missatges al servidor"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Error en connectar amb el servidor: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "S’està tancant la connexió amb el servidor POP…"
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "S’estan verificant els índexs dels missatges…"
+
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb S’ha perdut la connexió. Voleu reconnectar amb el servidor POP?
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "S’ha perdut la connexió. Reconnectar amb el servidor POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Missatges posposats"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "No hi ha cap missatge posposat"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "La capçalera S/MIME no és permesa."
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "La capçalera criptogràfica no és permesa."
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "S’està desxifrant el missatge…"
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nova consulta"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Crea àlies"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "S’està esperant una resposta…"
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Consulta: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Consulta de «%s»"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "No s’ha definit cap ordre de consulta"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Redirigeix"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Imprimeix"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "S’està desant…"
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6733,26 +6810,26 @@ msgstr[1] "S’ha desat l’adjunció"
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb AVÍS. Esteu a punt de sobreescriure «%s»; voleu continuar?
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "AVÍS. Aneu a sobreescriure «%s»; voleu continuar?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "S’ha filtrat l’adjunció"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtra amb: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Redirigeix a: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Es desconeix com imprimir adjuncions de tipus «%s»."
+@@ -6760,56 +6837,56 @@ msgstr "Es desconeix com imprimir adjuncions de tipus «%s»."
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Voleu imprimir les adjuncions seleccionades?"
+ msgstr[1] "Voleu imprimir les adjuncions seleccionades?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Voleu imprimir l’adjunció?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "No es permeten els canvis estructurals als adjunts desxifrats."
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "No s’ha pogut desxifrar el missatge xifrat."
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Adjuncions"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "No hi ha cap subpart a mostrar."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "No es poden esborrar les adjuncions d’un servidor POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "No es poden esborrar les adjuncions d’un servidor POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "No es poden esborrar les adjuncions d’un missatge xifrat"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Esborrar les adjuncions d’un missatge xifrat pot invalidar-ne la signatura"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Només es poden esborrar les adjuncions dels missatges «multipart»"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Només es poden redirigir parts de tipus «message/rfc822»"
+
+@@ -6849,7 +6926,7 @@ msgstr "No s’ha pogut crear «%s»"
+ msgid "Can't find any tagged messages"
+ msgstr "No s’ha trobat cap missatge marcat"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "No s’ha trobat cap llista de correu."
+
+@@ -6866,69 +6943,69 @@ msgstr "Encapsular amb MIME les adjuncions marcades no descodificables?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Només es pot redactar al remitent d’una part de tipus «message/rfc822»."
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Afegeix"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Insereix"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Accepta"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+ # ivb (2001/12/07)
+ # ivb En aquest cas «mixmaster» és un programa.
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "No s’ha pogut obtenir «type2.list» de «mixmaster»."
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Seleccioneu una cadena de redistribuïdors"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Error: No es pot emprar «%s» com a redistribuïdor final d’una cadena"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Les cadenes de Mixmaster estan limitades a %d elements"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "La cadena de redistribuïdors ja és buida"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Vos trobeu al primer element de la cadena"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Vos trobeu al darrer element de la cadena"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "No es poden emprar les capçaleres «Cc» i «Bcc» amb Mixmaster"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Per favor, establiu un valor adequat per a «hostname» quan empreu Mixmaster."
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Error en enviar el missatge, el procés fill ha eixit amb codi %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Error en enviar el missatge"
+
+@@ -6961,43 +7038,43 @@ msgstr "Voleu reenviar també les adjuncions?"
+ # ivb El primer «%s» és una adreça de correu i el segon potser «,...».
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Voleu escriure una resposta a %s%s?"
+
+ # ivb (2001/12/07)
+ # ivb El primer «%s» és una adreça de correu i el segon potser «,...».
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Voleu escriure un seguiment a %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Voleu incloure el missatge a la resposta?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "S’hi està incloent el missatge citat…"
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "No s’han pogut incloure tots els missatges sol·licitats."
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Voleu reenviar com a adjunció?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "S’està preparant el missatge a reenviar…"
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "No es permet la còpia a una bústia IMAP en el mode per lots."
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Voleu desar les adjuncions a la bústia de còpia?"
+
+@@ -7007,7 +7084,7 @@ msgstr "Voleu desar les adjuncions a la bústia de còpia?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ #, fuzzy
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "La còpia a bústia ha fallat; (r)eintentar, (c)anviar de bústia, (s)altar? "
+@@ -7015,191 +7092,191 @@ msgstr "La còpia a bústia ha fallat; (r)eintentar, (c)anviar de bústia, (s)al
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rcs"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Còpia a bústia"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Voleu recuperar un missatge posposat?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Voleu editar el missatge a reenviar?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Voleu avortar el missatge no modificat?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "S’avorta el missatge no modificat"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "No s’ha enviat el missatge"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "S’ha posposat el missatge"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "No hi ha assumpte; voleu avortar l’enviament?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "No s’ha indicat l’assumpte"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "No s’ha indicat l’assumpte"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "Edita la codificació de transferència d’una adjunció."
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "S’està enviant el missatge…"
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "No s’ha pogut enviar el missatge"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "S’està enviant en segon pla"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "S’ha enviat el missatge"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "No s’ha trobat el paràmetre «boundary» (informeu d’aquest error)."
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "«%s» ja no existeix."
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "«%s» no és un fitxer ordinari"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "No s’ha pogut enviar el missatge."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "No s’ha pogut obrir «%s»."
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail ha d’estar establerta per a poder enviar correu"
+
+ # ivb (2001/12/08)
+ # ivb ABREUJAT!
+ # ivb Error en enviar el missatge, el procés fill ha exit amb codi %d (%s).
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Error en enviament, el fill isqué amb codi %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Eixida del procés de repartiment"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "En preparar «Resent-From»: L’IDN no és vàlid: %s"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "La sessió SMTP fallat: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "La sessió SMTP fallat: no s’ha pogut obrir «%s»"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "L’URL d’SMTP no és vàlid: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "El mètode d’autenticació %s per a SMTP necessita SASL."
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "L’autenticació %s ha fallat, es provarà amb el mètode següent."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "L’autenticació GSSAPI ha fallat"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "El servidor SMTP no admet autenticació."
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "No s’ha indicat el remitent (From)."
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "La sessió SMTP ha fallat: error de lectura"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "La sessió SMTP ha fallat: error d’escriptura"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "La resposta del servidor no és vàlida."
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "S’està ordenant la bústia…"
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "No s’ha pogut trobar la funció d’ordenació (informeu d’aquest error)."
+
+@@ -7268,11 +7345,50 @@ msgstr ""
+ "detalls. NeoMutt és programari lliure, i podeu, si voleu, redistribuir‐lo sota\n"
+ "certes condicions; empreu «mutt -vv» per a obtenir‐ne més detalls.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opcions de compilació:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opcions de compilació:"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Error en crear la clau d’Autocrypt: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(c)rear una nova clau PGP, o (s)eleccionar‐ne una d’existent? "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: (x)ifra, en (c)lar, (a)utomàtic? "
++
++#~ msgid "$send_multipart_alternative_filter is not set"
++#~ msgstr "$send_multipart_alternative_filter no està establerta"
++
++#~ msgid "Generate multipart/alternative content?"
++#~ msgstr "Voleu generar contingut «multipart/alternative»?"
++
++#~ msgid "Missing mime type from output of \"%s\"!"
++#~ msgstr "Manca el tipus MIME a l’eixida de «%s»"
++
++#~ msgid "Missing blank line separator from output of \"%s\"!"
++#~ msgstr "Manca la línia en blanc separadora a l’eixida de «%s»"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation"
++#~ msgstr "$send_multipart_alternative_filter no permet generar tipus «multipart»"
++
++#~ msgid "view multipart/alternative"
++#~ msgstr "Mostra la part «multipart/alternative»"
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "Mostra la part «multipart/alternative» com a text"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "Mostra la part «multipart/alternative» emprant «mailcap»"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "Selecciona una nova bústia del llistat"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "Selecciona una nova bústia en mode de només lectura del llistat"
+diff --git a/po/cs.po b/po/cs.po
+index 9cbf6eecf..80e4cc282 100644
+--- a/po/cs.po
++++ b/po/cs.po
+@@ -19,7 +19,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2018-03-06 15:18+0100\n"
+ "Last-Translator: David Sterba <dsterba@suse.cz>\n"
+ "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
+@@ -29,16 +29,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(o)dmítnout, akceptovat pouze (t)eď, akceptovat (v)ždy, pře(s)kočit"
++
++msgid "roas"
++msgstr "otvs"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(o)dmítnout, akceptovat pouze (t)eď, akceptovat (v)ždy "
++
++msgid "roa"
++msgstr "otv"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(o)dmítnout, akceptovat pouze (t)eď, pře(s)kočit"
++
++msgid "ros"
++msgstr "ots"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(o)dmítnout, akceptovat pouze (t)eď "
++
++msgid "ro"
++msgstr "ot"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Konec"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Smazat"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Obnovit"
+
+@@ -46,18 +70,18 @@ msgstr "Obnovit"
+ msgid "Select"
+ msgstr "Volba"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Nápověda"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Nejsou definovány žádné přezdívky"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Přezdívky"
+
+@@ -66,51 +90,51 @@ msgstr "Přezdívky"
+ msgid "Alias as: "
+ msgstr "Přezdívat jako: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Pro toto jméno je již přezdívka definována"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Pozor: Takto pojmenovaný alias nemusí fungovat, mám to napravit?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresa: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Chybné IDN: „%s“"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Vlastní jméno: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Přijmout?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Uložit jako: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Chyba při čtení souboru s přezdívkami"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Chyba během přidávání přezdívky"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Přezdívka zavedena"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Chyba při pohybu v souboru s přezdívkami"
+
+@@ -119,7 +143,7 @@ msgstr "Chyba při pohybu v souboru s přezdívkami"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s neexistuje. Mám ho vytvořit?"
+@@ -128,8 +152,8 @@ msgstr "%s neexistuje. Mám ho vytvořit?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "%s nelze vytvořit: %s"
+@@ -139,7 +163,7 @@ msgstr "%s nelze vytvořit: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Vytvořit prvotní autocrypt účet?"
+
+@@ -148,7 +172,7 @@ msgstr "Vytvořit prvotní autocrypt účet?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Adresa autocrypt účtu: "
+
+@@ -157,7 +181,7 @@ msgstr "Adresa autocrypt účtu: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Prosím zadejte jednu emailovou adresu"
+
+@@ -166,7 +190,7 @@ msgstr "Prosím zadejte jednu emailovou adresu"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Tato adresa již má autocrypt účet"
+
+@@ -178,14 +202,14 @@ msgstr "Tato adresa již má autocrypt účet"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Preferovat šifrovaní?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Vytvoření autocrypt účtu proběhlo v pořádku"
+
+@@ -193,7 +217,7 @@ msgstr "Vytvoření autocrypt účtu proběhlo v pořádku"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Vytvoření autocrypt účtu přerušeno"
+
+@@ -202,7 +226,7 @@ msgstr "Vytvoření autocrypt účtu přerušeno"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Nebyl nalezen žádný (platný) klíč pro %s"
+@@ -214,12 +238,12 @@ msgstr "Nebyl nalezen žádný (platný) klíč pro %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Prohledat schránku na autocrypt hlavičky?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Prohledat schránku"
+
+@@ -230,21 +254,21 @@ msgstr "Prohledat schránku"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Prohledat další schránku na autocrypt hlavičky?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Vytvořit"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Smazat"
+
+@@ -252,9 +276,9 @@ msgstr "Smazat"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Prep akt"
+
+@@ -262,17 +286,17 @@ msgstr "Prep akt"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Pref šif"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "preferovat šifrování"
+
+@@ -281,7 +305,7 @@ msgstr "preferovat šifrování"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "šifrovat ručně"
+
+@@ -289,7 +313,7 @@ msgstr "šifrovat ručně"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "aktivní"
+
+@@ -297,12 +321,12 @@ msgstr "aktivní"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "neaktivní"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Účty autocrypt"
+
+@@ -310,12 +334,12 @@ msgstr "Účty autocrypt"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Chyba při změně nastavení účtu"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Skutečně chcete smazat účet „%s“?"
+@@ -333,7 +357,7 @@ msgstr "Skutečně chcete smazat účet „%s“?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Nelze otevřít databázi autocrypt %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "chyba při vytváření kontextu pro gpgme: %s"
+@@ -406,276 +430,227 @@ msgstr "Verze databáze autocrypt je příliš nová"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Cache se zprávami %s není adresářem"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Změnit adresář"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Jít na"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maska"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Seznam"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Přihlásit"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Odhlásit"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Označit za přečtené"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s není adresářem"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Diskusní skupiny přihlášeny"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Diskusní skupiny na serveru [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Schránky [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Přihlášená schránka [%s], Souborová maska: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Adresář [%s], Souborová maska: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Adresář nelze připojit"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Souborové masce nevyhovuje žádný soubor."
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Vytváření funguje pouze u IMAP schránek."
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Přejmenování funguje pouze u IMAP schránek."
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Mazání funguje pouze u IMAP schránek."
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Nelze smazat zvolenou schránku"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Skutečně chcete smazat schránku „%s“?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Schránka byla smazána"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Odstranění schránky selhalo"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Schránka nebyla smazána"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Nastavit pracovní adresář na: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Chyba při načítání adresáře"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Souborová maska: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Obrácené řazení dle (d)ata, (p)ísmena, (v)elikosti či (n)eřadit?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Řadit dle (d)ata, (p)ísmena, (v)elikosti, popi(s)u, poč(t)u, počtu n(o)vých či (n)eřadit?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dpvston"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nové jméno souboru: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Adresář nelze zobrazit"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Chyba při zobrazování souboru"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Přihlásit k odběru zpráv dle vzoru: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Odhlásit odběr zpráv dle vzoru: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Masce nevyhovují žádné diskusní skupiny"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "Barvu %s terminál nepodporuje."
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "Barva %s není definována."
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "Objekt %s není definován"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "příliš málo argumentů pro %s"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "Atribut %s není definován."
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: příliš mnoho argumentů"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "výchozí barvy nejsou podporovány"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr "Maximální úroveň citací je %d"
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s neplatné číslo: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Ověřit podpis?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Dočasný soubor nelze vytvořit"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Nelze vytvořit zobrazovací filtr"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Nelze kopírovat zprávu"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME podpis byl úspěšně ověřen"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Vlastník S/MIME certifikátu není totožný s odesílatelem zprávy"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Pozor: Část této zprávy nebyla podepsána"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME podpis NELZE ověřit"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP podpis byl úspěšně ověřen"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP podpis NELZE ověřit"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Chyba při běhu programu „%s“"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Příkaz: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Pozor: zpráva neobsahuje hlavičku From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Zaslat kopii zprávy na: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Zaslat kopii označených zpráv na: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Chyba při zpracování adresy"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -683,48 +658,48 @@ msgstr[0] "Zaslat kopii zprávy na %s?"
+ msgstr[1] "Zaslat kopii zpráv na %s?"
+ msgstr[2] "Zaslat kopii zpráv na %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Kopie zprávy nebyla odeslána"
+ msgstr[1] "Kopie zpráv nebyly odeslány"
+ msgstr[2] "Kopie zpráv nebyly odeslány"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Kopie zprávy byla odeslána"
+ msgstr[1] "Kopie zpráv byly odeslány"
+ msgstr[2] "Kopie zpráv byly odeslány"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Filtrovací proces nelze vytvořit"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Poslat rourou do příkazu: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Není definován žádný příkaz pro tisk"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Vytisknout zprávu?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Vytisknout označené zprávy?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Zpráva byla vytisknuta"
+ msgstr[1] "Zprávy byly vytisknuty"
+ msgstr[2] "Zprávy byly vytisknuty"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Zprávu nelze vytisknout"
+@@ -732,149 +707,313 @@ msgstr[1] "Zprávy nelze vytisknout"
+ msgstr[2] "Zprávy nelze vytisknout"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Řadit opačně (d)at/(o)d/pří(j)/(v)ěc/(p)ro/v(l)ákno/(n)eseř/veli(k)/(s)kóre/sp(a)m/štít(e)k?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Řadit (d)at/(o)d/pří(j)/(v)ěc/(p)ro/v(l)ákno/(n)eseř/veli(k)/(s)kóre/sp(a)m/štít(e)k?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dojvplnksae"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Příkaz pro shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Dekódovat - uložit do schránky"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekódovat - uložit označené do schránky"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dešifrovat - uložit do schránky"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dešifrovat - uložit označené do schránky"
+
+ # XXX: Missing space before %s is not a typo
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Uložit do schránky"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Uložit označené do schránky"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekódovat - zkopírovat do schránky"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekódovat - zkopírovat označené do schránky"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dešifrovat - zkopírovat do schránky"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dešifrovat - zkopírovat označené do schránky"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Zkopírovat do schránky"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Zkopírovat označené do schránky"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopíruji do %s…"
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Položka „Content-Type“ je příliš dlouhá"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Převést při odesílání na %s?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Položka „Content-Type“ změněna na %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Znaková sada změněna na %s; nepřevádím"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Znaková sada změněna na %s; převádím"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "příliš málo argumentů pro %s"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: chybí jméno skupiny"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "příliš málo argumentů"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Chyba: nelze sestavit cestu k „%s“"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Chyba: zacyklení při vkládání konfiguračního souboru „%s“"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Chyba v %s na řádku %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Varování v %s na řádku %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: chyby v %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: čtení přerušeno kvůli velikému množství chyb v %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d varování v %s"
++msgstr[1] "source: %d varování v %s"
++msgstr[2] "source: %d varování v %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "přezdívka: žádná adresa"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Pozor: Neplatné IDN „%s“ v přezdívce „%s“"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "přílohy: chybí dispozice"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Současné nastavení příloh:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "přílohy: neplatná dispozice"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: příliš mnoho argumentů"
++
++# "%sgroup" is literal
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: chybí -rx nebo -addr"
++
++# "%sgroup" is literal
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: pozor: chybné IDN „%s“"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Chyba: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "neplatná hlavička"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "Proměnná %s není známa."
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s není nastaveno"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: chyba na %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source: soubor %s nelze vložit"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: vzoru nic nevyhovuje"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: vzoru nic nevyhovuje"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "%s přihlášeno"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Nelze přihlásit do %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Složka nebyla zadána"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "nepřílohy: chybí dispozice"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "nepřílohy: neplatná dispozice"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s odhlášeno"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Nelze odhlásit odběr %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Nejsou žádné přílohy"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Od: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Komu: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Kopie: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Slepá kopie: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Předmět: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Opověd na: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Kopie do souboru: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix(Master): "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Zabezpečení: "
+
+@@ -885,76 +1024,76 @@ msgstr "Zabezpečení: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Podepsat jako: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Diskusní sk.:"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Followup-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Odeslat"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Zrušit"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Komu"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopie"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Věc"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Přiložit soubor"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Popis"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Skupiny"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Vypnuto"
+
+ # Security: None - Zabezpečení: Žádné
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Žádné"
+
+@@ -962,7 +1101,7 @@ msgstr "Žádné"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Nedoporučeno"
+
+@@ -970,14 +1109,14 @@ msgstr "Nedoporučeno"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "K dispozici"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Ano"
+
+@@ -987,7 +1126,7 @@ msgstr "Ano"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: š(i)frovat, vy(m)azat, (a)utomaticky?"
+
+@@ -995,52 +1134,52 @@ msgstr "Autocrypt: š(i)frovat, vy(m)azat, (a)utomaticky?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "ima"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Není podporováno"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Podepsat, zašifrovat"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Zašifrovat"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Podepsat"
+
+ # Security: None - Zabezpečení: Žádné
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Žádné"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (inline PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (příležitostné šifrování)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<výchozí>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Zašifrovat pomocí: "
+
+@@ -1049,11 +1188,11 @@ msgstr "Zašifrovat pomocí: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Doporučení: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<řetěz nedefinován>"
+
+@@ -1064,7 +1203,7 @@ msgstr "<řetěz nedefinován>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Příloha [#%d] %s již neexistuje"
+@@ -1076,233 +1215,352 @@ msgstr "Příloha [#%d] %s již neexistuje"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Změna v příloze [#%d]. Změnit kódování pro %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Přílohy"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Nemůžete smazat jedinou přílohu"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Neplatné IDN v „%s“: „%s“"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Příloha je již na začátku"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Tato základní součást nemůže být přesunuta"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Příloha je již na konci"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Seskupování alternativ vyžaduje alespoň 2 označené zprávy"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Seskupování vícejazyčných vyžaduje alespoň 2 označené zprávy"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Ne všechny části mají nastaveno „Content-Language“, pokračovat?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Neodesílám tuto zprávu"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Připojuji zvolený soubor…"
+ msgstr[1] "Připojuji zvolené soubory…"
+ msgstr[2] "Připojuji zvolené soubory…"
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s nelze připojit"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Otevřít schránku, z níž se připojí zpráva"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Otevřít diskusní skupinu, z níž se připojí zpráva"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Schránku %s nelze otevřít"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "V této složce nejsou žádné zprávy"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Označte zprávy, které chcete připojit"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Nelze připojit"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Překódování se týká pouze textových příloh"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Aktuální příloha nebude převedena"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Aktuální příloha bude převedena"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Prázdný „Content-Language“"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Neplatné kódování"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Uložit kopii této zprávy?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Poslat přílohu pod názvem: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Přejmenovat na: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Chyba při volání funkce stat pro %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nový soubor: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Položka „Content-Type“ je tvaru třída/podtřída"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Hodnota %s položky „Content-Type“ je neznámá."
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Soubor %s nelze vytvořit"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Vytvoření přílohy se nezdařilo."
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Uložit zprávu do odložených?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Uložit zprávu do schránky"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Ukládám zprávu do %s…"
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Zpráva uložena"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Není nakonfigurováno a přeloženo s podporou PGP"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "Je aktivní S/MIME, zrušit jej a pokračovat?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Není nakonfigurováno a přeloženo s podporou S/MIME"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "Je aktivní PGP, zrušit jej a pokračovat?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Bez háčku append-hook nebo close-hook nelze připojit: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Schránku nelze zamknout"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Dekomprimuje se %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Obsah komprimovaného souboru nelze určit"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Pro schránku typu %d nelze nalézt ovladač"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Kompresní příkaz selhal: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "U tohoto druhu schránky není připojování podporováno"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Bez háčku close-hook nelze komprimovaný soubor synchronizovat"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Komprimuje se %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Komprimuje se a připojuje k %s…"
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Chyba. Zachovávám dočasný soubor %s."
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Chybné relativní datum: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Chybné relativní datum: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%s neplatné číslo: %s"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Neplatná hodnota přepínače %s: „%ld“"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Neplatný měsíc: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Volba %s nemůže být nastavena z pageru"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "Volba %s nemůže být nastavena z pageru"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%s neplatné číslo: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%s neplatné číslo: %s"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Chybné relativní datum: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Neplatná hodnota přepínače %s: „%ld“"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Chyba: pro -d je „%s“ neplatná hodnota"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "Proměnná %s není známa."
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Chybné relativní datum: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Chybné relativní datum: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Uživatelské jméno na %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Heslo pro %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "Není definován příkaz pro obnovení OAUTH"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Nezdařilo se provést příkaz obnovení"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Příkaz vrátil prázdný řetězec"
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1323,7 +1581,7 @@ msgstr "Připojuji se k %s…"
+ msgid "Could not connect to %s (%s)"
+ msgstr "Spojení s %s nelze navázat (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "neznámá chyba"
+
+@@ -1337,23 +1595,23 @@ msgstr "Chyba při komunikaci s %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Spojení s %s přerušeno"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Neznámý SASL profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Chyba při alokování SASL spojení"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Chyba při nastavování bezpečnostních vlastností SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Chyba při nastavování úrovně zabezpečení vnějšího SASL mechanismu"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Chyba při nastavování jména uživatele vnějšího SASL mechanismu"
+
+@@ -1366,132 +1624,108 @@ msgstr "Příkaz před spojením selhal"
+ msgid "Connection to %s closed"
+ msgstr "Spojení s %s uzavřeno"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Připravuji zdroj náhodných dat: %s…"
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s má příliš volná přístupová práva"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL vypnuto kvůli nedostatku entropie"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Neznámý"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[nelze spočítat]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[neplatné datum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Certifikát serveru není zatím platný"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Platnost certifikátu serveru vypršela."
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Nemohu získat dostatek náhodných dat"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "nelze zjistit, na čí jméno byl certifikát vydán"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "nelze získat obecné jméno (CN) certifikátu"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "vlastník certifikátu není totožný s názvem stroje %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Tento certifikát patří:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Tento certifikát vydal:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Tento certifikát platí:"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " od %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " do %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Otisk SHA1 klíče: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "Otisk SHA256 klíče: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr "Kontrola SSL certifikátu (certifikát %zu z %zu v řetězu)"
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "otvs"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(o)dmítnout, akceptovat pouze (t)eď, akceptovat (v)ždy, pře(s)kočit"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(o)dmítnout, akceptovat pouze (t)eď, akceptovat (v)ždy "
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(o)dmítnout, akceptovat pouze (t)eď, pře(s)kočit"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(o)dmítnout, akceptovat pouze (t)eď "
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr "Kontrola SSL certifikátu (certifikát %zu z %zu v řetězu)"
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Ukončit "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Varování: Certifikát nelze uložit"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certifikát uložen"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Kontrola certifikátu stroje selhala: %s"
+@@ -1499,15 +1733,15 @@ msgstr "Kontrola certifikátu stroje selhala: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Varování: nepodařilo se nastavit TLS SNI jméno stroje"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O chyba"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "Chyba SSL: %s"
+@@ -1515,89 +1749,73 @@ msgstr "Chyba SSL: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Nelze vytvořit kontext SSL"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Varování: chyba při zapínání ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Certifikát od serveru nelze získat"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Chyba při ověřování certifikátu (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certifikát není typu X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Chyba při inicializaci certifikačních údajů GNU TLS"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Chyba při zpracování certifikačních údajů"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "POZOR: Certifikát serveru není zatím platný"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "POZOR: Platnost certifikátu serveru vypršela."
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "POZOR: Certifikátu serveru byl odvolán"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "POZOR: Jméno serveru se neshoduje s jménem v certifikátu"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "POZOR: Certifikát serveru nebyl podepsán certifikační autoritou"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Pozor: Certifikát serveru byl podepsán pomocí nebezpečného algoritmu"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "otv"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ot"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Všechny dostupné protokoly pro TLS/SSL byly zakázány"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Explicitní výběr šifrovacích algoritmů pomocí $ssl_ciphers není podporován"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS spojení pomocí %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Chyba: TLS socket není otevřen"
+
+@@ -1616,7 +1834,7 @@ msgstr "Chyba při komunikaci tunelem s %s (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunel do %s vrátil chybu %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1624,31 +1842,11 @@ msgstr[0] ""
+ msgstr[1] ""
+ msgstr[2] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Pro zprávu není k dispozici žádný dešifrovací nástroj"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ano"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ne"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Ukončit NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Stiskněte libovolnou klávesu…"
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " („?“ pro seznam): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1670,7 +1868,7 @@ msgstr ""
+ "~M zprávy stejné jako ~m a navíc vloží i hlavičky zpráv\n"
+ "~p vytiskne zprávu\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1692,20 +1890,20 @@ msgstr ""
+ "~? vypíše tuto nápovědu\n"
+ ". pokud je tento znak na řádce samotný, znamená ukončení vstupu\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "Číslo zprávy (%d) je neplatné.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Zprávu ukončíte zapsáním samotného znaku „.“ na novou řádku)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Žádná schránka.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Zpráva obsahuje:\n"
+
+@@ -1713,19 +1911,19 @@ msgstr "Zpráva obsahuje:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(pokračovat)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "Chybí jméno souboru.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Zpráva neobsahuje žádné řádky.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "Příkaz %s je neznámý (~? pro nápovědu)\n"
+@@ -1772,19 +1970,73 @@ msgstr "Ke složce nelze připojit: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Zpráva o více částech nemá určeny hranice"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Vlákna nejsou podporována"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Nastavit příznak"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Vypnout příznak"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "Barvu %s terminál nepodporuje."
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "Barva %s není definována."
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "Objekt %s není definován"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "Atribut %s není definován."
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "výchozí barvy nejsou podporovány"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr "Maximální úroveň citací je %d"
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s neplatné číslo: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ano"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ne"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Ukončit NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Stiskněte libovolnou klávesu…"
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " („?“ pro seznam): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1805,23 +2057,23 @@ msgstr "[-- Zobrazuji automaticky pomocí %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Vyvolávám příkaz %s pro automatické zobrazování"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Filtr nelze vytvořit"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- %s nelze spustit --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Automaticky zobrazuji standardní chybový výstup %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Chyba: typ „message/external-body“ nemá parametr „access-type“ --]\n"
+
+@@ -1840,7 +2092,7 @@ msgstr "[-- Chyba: typ „message/external-body“ nemá parametr „access-type
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1872,7 +2124,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1887,7 +2139,7 @@ msgstr[2] "[-- Tato příloha typu „%s/%s“ (o velikosti v bajtech: %s) byla
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1898,12 +2150,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Tato příloha typu „%s/%s“ byla smazána --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- jméno: %s --]\n"
+@@ -1911,7 +2163,7 @@ msgstr "[-- jméno: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1926,7 +2178,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1936,91 +2188,91 @@ msgstr ""
+ "[-- a udaná hodnota parametru „access-type %s“ --]\n"
+ "[-- není podporována --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Chyba: Žádnou z částí „Multipart/Alternative“ nelze zobrazit --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Příloha #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Příloha #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Jedna nebo více část této zprávy nemohly být zobrazeny."
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "'memory stream' nelze otevřít"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Dočasný soubor nelze otevřít"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "chyba pří opakovaném otevření 'memory stream'u"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Chyba: typ „multipart/signed“ bez informace o protokolu"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Toto je příloha (pro zobrazení této části použijte „%s“) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- Typ „%s/%s“ není podporován (pro zobrazení této části použijte „%s“) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Toto je příloha (je třeba svázat funkci „view-attachments“ s nějakou klávesou) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Typ „%s/%s“ není podporován (je třeba svázat funkci „view-attachments“ s nějakou klávesou) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Toto je příloha --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- Typ „%s/%s“ není podporován --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "CHYBA: ohlaste, prosím, tuto chybu"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<NEZNÁMÝ>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Obecně platné:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Nesvázané funkce:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Nápověda pro %s"
+@@ -2037,41 +2289,41 @@ msgstr "zkratka pro schránku expandována na prázdný regulární výraz"
+ msgid "badly formatted command string"
+ msgstr "špatně utvořený řetězec s příkazem"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: unhook * nelze provést z jiného háčku"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: neznámý typ háčku: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s nelze z %s smazat"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "menu %s neexistuje"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: žádné zkratky pro toto menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: žádné makro pro toto menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Dočasný soubor %s nelze vytvořit"
+@@ -2108,28 +2360,28 @@ msgstr "GSSAPI ověření se nezdařilo"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN autentizace je na tomto serveru zakázána"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Probíhá přihlašování…"
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Přihlášení se nezdařilo"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Ověřuji (OAUTHBEARER)…"
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER ověření se nezdařilo."
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Přihlašuji (%s)…"
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL autentizace se nezdařila"
+
+@@ -2176,73 +2428,63 @@ msgstr "Přejmenování selhalo: %s"
+ msgid "Mailbox renamed"
+ msgstr "Schránka přejmenována"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Schránka %s@%s uzavřena"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Vypršel časový limit spojení k %s"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Tento IMAP server je zastaralý. NeoMutt s ním nebude fungovat."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Hledám v hlavičkách bez udání položky: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Vyhledávání na straně serveru není podporováno: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Příkaz CREATE selhal: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Končím spojení s %s…"
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Bezpečné spojení přes TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Nelze navázat TLS spojení"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Šifrované spojení není k dispozici"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Přihlašuji %s…"
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Odhlašuji %s…"
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s přihlášeno"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s odhlášeno"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2250,16 +2492,16 @@ msgstr[0] "Kopíruji zprávu (%d) do %s…"
+ msgstr[1] "Kopíruji zprávy (%d) do %s…"
+ msgstr[2] "Kopíruji zprávy (%d) do %s…"
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Vytvořit %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Příkaz EXPUNGE se nezdařil."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2269,7 +2511,7 @@ msgstr[2] "Označuji %d zpráv ke smazání…"
+
+ # Označuji %d zprávu ke smazání…
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2277,36 +2519,36 @@ msgstr[0] "Ukládám změněnou zprávu… [%d/%d]"
+ msgstr[1] "Ukládám změněné zprávy… [%d/%d]"
+ msgstr[2] "Ukládám změněné zprávy… [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Došlo k chybě při ukládání příznaků. Přesto uzavřít?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Chyba při ukládání příznaků"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Odstraňuji zprávy ze serveru…"
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "při volání imap_sync_mailbox: EXPUNGE selhalo"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Volím %s…"
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Chyba při otevírání schránky"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP server nepodporuje vlastní příznaky"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Neplatné IMAP příznaky"
+
+@@ -2316,7 +2558,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Přerušit stahování a zavřít schránku?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Paměť vyčerpána"
+
+@@ -2334,7 +2576,7 @@ msgstr "Stahuji příznaky zpráv…"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Z IMAP serveru této verze nelze stahovat hlavičky"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Stahuji hlavičky zpráv…"
+
+@@ -2347,152 +2589,152 @@ msgstr "Nahrávám zprávu na server…"
+ msgid "Copying message %d to %s..."
+ msgstr "Kopíruji zprávu %d do %s…"
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Stahuji zprávu…"
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Index zpráv je chybný. Zkuste schránku znovu otevřít."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Pokračovat?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Konec"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Uložit"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Psát"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Odepsat"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Skupině"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Poslat"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Odepsat"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Žádná schránka není otevřena"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Nejsou žádné zprávy"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Žádné viditelné zprávy"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Ze schránky je možné pouze číst"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "V režimu přikládání zpráv není tato funkce povolena"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Operace je v rozporu s ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Schránka je určena pouze pro čtení, zápis nelze zapnout"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Změny obsahu složky budou uloženy po jejím uzavření"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Změny obsahu složky nebudou uloženy"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s není schránkou"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Obsah schránky byl změněn zvenčí. Atributy mohou být nesprávné."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "V této schránce je nová pošta"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Obsah schránky byl změněn zvenčí"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Žádné zprávy nejsou označeny"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Není co dělat"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Zadejte Message-Id: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Článek neobsahuje odkaz na jiný nadřazený"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Zpráva není v omezeném zobrazení viditelná"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Stahuji %s ze serveru…"
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Článek %s nebyl nalezen na serveru"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Chybějící Message-Id. Nelze provést operaci."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Nebyly nalezeny žádné smazané zprávy ve vláknu"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Přejít na zprávu: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumentem musí být číslo zprávy"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Číslo zprávy je neplatné"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Tato zpráva není viditelná"
+
+@@ -2505,37 +2747,37 @@ msgstr "Tato zpráva není viditelná"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Zprávy nelze smazat"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Smazat zprávy shodující se s: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Žádné omezení není zavedeno"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Omezení: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Omezit na zprávy shodující se s: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Pro zobrazení všech zpráv změňte omezení na „all“"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Ukončit NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Označit zprávy shodující se s: "
+
+@@ -2543,196 +2785,196 @@ msgstr "Označit zprávy shodující se s: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Zprávy nelze obnovit"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Obnovit zprávy shodující se s: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Odznačit zprávy shodující se s: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Odhlášeno z IMAP serverů"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Virtuální složka ani Message-Id nejsou specifikovány, zrušeno"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Nezdařílo se vytvořit dotaz, zrušeno"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr "nelze nalézt zpravá v databází notmuch. Zkuste spustit „notmuch new“."
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Selhalo čtení vlákna, zrušeno"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Složka nepodporuje značky, zrušeno"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Značka není specifikována, zrušeno"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Aktualizovat značky…"
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Selhala úprava značek, zrušeno"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Dotaz není specifikován, zrušeno"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Dotazy do okna nejsou povoleny"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Není natažena žádná virtuální složka (notmuch)"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Otevřít schránku pouze pro čtení"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Otevřít schránku"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "V žádné schránce není nová pošta"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Otevřít diskusní skupinu pouze pro čtení"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Otevřít diskusní skupinu"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Ukončit NeoMutt bez uložení změn?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Vlákno nelze rozdělit"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Vlákno rozděleno"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Vlákno nelze rozdělit, zpráva není součástí vlákna"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Vlákna nelze spojit"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Pro spojení vláken chybí hlavička Message-ID"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Aby sem mohla být zpráva připojena, nejprve musíte nějakou označit"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Vlákna spojena"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Žádné vlákno nespojeno"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Jste na poslední zprávě"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Nejsou žádné obnovené zprávy"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Jste na první zprávě"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Žádné nové zprávy v tomto omezeném zobrazení"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Žádné nové zprávy"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Žádné nepřečtené zprávy v tomto omezeném zobrazení"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Žádné nepřečtené zprávy"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Hledání pokračuje od začátku"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Hledání pokračuje od konce"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Zprávě nelze nastavit příznak"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Nelze přepnout mezi nová/stará"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Nejsou další vlákna"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Jste na prvním vláknu"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Vlákno obsahuje nepřečtené zprávy nebo zprávy s příznakem"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Zprávu nelze smazat"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Zprávu nelze upravit"
+
+ # FIXME: Pluralize
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2743,7 +2985,7 @@ msgstr[2] "%d štítků změněno"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Žádné štítky nebyly změněny"
+
+@@ -2751,278 +2993,140 @@ msgstr "Žádné štítky nebyly změněny"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Zprávy nelze označit za přečtené"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Zadejte značku: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "horká klávesa pro značku zprávy"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Zpráva svázána se značkou %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "ID zprávy ze značky neexistuje"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Odpovědět e-mailem dle návrhu autora?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Publikování do této skupiny není povoleno, může být moderována. Pokračovat?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Zprávu nelze obnovit"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Chyba %s na příkazovém řádku"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Varování %s na příkazovém řádku"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "název stroje nelze určit pomocí volání uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: chybí jméno skupiny"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "příliš málo argumentů"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Chyba: nelze sestavit cestu k „%s“"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Chyba: zacyklení při vkládání konfiguračního souboru „%s“"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Chyba v %s na řádku %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Varování v %s na řádku %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: chyby v %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: čtení přerušeno kvůli velikému množství chyb v %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d varování v %s"
+-msgstr[1] "source: %d varování v %s"
+-msgstr[2] "source: %d varování v %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "přezdívka: žádná adresa"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Pozor: Neplatné IDN „%s“ v přezdívce „%s“"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "přílohy: chybí dispozice"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Současné nastavení příloh:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "přílohy: neplatná dispozice"
+-
+-# "%sgroup" is literal
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: chybí -rx nebo -addr"
+-
+-# "%sgroup" is literal
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: pozor: chybné IDN „%s“"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Chyba: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "neplatná hlavička"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "Proměnná %s není známa."
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s není nastaveno"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: chyba na %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source: soubor %s nelze vložit"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: vzoru nic nevyhovuje"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: vzoru nic nevyhovuje"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Nelze přihlásit do %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Složka nebyla zadána"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "nepřílohy: chybí dispozice"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "nepřílohy: neplatná dispozice"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Nelze odhlásit odběr %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "Příkaz %s není znám."
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "„charset“ musí obsahovat právě jedno jméno znakové sady"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Neplatná hodnota přepínače %s: „%s“"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Volba %s nemůže být nastavena z pageru"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Volba %s nemůže být nastavena v režimu přikládání zpráv."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr "Hodnota %s musí být v rozmezí 78 a 998"
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Zkratka „%s“ překryje „%s“. Nejdříve zkuste: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Detekována smyčka v makru"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klávesa není svázána s žádnou funkcí"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klávesa není svázána. Stiskněte „%s“ pro nápovědu."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: prázdný sled kláves"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Funkce „%s“ není v menu „%s“ dostupná"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: sled kláves je prázdný"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: žádné argumenty"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "funkce %s není známa"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Zadejte klávesy (nebo stiskněte ^G pro zrušení): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Znak = %s, Osmičkově = %o, Desítkově = %d"
+@@ -3046,7 +3150,7 @@ msgstr "pro typ %s nebyla nalezena položka v mailcapu"
+ msgid "Scanning %s..."
+ msgstr "Prohledávám %s…"
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Čtu %s…"
+@@ -3060,13 +3164,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): nelze nastavit čas na souboru"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Ukládám %s…"
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3107,7 +3211,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3188,54 +3292,54 @@ msgstr ""
+ " -z Otevře buď první složku nebo zadanou pomocí „-f“ s novou poštou;\n"
+ " pokud není žádná nová nalezena, ihned skončí s kódem 1"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Chyba při inicializaci terminálu"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "uživatelské jméno nelze určit"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "domovský adresář nelze určit"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Chyba: pro -d je „%s“ neplatná hodnota"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Rozebrání odkazu mailto: se nezdařilo"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nejsou specifikováni žádní příjemci"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Přepínač -E nelze se standardním vstupem použít"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Soubor se šablonou zprávy nelze rozebrat: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "soubor %s nelze připojit"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "V žádné schránce není nová pošta"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Není definována žádná schránka přijímající novou poštu"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Schránka je prázdná"
+
+@@ -3277,52 +3381,52 @@ msgstr "Schránku nelze znovu otevřít"
+ msgid "Can't write message"
+ msgstr "Zprávu nelze uložit"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Přeskočit na: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Neplatné indexové číslo"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Žádné položky"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Dolů již rolovat nemůžete"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Nahoru již rolovat nemůžete"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Jste na první stránce"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Jste na poslední stránce"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Jste na poslední položce"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Jste na první položce"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Vyhledat: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Vyhledat obráceným směrem: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nenalezeno"
+
+@@ -3365,20 +3469,20 @@ msgstr "Čekám na pokus o zamknutí pomocí funkce flock… %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Špatný formát souboru s historií (řádek %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Dočasný soubor nelze vytvořit."
+
+@@ -3397,7 +3501,7 @@ msgstr "Úroveň ladění je %d do souboru „%s“"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Úroveň ladění je %d do souboru „%s“"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Chyba při konverzi cesty na absolutní"
+
+@@ -3420,17 +3524,17 @@ msgstr "Zachycen signál %d (%s)… Končím.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Zachycen signál %d… Končím.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "otevření /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "čtení /dev/urandom: %s"
+@@ -3438,146 +3542,119 @@ msgstr "čtení /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Soubor je adresářem. Uložit do něj? (a)no, (n)e, (v)šechny"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "anv"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Soubor je adresářem. Uložit do něj?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Zadejte jméno souboru: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Soubor již existuje: (p)řepsat, př(i)pojit či (z)rušit?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "piz"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Do POP schránek nelze ukládat zprávy"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Připojit zprávy do %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Nelze uložit zprávu na server diskusních skupin"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Uživatelské jméno na %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Heslo pro %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "Není definován příkaz pro obnovení OAUTH"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Nezdařilo se provést příkaz obnovení"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Příkaz vrátil prázdný řetězec"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Shodu pro jmenný vzor nelze nalézt, pokračovat?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Položka mailcapu „compose“ vyžaduje %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Soubor nutný pro zpracování hlaviček se nepodařilo otevřít"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Soubor nutný pro odstranění hlaviček se nepodařilo otevřít"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Soubor se nepodařilo přejmenovat"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Pro %s neexistuje položka mailcapu „compose“, vytvářím prázdný soubor"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Položka mailcapu „edit“ vyžaduje %%s."
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Pro %s neexistuje položka mailcapu „edit“."
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Odpovídající položka v mailcapu nebyla nalezena. Zobrazuji jako text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME typ není definován, nelze zobrazit přílohu."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Příkaz: %-20.20s Popis: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Příkaz: %-30.30s Příloha: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Příloha: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Příloha: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Chyba při zápisu"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Nevím, jak mám toto vytisknout"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Hledat"
+
+@@ -3586,21 +3663,21 @@ msgstr "Hledat"
+ msgid "History '%s'"
+ msgstr "Historie „%s“"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Neplatná hodnota přepínače %s: „%ld“"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Chyba: nelze zavést interpret jazyka lua"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Nelze vložit lua zdroj: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nová pošta ve složce "
+
+@@ -3621,20 +3698,20 @@ msgstr "Kořenová zpráva není v omezeném zobrazení viditelná"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Rodičovská zpráva není v omezeném zobrazení viditelná"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Čtení z %s bylo přerušeno…"
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Nelze zapsat %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "zprávy nesmazány"
+@@ -3645,13 +3722,13 @@ msgstr[2] "zprávy nesmazány"
+ msgid "Can't open trash folder"
+ msgstr "Složku koš nelze otevřít"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Označit všechny články za přečtené?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3659,7 +3736,7 @@ msgstr[0] "Přesunout %d přečtených zpráv do %s?"
+ msgstr[1] "Přesunout %d přečtených zpráv do %s?"
+ msgstr[2] "Přesunout %d přečtených zpráv do %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3667,49 +3744,49 @@ msgstr[0] "Zahodit smazané zprávy (%d)?"
+ msgstr[1] "Zahodit smazané zprávy (%d)?"
+ msgstr[2] "Zahodit smazané zprávy (%d)?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Přesunuji přečtené zprávy do %s…"
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Obsah schránky nebyl změněn"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "ponecháno: %d, přesunuto: %d, smazáno: %d"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "ponecháno: %d, smazáno: %d"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Stiskněte „%s“ pro zapnutí zápisu"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Použijte „toggle-write“ pro zapnutí zápisu"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Schránka má vypnut zápis. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Do schránky byla vložena kontrolní značka"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (aktuální čas: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- následuje výstup %s %s --]\n"
+@@ -3718,52 +3795,52 @@ msgstr "[-- následuje výstup %s %s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Šifrovací hesla zapomenuta"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "PGP v textu nelze použít s přílohami. Použít PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "E-mail neodeslán: PGP v textu nelze použít s přílohami"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "PGP v textu nelze použít s „format=flowed“. Použít PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "E-mail neodeslán: PGP v textu nelze použít s „format=flowed“"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Spouští se PGP…"
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Zprávu nelze poslat vloženou do textu. Použít PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Zpráva nebyla odeslána"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME zprávy bez popisu obsahu nejsou podporovány"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Zkouším extrahovat PGP klíče…\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Zkouším extrahovat S/MIME certifikáty…"
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3772,7 +3849,7 @@ msgstr ""
+ "[-- Chyba: „multipart/signed“ protokol %s není znám --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3780,7 +3857,7 @@ msgstr ""
+ "[-- Chyba: Chybná struktura zprávy typu „multipart/signed“ --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3789,7 +3866,7 @@ msgstr ""
+ "[-- Varování: Podpisy typu %s/%s nelze ověřit. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3797,7 +3874,7 @@ msgstr ""
+ "[-- Následují podepsaná data --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3805,7 +3882,7 @@ msgstr ""
+ "[-- Varování: Nemohu nalézt žádný podpis. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3824,229 +3901,229 @@ msgstr "Spouštím S/MIME…"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Jméno: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Platný od:"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Platný do:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Druh klíče : "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Účel klíče : "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Otisk klíče: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Sériové č.:"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Vydal: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Podklíč: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "chybě při zapínání CMS protokolu: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "chybě při vytváření gpgme datového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "chybě při alokování datového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "chyba při přetáčení datového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[dočasný soubor]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "chyba při čtení datového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "chyba při přidávání příjemce „%s“: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "tajný klíč „%s“ nenalezen: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "tajný klíč „%s“ není určen jednoznačně\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "chyba při nastavování tajného klíče „%s“: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "chyba při nastavování PKA podpisové poznámky: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "chyba při šifrování dat: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "chyba při podepisování dat: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "„$pgp_sign_as“ není nastaveno a v ~/.gnupg/gpg.conf není určen výchozí klíč"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Pozor: Jeden z klíčů byl odvolán\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Pozor: Klíči použitému k podepsání vypršela platnost: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Pozor: Platnost alespoň jednoho certifikátu vypršela\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Pozor: Podpis pozbyl platnosti: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Nelze ověřit, protože chybí klíč nebo certifikát\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL není dostupný\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Dostupný CRL je příliš starý\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Požadavky bezpečnostní politiky nebyly splněny\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Došlo k systémové chybě"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "POZOR: Položka PKA se neshoduje s adresou podepsaného: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Adresa podepsaného ověřená pomocí PKA je: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "POZOR: Nemáme ŽÁDNÝ důkaz, že klíč patří výše jmenované osobě\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "POZOR: Klíč NEPATŘÍ výše jmenované osobě\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "POZOR: NENÍ jisté, zda klíč patří výše jmenované osobě\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "ID klíče "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "není k dispozici žádný otisk podpisu"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "vytvořen: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Chyba při získávání podrobností o klíči s ID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Dobrý podpis od:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*ŠPATNÝ* podpis od:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematický podpis od:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " vyprší: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Začátek podrobností o podpisu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Chyba: ověření selhalo: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Začátek zápisu (podepsáno: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Konec zápisu ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4054,7 +4131,7 @@ msgstr ""
+ "[-- Konec podrobností o podpisu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4063,21 +4140,26 @@ msgstr ""
+ "[-- Chyba: dešifrování selhalo: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Chyba při importu klíče: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Chyba: dešifrování/ověřování selhalo: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP zpráva byla úspěšně dešifrována"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Chyba: selhalo kopírování dat\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4085,11 +4167,11 @@ msgstr ""
+ "[-- ZAČÁTEK PGP ZPRÁVY --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[--ZAČÁTEK VEŘEJNÉHO KLÍČE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4097,19 +4179,19 @@ msgstr ""
+ "[-- ZAČÁTEK PODEPSANÉ PGP ZPRÁVY --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- KONEC PGP ZPRÁVY --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- KONEC VEŘEJNÉHO KLÍČE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- KONEC PODEPSANÉ PGP ZPRÁVY --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4117,11 +4199,11 @@ msgstr ""
+ "[-- Chyba: nelze najít začátek PGP zprávy --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Chyba: dočasný soubor nelze vytvořit --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4129,7 +4211,7 @@ msgstr ""
+ "[-- Následující data jsou podepsána a zašifrována ve formátu PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4137,24 +4219,20 @@ msgstr ""
+ "[-- Následující data jsou zašifrována ve formátu PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Konec dat podepsaných a zašifrovaných ve formátu PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Konec dat zašifrovaných ve formátu PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP zpráva byla úspěšně dešifrována"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "PGP zprávu nelze dešifrovat"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4162,7 +4240,7 @@ msgstr ""
+ "[-- Následující data jsou podepsaná pomocí S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4170,34 +4248,34 @@ msgstr ""
+ "[-- Následující data jsou zašifrována pomocí S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Konec dat podepsaných pomocí S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Konec dat zašifrovaných ve formátu S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Nelze zobrazit ID tohoto uživatele (neznámé kódování)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Nelze zobrazit ID tohoto uživatele (neplatné kódování)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Nelze zobrazit ID tohoto uživatele (neplatné DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Neplatný]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4206,94 +4284,94 @@ msgstr[1] "%s, %lu bit %s\n"
+ msgstr[2] "%s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "šifrovaní"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "podepisování"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "ověřování"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Odvolaný]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Platnost vypršela]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Zakázán]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Sbírám údaje…"
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Chyba při vyhledávání klíče vydavatele: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Chyba: řetězec certifikátů je příliš dlouhý - zde se končí\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID klíče: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start selhala: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next selhala: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Všem vyhovujícím klíčům vypršela platnost nebo byly zneplatněny"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Zvolit "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Kontrolovat klíč "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP a S/MIME klíče vyhovující"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP klíče vyhovující"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME klíče vyhovující"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "klíče vyhovující"
+
+@@ -4301,55 +4379,55 @@ msgstr "klíče vyhovující"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s „%s“"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Klíč nelze použít: vypršela jeho platnost, nebo byl zakázán či odvolán"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Tomuto ID vypršela platnost, nebo bylo zakázáno či odvoláno. Opravdu chcete tento klíč použít?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Toto ID není platné. Opravdu chcete tento klíč použít?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Důvěryhodnost tohoto ID je pouze částečná. Opravdu chcete tento klíč použít?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID nemá definovanou důvěryhodnost. Opravdu chcete tento klíč použít?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Hledám klíče vyhovující „%s“…"
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "Nenalezeny vyhovující klíče pro „%s“"
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Použít ID klíče „%s“ pro %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Zadejte ID klíče pro %s: "
+@@ -4358,15 +4436,15 @@ msgstr "Zadejte ID klíče pro %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Nenalezeny žádné tajné klíče"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Zadejte ID klíče: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Chyba při exportu klíče: %s"
+@@ -4374,92 +4452,92 @@ msgstr "Chyba při exportu klíče: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Klíč PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: Protokol OpenGPG není dostupný"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: Protokol CMS není dostupný"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (p)odepsat, podepsat (j)ako, p(g)p, (n)ic či vypnout pří(l)ež. šifr.?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "pjgnl"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (p)odepsat, podepsat (j)ako, s/(m)ime, (n)ic či vypnout pří(l)ež. šifr.?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "pjmnl"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME šif(r)ovat, (p)odepsat, pod.(j)ako, (o)bojí, p(g)p, (n)ic, pří(l).šifr.?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "rpjognl"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP šif(r)ovat, (p)odepsat, pod.(j)ako, (o)bojí, s/(m)ime, (n)ic, pří(l).šifr.?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "rpjomnl"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME šif(r)ovat, (p)odepsat, podepsat (j)ako, (o)bojí, p(g)p či (n)ic?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "rpjogn"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP šif(r)ovat, (p)odepsat, podepsat (j)ako, (o)bojí, s/(m)ime, či (n)ic?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "rpjomn"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Odesílatele nelze ověřit"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Nelze určit odesílatele"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Zadejte PGP heslo:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Chyba: nelze spustit PGP proces --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4470,15 +4548,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP zpráva nebyla zašifrována"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Vnitřní chyba. Prosím, zašlete hlášení o chybě."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4486,128 +4564,128 @@ msgstr ""
+ "[-- Chyba: nelze spustit PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Dešifrování se nezdařilo"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP proces nelze spustit"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP nelze spustit."
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ # XXX: %s is "PGP/M(i)ME" or "(i)nline"
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (p)odepsat, pod.(j)ako, formát %s, (n)ic, vypnout pří(l).šifr.?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "pjinl"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (p)odepsat, podepsat (j)ako, (n)ic, vypnout pří(l). šifr.?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "pjnl"
+
+ # XXX: %s is "PGP/M(i)ME" or "(i)nline"
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP šif(r)ovat, (p)odep., pod.(j)ako, (o)bojí, %s, (n)ic, pří(l).šif.?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "rpjoinl"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP šif(r)ovat, (p)odepsat, podepsat (j)ako, (o)bojí, (n)ic, pří(l). šifr.?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "rpjonl"
+
+ # XXX: %s is "PGP/M(i)ME" or "(i)nline"
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP šif(r)ovat, (p)odepsat, podp (j)ako, (o)bojí, formát %s, či (n)ic?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "rpjoin"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP šif(r)ovat, (p)odepsat, podepsat (j)ako, (o)bojí, či (n)ic?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "rpjon"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Získávám PGP klíč…"
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Všem vyhovujícím klíčům vypršela platnost, byly odvolány nebo zakázány"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "klíče PGP vyhovující <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "klíče PGP vyhovující „%s“"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Nelze otevřít /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Klíč PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Zadejte S/MIME heslo:"
+
+@@ -4616,7 +4694,7 @@ msgstr "Zadejte S/MIME heslo:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Platnost vypršela "
+
+@@ -4625,7 +4703,7 @@ msgstr "Platnost vypršela "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Neplatný "
+
+@@ -4634,7 +4712,7 @@ msgstr "Neplatný "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Odvolaný "
+
+@@ -4643,7 +4721,7 @@ msgstr "Odvolaný "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Důvěryhodný "
+
+@@ -4652,7 +4730,7 @@ msgstr "Důvěryhodný "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Neověřený "
+
+@@ -4661,7 +4739,7 @@ msgstr "Neověřený "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Ověřený "
+
+@@ -4670,58 +4748,58 @@ msgstr "Ověřený "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Neznámý "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME klíče vyhovující „%s“"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID není důvěryhodné. Opravdu chcete tento klíč použít?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Zadejte ID klíče: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Nebyl nalezen žádný (platný) certifikát pro %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Chyba: nelze spustit OpenSSL jako podproces"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Název certifikátu: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "chybí soubor s certifikáty"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "žádná schránka"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL nevygenerovalo žádný výstup…"
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Nemohu najít klíč odesílatele, použijte funkci podepsat jako."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL podproces nelze spustit"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4729,19 +4807,19 @@ msgstr ""
+ "[-- Konec OpenSSL výstupu --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Chyba: nelze spustit OpenSSL podproces --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Následující data jsou zašifrována pomocí S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Následují data podepsaná pomocí S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4749,7 +4827,7 @@ msgstr ""
+ "\n"
+ "[-- Konec dat zašifrovaných ve formátu S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4758,160 +4836,160 @@ msgstr ""
+ "[-- Konec dat podepsaných pomocí S/MIME --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (p)odepsat, šifr. po(m)ocí, podep. (j)ako, (n)ic, vypnout pří(l). šifr.?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "pmjnl"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME šif(r)., (p)ode., šif.po(m)ocí, pod.(j)ako, (o)bojí, (n)ic, pří(l).šif.?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "rpmjonl"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME šif(r)ovat, (p)odepsat, šifr. po(m)ocí, podep. (j)ako, (o)bojí či (n)ic?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "rpmjon"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Vyberte rodinu algoritmů: (1) DES, (2) RC2, (3) AES nebo (n)ešifrovaný?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123n"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Načítám seznam skupin z cache…"
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Není definován žádný server diskusních skupin"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s je neplatné zadání serveru diskusních skupin"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server uzavřel spojení"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Server nepodporuje režim pro klienty"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Nejsou k dispozici žádné autentizační metody"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s ověření se nezdařilo"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Spojení s %s uzavřeno. Připojit znovu?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Stahuji seznam článků…"
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Hledám nové zprávy…"
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Nepodařilo se přepnout do režimu pro klienty"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Připojeno k %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Publikování je povoleno"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Publikování NENÍ povoleno"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Nelze odeslat článek: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Načítám seznam skupin ze serveru %s…"
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Načítám popisy…"
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Hledám nové zprávy v diskusních skupinách…"
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Nepodařilo se nalézt poďřízený článek, protože server nepodporuje příkaz XPAT"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s je neplatné upřesnění diskusních skupin"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Diskusní skupina %s nenalezena na serveru"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Diskusní skupina %s byla odstraněna ze serveru"
+@@ -4923,8 +5001,8 @@ msgstr "Rozebrání dotazu pro notmuch se nezdařilo: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "rozebrání URI pro notmuch se nezdařilo: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "rozebrání URL pro notmuch se nezdařilo: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -6014,182 +6092,182 @@ msgstr "zobrazit/skrýt postranní panel"
+ msgid "show S/MIME options"
+ msgstr "zobrazit menu S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "V tomto menu není tato funkce dostupná"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PřStr"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "DlStr"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Přílohy"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Další"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "vše"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "celé"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Konec zprávy je zobrazen"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Začátek zprávy je zobrazen"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Nápověda je právě zobrazena"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Žádný další citovaný text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Za citovaným textem již nenásleduje žádný běžný text"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Výraz %s je chybný."
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Prázdný výraz"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "Není definován příkaz pro hledání"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Provádím příkaz pro hledání: %s ..."
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Neplatný den v měsící: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Neplatný měsíc: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Chybné relativní datum: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Žádné vybraná zpráva"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "Chybí kontext"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Chyba při otevírání 'memory stream'u"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Chyba při opětovném otevírání 'memory stream'"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Nelze otevřít /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "chyba ve vzoru na: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "chybí vzor: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "neshodují se závorky: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: neplatný modifikátor vzoru"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "V tomto režimu není %c podporováno"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "chybí parametr"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "prázdný vzor"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "chyba: vyhledávání na straně serveru je podporováno pouze s IMAP"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "chyba: neznámý operand %d (ohlaste tuto chybu)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Překládám vzor k vyhledání…"
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Spouštím příkaz pro shodující se zprávy… "
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Žádná ze zpráv nesplňuje daná kritéria"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Hledám…"
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Při vyhledávání bylo dosaženo konce bez nalezení shody."
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Při vyhledávání bylo dosaženo začátku bez nalezení shody."
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Hledání bylo přerušeno"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Server nepodporuje příkaz TOP"
+
+@@ -6197,7 +6275,7 @@ msgstr "Server nepodporuje příkaz TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "Nelze zapsat hlavičku do dočasného souboru"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Server nepodporuje příkaz UIDL"
+
+@@ -6214,7 +6292,7 @@ msgstr[2] "%d zpráv bylo ztraceno. Zkuste schránku znovu otevřít."
+ msgid "POP host is not defined"
+ msgstr "POP server není definován"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s je neplatná POP cesta"
+@@ -6249,126 +6327,126 @@ msgstr[0] "%s [počet přečtených zpráv: %d/%d]"
+ msgstr[1] "%s [počet přečtených zpráv: %d/%d]"
+ msgstr[2] "%s [počet přečtených zpráv: %d/%d]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Stahuji seznam zpráv…"
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Označuji zprávy ke smazání…"
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Nelze zapsat zprávu do dočasného souboru"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Ověřuji (SASL)…"
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "Časové razítko POP protokolu je neplatné"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Ověřuji (APOP)…"
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP ověření se nezdařilo"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Server nepodporuje příkaz USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Autentizace se nezdařila"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Neplatné POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Nelze ponechat zprávy na serveru"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Chyba při připojování k serveru: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Končím spojení s POP serverem…"
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Ukládám indexy zpráv…"
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Spojení ztraceno. Navázat znovu spojení s POP serverem."
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Odložené zprávy"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Žádné zprávy nejsou odloženy"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Nekorektní S/MIME hlavička"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Nekorektní šifrovací hlavička"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Dešifruji zprávu…"
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nový dotaz"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Vytvořit přezdívku"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Čekám na odpověď…"
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Dotázat se na: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Dotaz na „%s“"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Příkaz pro dotazy není definován"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Poslat rourou"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Tisk"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Ukládám…"
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6376,26 +6454,26 @@ msgstr[0] "Příloha uložena"
+ msgstr[1] "%d přílohy uloženy"
+ msgstr[2] "%d příloh uloženo"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "VAROVÁNÍ! Takto přepíšete %s. Pokračovat?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Příloha byla filtrována"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrovat přes: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Poslat rourou do: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Neví se, jak vytisknout přílohy typu %s"
+@@ -6403,7 +6481,7 @@ msgstr "Neví se, jak vytisknout přílohy typu %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6411,48 +6489,48 @@ msgstr[0] "Vytisknout %d označené přílohy?"
+ msgstr[1] "Vytisknout %d označené přílohy?"
+ msgstr[2] "Vytisknout %d označené přílohy?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Vytisknout přílohu?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Úprava typu souboru rozšifrovaných příloh není podporována"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Nemohu dešifrovat zašifrovanou zprávu"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Přílohy"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Nejsou žádné podčásti pro zobrazení"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Z POP serveru nelze mazat přílohy"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Nelze smazat přílohu ze serveru diskusních skupin"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Mazání příloh ze zašifrovaných zpráv není podporováno"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Mazání příloh z podepsaných zpráv může zneplatnit podpis"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Podporováno je pouze mazání příloh o více částech"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Přeposílat v nezměněné podobě lze pouze části typu „message/rfc822“"
+
+@@ -6489,7 +6567,7 @@ msgstr "Soubor %s nelze vytvořit"
+ msgid "Can't find any tagged messages"
+ msgstr "Žádná zpráva není označena"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Žádné poštovní konference nebyly nalezeny"
+
+@@ -6503,67 +6581,67 @@ msgstr "Všechny označené přílohy nelze dekódovat. Zapouzdřit je do MIME f
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Přeposílat v nezměněné podobě lze pouze části typu „message/rfc822“"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Připojit"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Vložit"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<náhodný>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "„type2.list“ pro mixmaster nelze získat."
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Vyberte řetěz remailerů"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Chyba: %s nelze použít jako poslední článek řetězu remailerů"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Maximální počet článků řetězu remailerů typu mixmaster je %d"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Řetěz remailerů je již prázdný"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "První článek řetězu jste již vybral"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Poslední článek řetězu jste již vybral"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster nepovoluje Cc a Bcc hlavičky"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Pokud používáte mixmaster, je třeba správně nastavit proměnnou „hostname“."
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Chyba při zasílání zprávy, potomek ukončen %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Chyba při zasílání zprávy"
+
+@@ -6593,41 +6671,41 @@ msgstr "Přeposlat jako přílohy?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Odepsat %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Odepsat %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Vložit zprávu do odpovědi?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Vkládám citovanou zprávu…"
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Všechny požadované zprávy nelze vložit"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Přeposlat jako přílohu?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Připravuji přeposílanou zprávu…"
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Kopie do souboru v IMAP složce nelze provést v dávkovém režimu"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Uložit do přílohy jako soubory?"
+
+@@ -6635,190 +6713,190 @@ msgstr "Uložit do přílohy jako soubory?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Kopie do souboru selhala. Zkusit (z)novu, (d)alší schránka nebo pře(s)kočit?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "zds"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Soubor pro uložení schránky"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Nelze odložit. $postponed není nastaveno"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Vrátit se k odloženým zprávám?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Upravit přeposílanou zprávu?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Zahodit nezměněnou zprávu?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Nezměněná zpráva byla zahozena"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Neni nakonfigurováno s podporou šifrování. Vypínám nastavení bezpečnosti."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Článek nebyl publikován"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Zpráva byla odložena"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Žádná věc, zrušit odeslání?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Věc nebyla zadána"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Nezadány žádné diskusní skupiny"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Žádné přílohy, zrušit odeslání?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Zpráva obsahuje text odpovídající „$abort_noattach_regex“. Neodesílám."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Posílám zprávu…"
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Zprávu nelze odeslat"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Zasílám na pozadí"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Článek publikován"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Zpráva odeslána"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nebyl nalezen parametr „boundary“ [ohlaste tuto chybu]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s již neexistuje"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s není řádným souborem"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Nemohu nalézt žádný mime.types soubor."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s nelze otevřít"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "Aby bylo možné odesílat e-maily, je třeba nastavit $sendmail"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Chyba při zasílání zprávy, potomek ukončen %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Výstup doručovacího programu"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Chybné IDN %s při generování „resent-from“ (odesláno z)"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP relace selhala: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP relace selhala: nelze otevřít %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Neplatné SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP ověření metodou %s vyžaduje SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s autentizace se nezdařila, zkouším další metodu"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP ověření vyžaduje SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP server nepodporuje autentizaci"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Adresa odesílatele nezadána"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP relace selhala: chyba při čtení"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP relace selhala: chyba při zápisu"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Neplatná odpověď serveru"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Řadím schránku…"
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Řadící funkci nelze nalézt [ohlaste tuto chybu]"
+
+@@ -6887,10 +6965,49 @@ msgstr ""
+ "musíte ovšem dodržet určitá pravidla; další informace získáte příkazem\n"
+ "„neomutt -vv“.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Výchzí volby:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Přeloženo s volbami:"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Chyba při vytváření klíče autokryptu: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(v)ytvořit nový, nebo vybrat exi(s)tující klíč GPG? "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autokrypt: šif(r)ovat, (n)ic, (a)utomaticky? "
++
++#~ msgid "$send_multipart_alternative_filter is not set"
++#~ msgstr "Proměnná $send_multipart_alternative_filter není nastavena"
++
++#~ msgid "Generate multipart/alternative content?"
++#~ msgstr "Vytvořit multipart/alternative obsah?"
++
++#~ msgid "Missing mime type from output of \"%s\"!"
++#~ msgstr "Ve výstupu „%s“ chybí typ MIME!"
++
++#~ msgid "Missing blank line separator from output of \"%s\"!"
++#~ msgstr "Ve výstupu „%s“ chybí prázdný řádek oddělovače!"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation"
++#~ msgstr "$send_multipart_alternative_filter nepodporuje vytváření typu multipart"
++
++#~ msgid "view multipart/alternative"
++#~ msgstr "zobrazit multipart/alternative přílohu"
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "zobrazit multipart/alternative přílohu jako text"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "zobrazit multipart/alternative přílohu skrze mailcap"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "zvolit v prohlížeči jinou schránku"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "zvolit v prohlížeči novou schránku pouze pro čtení"
+diff --git a/po/da.po b/po/da.po
+index 7d07668ad..b732f66a4 100644
+--- a/po/da.po
++++ b/po/da.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-05-10 21:15+0200\n"
+ "Last-Translator: Morten Bo Johansen <mbj@mbjnet.dk>\n"
+ "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "X-Generator: Jed w/po-mode: http://mbjnet.dk/po_mode/\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(a)fvis, (g)odkend denne gang, (v)arig godkendelse, (s)pring over"
++
++msgid "roas"
++msgstr "avgs"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(a)fvis, (g)odkend denne gang, (v)arig godkendelse"
++
++msgid "roa"
++msgstr "agv"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(a)fvis, (g)odkend denne gang, (s)pring over"
++
++msgid "ros"
++msgstr "avs"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(a)fvis, (g)odkend denne gang"
++
++msgid "ro"
++msgstr "ag"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Tilbage"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Slet"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Behold"
+
+@@ -38,18 +62,18 @@ msgstr "Behold"
+ msgid "Select"
+ msgstr "Vælg"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Hjælp"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Adressebogen er tom"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Adressebog"
+
+@@ -58,52 +82,52 @@ msgstr "Adressebog"
+ msgid "Alias as: "
+ msgstr "Vælg et alias: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Der er allerede et alias med det navn"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Advarsel: Dette navn for alias vil måske ikke virke. Ret det?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresse: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Forkert IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Navn: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] O.k.?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Gem i fil: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Fejl ved læsning af alias-fil"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Fejl ved læsning af alias-fil"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Adresse tilføjet"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Fejl ved søgning i alias-fil"
+
+@@ -112,7 +136,7 @@ msgstr "Fejl ved søgning i alias-fil"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s findes ikke. Opret?"
+@@ -121,8 +145,8 @@ msgstr "%s findes ikke. Opret?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Kan ikke oprette %s: %s"
+@@ -132,7 +156,7 @@ msgstr "Kan ikke oprette %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Opret en ny autocrypt-konto?"
+
+@@ -141,7 +165,7 @@ msgstr "Opret en ny autocrypt-konto?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Autocrypt-kontoens adresse: "
+
+@@ -150,7 +174,7 @@ msgstr "Autocrypt-kontoens adresse: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Indtast kun en enkelt mailadresse"
+
+@@ -159,7 +183,7 @@ msgstr "Indtast kun en enkelt mailadresse"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Denne mailadresse har allerede en autocrypt-konto tilknyttet"
+
+@@ -171,14 +195,14 @@ msgstr "Denne mailadresse har allerede en autocrypt-konto tilknyttet"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Foretræk kryptering?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Oprettelse af autocrypt-konto lykkedes"
+
+@@ -186,7 +210,7 @@ msgstr "Oprettelse af autocrypt-konto lykkedes"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Oprettelse af autocrypt-konto afbrudt"
+
+@@ -195,7 +219,7 @@ msgstr "Oprettelse af autocrypt-konto afbrudt"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Fandt ikke nogen (gyldig) autocrypt-nøgle til %s"
+@@ -207,12 +231,12 @@ msgstr "Fandt ikke nogen (gyldig) autocrypt-nøgle til %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Skan brevbakke for autocrypt-headere?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Scan brevbakke"
+
+@@ -223,21 +247,21 @@ msgstr "Scan brevbakke"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Skan en anden brevbakke for autocrypt-headere?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Opret"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Slet"
+
+@@ -245,9 +269,9 @@ msgstr "Slet"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Aktiv til/fra"
+
+@@ -255,17 +279,17 @@ msgstr "Aktiv til/fra"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Foretræk kryptering"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "foretræk kryptering"
+
+@@ -274,7 +298,7 @@ msgstr "foretræk kryptering"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "manuel kryptering"
+
+@@ -282,7 +306,7 @@ msgstr "manuel kryptering"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "aktiv"
+
+@@ -290,12 +314,12 @@ msgstr "aktiv"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "inaktiv"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt-konti"
+
+@@ -303,12 +327,12 @@ msgstr "Autocrypt-konti"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Fejl ved opdatering af konto-optegnelse"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Skal kontoen \"%s\" virkelig slettes?"
+@@ -326,7 +350,7 @@ msgstr "Skal kontoen \"%s\" virkelig slettes?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Kan ikke åbne autocrypt-databasen %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "dannelse af gpgme-kontekst fejlede: %s"
+@@ -399,335 +423,286 @@ msgstr "Version af autocrypt-database er for ny"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s er ikke et filkatalog"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Skift filkatalog"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maske"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Abonnerer på %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Afmeldt fra %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s er ikke et filkatalog"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Abonnerer på %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Indbakker [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Abonnementer [%s], filmaske: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Filkatalog [%s], filmaske: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Kan ikke vedlægge et filkatalog"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Ingen filer passer til filmasken"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Oprettelse er kun understøttet for IMAP-brevbakker"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Omdøbning er kun understøttet for IMAP-brevbakker"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Sletning er kun understøttet for IMAP-brevbakker"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "vis navnet på den aktuelt valgte fil"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Virkelig slette brevbakke \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Brevbakke slettet"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Sletning af brevbakke mislykkedes"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Brevbakke ikke slettet"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Skift til filkatalog: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Fejl ved indlæsning af filkatalog"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Filmaske: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Omvendt sortering efter (d)ato, (a)lfabetisk, (s)tr. eller (i)ngen?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortering efter (d)ato, (a)lfabetisk, (s)tr. eller (i)ngen?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nyt filnavn: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Filkataloger kan ikke vises"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Fejl ved visning af fil"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Abonnerer på %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Afmeldt fra %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Ingen filer passer til filmasken"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: farve er ikke understøttet af terminal"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: ukendt farve"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: ukendt objekt"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: for få parametre"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: ukendt attribut"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: for mange parametre"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "standard-farver er ikke understøttet"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Fejl: score: ugyldigt tal"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Verificér underskrift?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Kunne ikke oprette midlertidig fil"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Kan ikke oprette fremvisningsfilter"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Kunne ikke kopiere brevet"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-underskrift er i orden"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Der er ikke sammenfald mellem ejer af S/MIME-certifikat og afsender"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Advarsel: En del af dette brev er ikke underskrevet"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-underskrift er IKKE i orden"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-underskrift er i orden"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-underskrift er IKKE i orden"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Fejl ved kørsel af \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Kommando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Advarsel: brevet har ingen From:-header"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Gensend brev til: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Gensend udvalgte breve til: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Ugyldig adresse"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Gensend brev til %s?"
+ msgstr[1] "Gensend breve til %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Brevet er ikke gensendt"
+ msgstr[1] "Brevene er ikke gensendt"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Brevet er gensendt"
+ msgstr[1] "Brevene er gensendt"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Kan ikke oprette filterproces"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Overfør til kommando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Ingen udskrivningskommando er defineret"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Udskriv brev?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Udskriv udvalgte breve?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Brevet er udskrevet"
+ msgstr[1] "Brevene er udskrevet"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -735,161 +710,324 @@ msgstr[0] "Brevet kunne ikke udskrives"
+ msgstr[1] "Brevene kunne ikke udskrives"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Omv-sort. (d)ato/(f)ra/(m)odt./(e)mne/ti(l)/(t)råd/(u)sort/(s)tr./s(c)ore/s(p)am/(e)tiket?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sort. (d)ato/(f)ra/(m)odt./(e)mne/ti(l)/(t)råd/(u)sort/(s)tr./s(c)ore/s(p)am/(e)tiket?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfmeltuscpe"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Skalkommando: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Afkod-gem i brevbakke"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Afkod-gem udvalgte i brevbakke"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dekryptér-gem i brevbakke"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dekryptér-gem udvalgte i brevbakke"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Gem i brevbakke"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Gem udvalgte i brevbakke"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Afkod-kopiér til brevbakke"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Afkod-kopiér udvalgte til brevbakke"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dekryptér-kopiér til brevbakke"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dekryptér-kopiér udvalgte til brevbakke"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Kopiér til brevbakke"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopiér udvalgte til brevbakke"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopierer til %s ..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "\"Content-Type\" ændret til %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Omdan til %s ved afsendelse?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "\"Content-Type\" ændret til %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Tegnsæt ændret til %s; omdanner ikke"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Tegnsæt ændret til %s; omdanner"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: for få parametre"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: intet gruppenavn"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "parametre slap op"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Fejl i %s, linje %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Fejl i %s, linje %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: Fejl i %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: læsning afbrudt pga. for mange fejl i %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: Fejl i %s"
++msgstr[1] "source: Fejl i %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: Ingen adresse"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Advarsel: Forkert IDN '%s' i alias '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "vedlæg bilag: ingen beskrivelse"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "ret brevdelens beskrivelse"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "vedlæg bilag: ugyldig beskrivelse"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: for mange parametre"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: mangler -rx eller -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: advarsel: forkert IDN \"%s\""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "ugyldig linje i brevhoved"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: ukendt variabel"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s er ikke sat"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: Fejl ved %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Brevene kunne ikke udskrives"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: intet mønster matcher"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: intet mønster matcher"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Abonnerer på %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Abonnerer på %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Intet emne er angivet."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "fjern bilag: ingen beskrivelse"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "fjern bilag: ugyldig beskrivelse"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Afmeldt fra %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Afmeldt fra %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Der er ingen bilag"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Fra: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Til: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Emne: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Svar til: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Sikkerhed: "
+
+@@ -900,79 +1038,79 @@ msgstr "Sikkerhed: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Underskriv som: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ #, fuzzy
+ msgid "Newsgroups: "
+ msgstr "Intet emne er angivet."
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Opfølg til %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "ret Reply-To-feltet"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Send"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Afbryd"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Til"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Emne"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Vedlæg fil"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Beskr."
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Intet emne er angivet."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Fra"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Nej"
+
+@@ -980,7 +1118,7 @@ msgstr "Nej"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Frarådes"
+
+@@ -988,14 +1126,14 @@ msgstr "Frarådes"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Tilgængelig"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Ja"
+
+@@ -1005,7 +1143,7 @@ msgstr "Ja"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (k)ryptér, (r)yd, (a)utomatisk?"
+
+@@ -1013,51 +1151,51 @@ msgstr "Autocrypt: (k)ryptér, (r)yd, (a)utomatisk?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "kra"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Ikke understøttet"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Underskriv og kryptér"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Kryptér"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Underskriv"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Ingen"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (indlejret PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc-tilstand)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<forvalgt>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Kryptér med: "
+
+@@ -1066,11 +1204,11 @@ msgstr "Kryptér med: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Anbefaling: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1081,7 +1219,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Bilag #%d findes ikke længere: %s"
+@@ -1093,239 +1231,359 @@ msgstr "Bilag #%d findes ikke længere: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Bilag #%d ændret. Opdatér kodning af %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- MIME-dele"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Brevets eneste del kan ikke slettes"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Forkert IDN i '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Bilag gemt"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Den aktuelle del vil ikke blive konverteret"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Brevdel filtreret"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Fejl ved afsendelse af brev"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Vedlægger valgte filer ..."
+ msgstr[1] "Vedlægger valgte filer ..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Kan ikke vedlægge %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Åbn brevbakken med brevet som skal vedlægges"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Åbn brevbakken med brevet som skal vedlægges"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Kan ikke åbne brevbakke %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Ingen breve i den brevbakke"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Udvælg de breve som du vil vedlægge"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Kan ikke vedlægge"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Omkodning berører kun tekstdele"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Den aktuelle del vil ikke blive konverteret"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Den aktuelle del vil blive konverteret"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Ugyldig indkodning"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Gem en kopi af dette brev?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Send bilag med navn: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Omdøb til: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Kan ikke finde filen %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Ny fil: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "\"Content-Type\" er på formen grundtype/undertype"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Ukendt \"Content-Type\" %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Kan ikke oprette filen %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Det er ikke muligt at lave et bilag"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Genindlæs tilbageholdt brev?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Skriv brevet til brevbakke"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Skriver brevet til %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Brevet skrevet"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Ingen PGP-ressource er konfigureret"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME allerede valgt. Ryd & fortsæt?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Ingen S/MIME-ressource er konfigureret"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP allerede valgt. Ryd & fortsæt?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Kan ikke tilføje uden en \"append-hook\" eller \"close-hook\" : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Kan ikke låse brevbakke"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Dekomprimerer %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Kan ikke bestemme indholdet i den komprimerede fil"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Kan ikke finde operationer for brevbakke af typen %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Komprimeringskommando fejlede: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Typen på brevbakken understøttes ikke ved tilføjelse"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Kan ikke synkronisere en komprimeret fil uden en \"close-hook\""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Komprimerer %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Komprimeret-tilføjelse til %s ..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Fejl. Bevarer midlertidig fil: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Ugyldig relativ dato: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Ugyldig relativ dato: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Fejl: score: ugyldigt tal"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Ugyldig værdi for tilvalget %s: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Ugyldig måned: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funktionen er ikke tilladt ved vedlægning af bilag."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Fejl: score: ugyldigt tal"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Fejl: score: ugyldigt tal"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Ugyldig relativ dato: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Ugyldig værdi for tilvalget %s: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Fejl: 'værdien \"%s\" er ugyldig til -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: ukendt variabel"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Ugyldig relativ dato: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Ugyldig relativ dato: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Brugernavn på %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Adgangskode for %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Ingen forespørgsels-kommando defineret"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1346,7 +1604,7 @@ msgstr "Forbinder til %s ..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Kunne ikke forbinde til %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "ukendt fejl"
+
+@@ -1360,23 +1618,23 @@ msgstr "Kommunikationsfejl med server %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Forbindelse til %s er lukket"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Ukendt SASL-profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Fejl ved tildeling af SASL-forbindelse"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Fejl ved indstilling af sikkerhedsegenskaber for SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Fejl ved indstilling af ekstern sikkerhedsstyrke for SASL"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Fejl ved indstilling af eksternt brugernavn for SASL"
+
+@@ -1389,133 +1647,109 @@ msgstr "\"Preconnect\"-kommando slog fejl"
+ msgid "Connection to %s closed"
+ msgstr "Forbindelse til %s er lukket"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Fylder entropipuljen: %s ..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s har usikre tilladelser"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL deaktiveret pga. mangel på entropi"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Ukendt"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[kan ikke beregne]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[ugyldig dato]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Server-certifikat er endnu ikke gyldigt"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Server-certifikat er udløbet"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Kunne ikke finde nok entropi på dit system"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "kan ikke hente certifikatets \"subject\""
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "kan ikke finde certifikatets \"common name\""
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "der er ikke sammenfald mellem ejer af certifikat og værtsnavn %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Dette certifikat tilhører:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Dette certifikat er udstedt af:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Dette certifikat er gyldigt"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " fra %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " til %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-fingeraftryk: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA1-fingeraftryk: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Kontrol af SSL-certifikat (certifikat %zu af %zu i kæde)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "avgs"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(a)fvis, (g)odkend denne gang, (v)arig godkendelse, (s)pring over"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(a)fvis, (g)odkend denne gang, (v)arig godkendelse"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(a)fvis, (g)odkend denne gang, (s)pring over"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(a)fvis, (g)odkend denne gang"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Afslut "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Advarsel: Kunne ikke gemme certifikat"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certifikat gemt"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Kontrol af certifikat-vært fejlede: %s"
+@@ -1523,15 +1757,15 @@ msgstr "Kontrol af certifikat-vært fejlede: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Advarsel: Kunne ikke sætte værtsnavn for TLS SNI"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O-fejl"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL slog fejl: %s"
+@@ -1539,89 +1773,73 @@ msgstr "SSL slog fejl: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Kan ikke skabe SSL-kontekst"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Advarsel: fejl ved aktivering af ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Ude af stand til at hente certifikat fra server"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Fejl under godkendelse af certifikat (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certifikat er ikke X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Kan ikke klargøre gnutls-certifikatdata"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Fejl under behandling af certifikatdata"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ADVARSEL: Server-certifikat er endnu ikke gyldigt"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ADVARSEL: Server-certifikat er udløbet"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ADVARSEL: Server-certifikat er blevet tilbagekaldt"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ADVARSEL: Værtsnavn på server matcher ikke certifikat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "ADVARSEL: Undskriver af servercertifikat er ikke autoriseret (CA)"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
+-msgid "Warning: Server certificate was signed using an insecure algorithm"
+-msgstr "Advarsel: Servercertifikat blev underskrevet med en usikker algoritme"
+-
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "agv"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ag"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
++msgid "Warning: Server certificate was signed using an insecure algorithm"
++msgstr "Advarsel: Servercertifikat blev underskrevet med en usikker algoritme"
++
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Alle tilgængelige protokoller for TLS/SSL-forbindelse deaktiveret"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Eksplicit ciphersuite-valg via $ssl_ciphers ikke understøttet"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-forbindelse bruger %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Fejl: ingen åben TLS-socket"
+
+@@ -1640,38 +1858,18 @@ msgstr "Fejl i tunnel under kommunikation med %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel til %s returnerede fejl %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Intet tilgængeligt dekrypteringsprogram til brev"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ja"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nej"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Afslut NeoMutt øjeblikkeligt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Tryk på en tast for at fortsætte ..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' for en liste): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1693,7 +1891,7 @@ msgstr ""
+ "~M breve samme som ~m, men inkl. brevhoved\n"
+ "~p udskriv brevet\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1715,20 +1913,20 @@ msgstr ""
+ "~? denne besked\n"
+ ". på en linje for sig selv afslutter input\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: ugyldigt brevnummer.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Afslut brevet med et '.' på en linje for sig selv).\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Ingen brevbakke.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Brevet indeholder:\n"
+
+@@ -1736,19 +1934,19 @@ msgstr "Brevet indeholder:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(fortsæt)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "manglende filnavn.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Ingen linjer i brevet.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: ukendt editor-kommando (~? for hjælp)\n"
+@@ -1795,19 +1993,73 @@ msgstr "Kan ikke føje til brevbakke: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "brev med flere dele har ingen \"boundary\"-parameter"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Trådning er ikke i brug"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Sæt statusindikator"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Fjern statusindikator"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: farve er ikke understøttet af terminal"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: ukendt farve"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: ukendt objekt"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: ukendt attribut"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "standard-farver er ikke understøttet"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Fejl: score: ugyldigt tal"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ja"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nej"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Afslut NeoMutt øjeblikkeligt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Tryk på en tast for at fortsætte ..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' for en liste): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1828,23 +2080,23 @@ msgstr "[-- Autovisning ved brug af %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Starter autovisning kommando: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Kan ikke oprette filter"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Kan ikke køre %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Fejl fra autovisning af %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Fejl: \"message/external-body\" har ingen \"access-type\"-parameter --]\n"
+
+@@ -1863,7 +2115,7 @@ msgstr "[-- Fejl: \"message/external-body\" har ingen \"access-type\"-parameter
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1892,7 +2144,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1906,7 +2158,7 @@ msgstr[1] "[-- Denne %s/%s-del (på %s bytes) er blevet slettet --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1918,12 +2170,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Denne %s/%s-del er blevet slettet --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- navn %s --]\n"
+@@ -1931,7 +2183,7 @@ msgstr "[-- navn %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1946,7 +2198,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1955,94 +2207,94 @@ msgstr ""
+ "[-- Denne %s/%s-del er ikke medtaget, --]\n"
+ "[-- og den angivne \"access-type\" %s er ikke understøttet --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Fejl: Kunne ikke vise nogen del af \"Multipart/Alternative\" --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Brevdel #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Brevdel #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "En eller flere dele af dette brev kunne ikke vises"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Kan ikke åbne midlertidig fil"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Kan ikke åbne midlertidig fil"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Fejl: \"multipart/signed\" har ingen \"protocol\"-parameter"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Dette er et bilag (brug '%s' for vise denne brevdel) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s er ikke understøttet (brug '%s' for vise denne brevdel) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Dette er et bilag ('view-attachments' må tildeles en tast) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s er ikke understøttet ('view-attachments' må tildeles en tast) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Dette er et bilag --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s er ikke understøttet --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "FEJL: vær venlig at rapportere denne fejl"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<UKENDT>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Almene tastetildelinger:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funktioner uden tastetildelinger:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Hjælp for %s"
+@@ -2059,41 +2311,41 @@ msgstr "genvejstaste til brevbakke udfoldet til tomt regulært udtryk"
+ msgid "badly formatted command string"
+ msgstr "fejlformateret kommandostreng"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Kan ikke foretage unhook * inde fra en hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: ukendt hooktype: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Kan ikke slette en %s inde fra en %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: ukendt menu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: ukendt menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: ukendt menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Kunne ikke oprette midlertidig fil %s"
+@@ -2131,28 +2383,28 @@ msgstr "GSSAPI-godkendelse slog fejl"
+ msgid "LOGIN disabled on this server"
+ msgstr "Der er spærret for indlogning på denne server"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Logger ind ..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Login slog fejl"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Godkender (OAUTHBEARER) ..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-godkendelse slog fejl"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Godkender (%s) ..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-godkendelse fejlede"
+
+@@ -2199,90 +2451,80 @@ msgstr "Omdøbning slog fejl: %s"
+ msgid "Mailbox renamed"
+ msgstr "Brevbakke omdøbt"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Brevbakke %s@%s lukket"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Forbindelse til %s fik timeout"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Forældet IMAP-server. NeoMutt kan ikke bruge den."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Headersøgning uden et headernavn: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE fejlede: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Lukker forbindelsen til %s ..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Sikker forbindelse med TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Kunne ikke opnå TLS-forbindelse"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Krypteret forbindelse ikke tilgængelig"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Abonnerer på %s ..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Afmelder %s ..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Abonnerer på %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Afmeldt fra %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopierer %d breve til %s ..."
+ msgstr[1] "Kopierer %d breve til %s ..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Opret %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Sletning slog fejl"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2290,44 +2532,44 @@ msgstr[0] "Markerer %d breve slettet ..."
+ msgstr[1] "Markerer %d breve slettet ..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Gemmer ændrede breve ... [%d/%d]"
+ msgstr[1] "Gemmer ændrede breve ... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Fejl ved gemning af statusindikatorer. Luk alligevel?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Fejl ved gemning af statusindikatorer"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Sletter breve på server ..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE slog fejl"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Vælger %s ..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Fejl ved åbning af brevbakke"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP-server understøtter ikke godkendelse"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Ugyldigt "
+@@ -2338,7 +2580,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Ikke mere hukommelse"
+
+@@ -2358,7 +2600,7 @@ msgstr "Henter brevhoveder ..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Kan ikke hente brevhoveder fra denne version IMAP-server"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Henter brevhoveder ..."
+
+@@ -2371,156 +2613,156 @@ msgstr "Uploader brev ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopierer brev %d til %s ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Henter brev ..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Brevindekset er forkert. Prøv at genåbne brevbakken."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Fortsæt?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Afslut"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Gem"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Send"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Svar"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Gruppe"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Opfølg til %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Ingen brevbakke er åben"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Der er ingen breve"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Ingen synlige breve"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Brevbakken er skrivebeskyttet"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funktionen er ikke tilladt ved vedlægning af bilag"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Operationen er ikke tilladt af ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Kan ikke skrive til en skrivebeskyttet brevbakke"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Ændringer i brevbakken vil blive skrevet til disk, når den forlades"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Ændringer i brevbakken vil ikke blive skrevet til disk"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s er ingen brevbakke"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Brevbakke ændret udefra. Statusindikatorer kan være forkerte."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Nye breve i denne brevbakke"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Brevbakke ændret udefra"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Ingen breve er udvalgt"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Intet at gøre"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Anfør nøgle-ID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Første brev i tråden er ikke synligt i denne afgrænsede oversigt"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Sletter breve på server ..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "slet alle breve i tråd"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Hop til brev: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Parameter skal være nummeret på et brev"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Ugyldigt brevnummer"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Brevet er ikke synligt"
+
+@@ -2533,38 +2775,38 @@ msgstr "Brevet er ikke synligt"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Kan ikke slette brev"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Slet breve efter mønster: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Intet afgrænsningsmønster er i brug"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Afgrænsning: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Afgræns til breve efter mønster: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Afgræns til \"all\" for at se alle breve"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Afslut NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Udvælg breve efter mønster: "
+
+@@ -2572,204 +2814,204 @@ msgstr "Udvælg breve efter mønster: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Kan ikke fortryde sletning af brev"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Behold breve efter mønster: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Fjern valg efter mønster: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Logget ud fra IMAP-servere"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Intet emne, afbryder"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP-server understøtter ikke godkendelse"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Intet emne, afbryder"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Intet emne, afbryder"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Åbn brevbakke i skrivebeskyttet tilstand"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Åbn brevbakke"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Ingen brevbakker med nye breve"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Åbn brevbakke i skrivebeskyttet tilstand"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Afslut NeoMutt uden at gemme?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Kan ikke sammenkæde tråde"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Tråden er brudt"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Tråden må ikke være brudt, brevet er ikke en del af en tråd"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Kan ikke sammenkæde tråde"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Ingen Message-ID: i brevhoved er tilgængelig til at sammenkæde tråde"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Markér et brev til sammenkædning som det første"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Tråde sammenkædet"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Ingen tråd sammenkædet"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Du er ved sidste brev"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Alle breve har slette-markering"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Du er ved første brev"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Ingen nye breve i denne afgrænsede oversigt"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Ingen nye breve"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Ingen ulæste breve i denne afgrænsede oversigt"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Ingen ulæste breve"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Søgning fortsat fra top"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Søgning fortsat fra bund"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Kan ikke give brev statusindikator"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Kan ikke skifte mellem ny/ikke-ny"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Ikke flere tråde"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Du er ved den første tråd"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Tråden indeholder ulæste breve"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Kan ikke slette brev"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Kan ikke redigere brev"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2779,7 +3021,7 @@ msgstr[1] "%d etiketter ændret"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Ingen etiketter ændret"
+
+@@ -2787,277 +3029,140 @@ msgstr "Ingen etiketter ændret"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Kan ikke markere breve som læst"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Tryk makro-tast: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "brevets genvejstast"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Brevet er tildelt %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Ingen brev-ID for makro"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Kan ikke fortryde sletning af brev"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Fejl i kommandolinje: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Fejl i kommandolinje: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "kan ikke bestemme nodenavn via uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: intet gruppenavn"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "parametre slap op"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Fejl i %s, linje %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Fejl i %s, linje %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: Fejl i %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: læsning afbrudt pga. for mange fejl i %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: Fejl i %s"
+-msgstr[1] "source: Fejl i %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: Ingen adresse"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Advarsel: Forkert IDN '%s' i alias '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "vedlæg bilag: ingen beskrivelse"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "ret brevdelens beskrivelse"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "vedlæg bilag: ugyldig beskrivelse"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: mangler -rx eller -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: advarsel: forkert IDN \"%s\""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "ugyldig linje i brevhoved"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: ukendt variabel"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s er ikke sat"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: Fejl ved %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Brevene kunne ikke udskrives"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: intet mønster matcher"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: intet mønster matcher"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Abonnerer på %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Intet emne er angivet."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "fjern bilag: ingen beskrivelse"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "fjern bilag: ugyldig beskrivelse"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Afmeldt fra %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: Ukendt kommando"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Ugyldig værdi for tilvalget %s: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funktionen er ikke tilladt ved vedlægning af bilag."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Makro-sløjfe opdaget"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Tasten er ikke tillagt en funktion"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tasten er ikke tillagt en funktion. Tast '%s' for hjælp."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: tom tastesekvens"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: tom tastesekvens"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: ingen parametre"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: ukendt funktion"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Anfør nøgler (^G afbryder): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Tegn = %s, oktalt = %o, decimalt = %d"
+@@ -3081,7 +3186,7 @@ msgstr "ingen mailcap-angivelse for type %s"
+ msgid "Scanning %s..."
+ msgstr "Skanner %s ..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Læser %s ..."
+@@ -3096,13 +3201,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): kan ikke sætte tidsstempel på fil"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Skriver %s ..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3125,7 +3230,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3168,54 +3273,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Kan ikke klargøre terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "kan ikke bestemme brugernavn"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "kan ikke bestemme hjemmekatalog"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Fejl: 'værdien \"%s\" er ugyldig til -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Kunne ikke fortolke mailto:-link"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Ingen angivelse af modtagere"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Kan ikke bruge tilvalget -E sammen med standardinddata"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Kan ikke åbne brev: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: kunne ikke vedlægge fil"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Ingen brevbakke med nye breve"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Ingen indbakker er defineret"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Brevbakken er tom"
+
+@@ -3257,52 +3362,52 @@ msgstr "Kunne ikke genåbne brevbakke"
+ msgid "Can't write message"
+ msgstr "Kan ikke skrive brev"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Hop til: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Ugyldigt indeksnummer"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Ingen punkter"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Du kan ikke komme længere ned"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Du kan ikke komme længere op"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Du er på den første side"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Du er på den sidste side"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Du er på sidste listning"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Du er på første listning"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Søg efter: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Søg baglæns efter: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ikke fundet"
+
+@@ -3345,20 +3450,20 @@ msgstr "Venter på flock-lås ... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Fejlformateret historikfil (linje %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Kan ikke oprette midlertidig fil"
+
+@@ -3377,7 +3482,7 @@ msgstr "Fejlfinder på niveau %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Fejlfinder på niveau %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Fejl under forbindelse til server: %s"
+@@ -3401,17 +3506,17 @@ msgstr "Modtog signal %d (%s) ... Afslutter.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Modtog signal %d ... Afslutter.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3419,148 +3524,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Filen er et filkatalog; gem i det? (j)a, (n)ej, (a)lle"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "jna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Filen er et filkatalog, gem i det?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Fil i dette filkatalog: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Filen eksisterer , (o)verskriv, (t)ilføj, (a)nnulér?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "ota"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Kan ikke gemme brev i POP-brevbakke"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Føj breve til %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Kunne ikke efterlade breve på server"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Brugernavn på %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Adgangskode for %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Ingen forespørgsels-kommando defineret"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Kan ikke matche navneskabelon, fortsæt?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Brug af \"compose\" i mailcap-fil kræver %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Kan ikke åbne fil for at analysere brevhovedet"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Kan ikke åbne fil for at fjerne brevhovedet"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Omdøbning af fil slog fejl"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Ingen \"compose\"-regel for %s i mailcap-fil, opretter en tom fil"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Brug af \"edit\" i mailcap-fil kræver %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Ingen \"edit\"-regel for %s i mailcap-fil"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Ingen passende mailcap-regler fundet. Viser som tekst."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-typen er ikke defineret. Kan ikke vise bilag."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Kommando: %-20.20s Beskrivelse: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Kommando: %-30.30s Bilag: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Bilag: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Bilag: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Skrivefejl"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Jeg ved ikke hvordan man udskriver dette"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Søg"
+
+@@ -3569,21 +3646,21 @@ msgstr "Søg"
+ msgid "History '%s'"
+ msgstr "Forespørgsel: '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Ugyldig værdi for tilvalget %s: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Kunne ikke låse %s.\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Ny post i "
+
+@@ -3604,20 +3681,20 @@ msgstr "Første brev i tråden er ikke synligt i denne afgrænsede oversigt"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Forrige brev i tråden er ikke synligt i afgrænset oversigt"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Søgning afbrudt."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Kan ikke vedlægge %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3628,69 +3705,69 @@ msgstr[1] "brev(e) som ikke blev slettet"
+ msgid "Can't open trash folder"
+ msgstr "Kan ikke åbne papirkurv"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Flyt %d læste breve til %s?"
+ msgstr[1] "Flyt %d læste breve til %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Fjern %d slettet brev?"
+ msgstr[1] "Fjern %d slettede breve?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Flytter læste breve til %s ..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Brevbakken er uændret"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d beholdt, %d flyttet, %d slettet"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d beholdt, %d slettet"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Tast '%s' for at skifte til/fra skrivebeskyttet tilstand"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Brug 'toggle-write' for at muliggøre skrivning"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Brevbakken er skrivebeskyttet. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Brevbakke opdateret"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (aktuelt tidspunkt: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s uddata følger%s --]\n"
+@@ -3699,52 +3776,52 @@ msgstr "[-- %s uddata følger%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Har glemt løsen(er)"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Integreret PGP kan ikke bruges sammen med bilag. Brug PGP/MIME i stedet?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Brev ikke sendt: integreret PGP kan ikke bruges sammen med bilag"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Integreret PGP kan ikke bruges sammen med format=flowed. Brug PGP/MIME i stedet?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Brev ikke sendt: integreret PGP kan ikke bruges sammen med format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Starter PGP ..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Brevet kan ikke sendes integreret. Brug PGP/MIME i stedet?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Brev ikke sendt"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-breve uden antydning om indhold er ikke understøttet"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Forsøger at udtrække PGP-nøgler ...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Forsøger at udtrække S/MIME-certifikater ..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3753,7 +3830,7 @@ msgstr ""
+ "[-- Fejl: Ukendt \"multipart/signed\" protokol %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3761,14 +3838,14 @@ msgstr ""
+ "[-- Fejl: Manglende eller misdannet \"multipart/signed\"-undeskrift! --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+ "\n"
+ msgstr "[-- Advarsel: %s/%s underskrifter kan ikke kontrolleres. --]\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3776,13 +3853,13 @@ msgstr ""
+ "[-- Følgende data er underskrevet --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+ msgstr "[-- Advarsel: Kan ikke finde nogen underskrifter. --]\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3801,256 +3878,261 @@ msgstr "Starter S/MIME ..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Navn: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Gyldig fra: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Gyldig til: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Nøgletype: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Nøgleanvendelse: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingeraftryk ....: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Serienummer: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Udstedt af: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Delnøgle: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "fejl ved aktivering af CMS-protokol: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "dannelse af gpgme-dataobjekt fejlede: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "tildeling af dataobjekt fejlede: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "fejl ved tilbagespoling af dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "fejl ved læsning af dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "tilføjelse af modtager fejlede \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "hemmelig nøgle \"%s\" ikke fundet: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "tvetydig specifikation af hemmelig nøgle \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "fejl ved indstilling af hemmelig nøgle \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "fejl ved indstilling af PKA-underskrifts notation: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "fejl ved kryptering af data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "fejl ved underskrivelse af data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as er ikke indstilet, og ingen standardnøgle er anført i ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Advarsel: En af nøglerne er blevet tilbagekaldt\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Advarsel: Nøglen som underskriften oprettedes med er udløbet den: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Advarsel: Mindst en certificeringsnøgle er udløbet\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Advarsel: Undskriftens gyldighed udløb den: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Kan ikke verificere p.g.a. manglende nøgle eller certifikat\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL er ikke tilgængelig.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Tilgængelig CRL er for gammel\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Et policy-krav blev ikke indfriet\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "En systemfejl opstod"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "ADVARSEL: PKA-nøgle matcher ikke underskrivers adresse: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Underskrivers PKA-verificerede adresse er: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "ADVARSEL: Vi har INGEN indikation på om Nøglen tilhører personen med det ovenfor viste navn\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ADVARSEL: Nøglen TILHØRER IKKE personen med det ovenfor viste navn\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ADVARSEL: Det er IKKE sikkert at nøglen personen med det ovenfor viste navn\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "KeyID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "oprettet: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Fejl ved indhentning af information for KeyID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "God underskrift fra:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*DÅRLIG* underskrift fra:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematisk underskrift fra:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " udløber: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Begyndelse på underskriftsinformation --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Fejl: verificering fejlede: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Begyndelse på påtegnelse (underskrift af: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Slut på påtegnelse ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+ msgstr "[-- Slut på underskriftsinformation --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Fejl: dekryptering fejlede: %s --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Fejl ved eksportering af nøgle: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Fejl: dekryptering/verificering fejlede: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Vellykket dekryptering af PGP-brev"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Fejl: kopiering af data fejlede\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4058,11 +4140,11 @@ msgstr ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4070,19 +4152,19 @@ msgstr ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- END PGP MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- END PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- END PGP SIGNED MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4090,11 +4172,11 @@ msgstr ""
+ "[-- Fejl: kunne ikke finde begyndelse på PGP-meddelelsen --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Fejl: Kunne ikke oprette en midlertidig fil --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4102,7 +4184,7 @@ msgstr ""
+ "[-- Følgende data er underskrevet og krypteret med PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4110,24 +4192,20 @@ msgstr ""
+ "[-- Følgende data er PGP/MIME-krypteret --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Slut på PGP/MIME-underskrevne og -krypterede data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Slut på PGP/MIME-krypteret data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Vellykket dekryptering af PGP-brev"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Kunne ikke dekryptere PGP-brev"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4135,40 +4213,40 @@ msgstr ""
+ "[-- Følgende data er S/MIME-underskrevet --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+ msgstr "[-- Følgende data er krypteret med S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Slut på S/MIME-underskrevne data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Slut på S/MIME-krypteret data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Kan ikke vise denne bruger-id (ukendt indkodning)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Kan ikke vise denne bruger-id (ugyldig indkodning)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Kan ikke vise denne bruger-id (ugyldig DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Ugyldigt]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4176,94 +4254,94 @@ msgstr[0] "%s, %lu-bit %s\n"
+ msgstr[1] "%s, %lu-bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "kryptering"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "underskrivning"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certificering"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Tilbagekaldt]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Udløbet]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Deaktiveret]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Samler data ..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Kunne ikke finde udsteders nøgle: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Fejl: certificeringskæde er for lang - stopper her\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Nøgle-id: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start fejlede: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next fejlede: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Alle matchende nøgler er markeret som udløbet/tilbagekaldt"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Udvælg "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Undersøg nøgle "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP- og S/MIME-nøgler som matcher"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-nøgler som matcher"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-nøgler som matcher"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "nøgler som matcher"
+
+@@ -4271,59 +4349,59 @@ msgstr "nøgler som matcher"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Denne nøgle kan ikke bruges: udløbet/sat ud af kraft/tilbagekaldt"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Id er udløbet/ugyldig/ophævet. Vil du virkelig anvende nøglen?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Id er ikke bevist ægte. Vil du virkelig anvende nøglen?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Id er kun bevist marginalt ægte. Vil du virkelig anvende nøglen?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Ægthed af id er ubestemt. Vil du virkelig anvende nøglen?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Leder efter nøgler, der matcher \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Anvend nøgle-id = \"%s\" for %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Anfør nøgle-id for %s: "
+@@ -4332,15 +4410,15 @@ msgstr "Anfør nøgle-id for %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Ingen hemmelige nøgler fundet"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Anfør venligst nøgle-id: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Fejl ved eksportering af nøgle: %s"
+@@ -4348,92 +4426,92 @@ msgstr "Fejl ved eksportering af nøgle: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-nøgle 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP-protokol utilgængelig"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS-protokol utilgængelig"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (u)nderskriv, underskriv (s)om, (p)gp, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "uspyo"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (u)nderskriv, underskriv (s)om, s/(m)ime, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "usmyo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, (p)gp, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "kusbpyo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, s/(m)ime, r(y)d eller (o)ppenc-tilstand?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "kusbmyo"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, (p)gp, eller r(y)d?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "kusbpy"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, s/(m)ime, eller r(y)d?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "kusbmy"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Kunne ikke verificere afsender"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Kunne ikke bestemme afsender"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Anfør PGP-løsen:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Fejl: kan ikke skabe en PGP-delproces --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4444,15 +4522,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-brev er ikke krypteret."
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Intern fejl. Indsend venligst en fejlrapport."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4460,129 +4538,129 @@ msgstr ""
+ "[-- Fejl: Kunne ikke skabe en PGP-delproces --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Dekryptering slog fejl"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Kan ikke åbne PGP-delproces"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Kan ikke starte PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)ntegreret"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (u)nderskriv, underskriv (s)om, %s-format, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "usiyo"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (u)nderskriv, underskriv (s)om, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "usyo"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, %s-format, r(y)d eller (o)ppenc-tilstand?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "kusbiyo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, r(y)d eller (o)ppenc-tilstand?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "kusbyo"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, %s-format, r(y)d "
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "kusbiy"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge eller r(y)d?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "kusby"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Henter PGP-nøgle ..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Alle matchende nøgler er sat ud af kraft, udløbet eller tilbagekaldt"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-nøgler som matcher <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-nøgler som matcher \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Kan ikke åbne /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-nøgle %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Anfør S/MIME-løsen:"
+
+@@ -4591,7 +4669,7 @@ msgstr "Anfør S/MIME-løsen:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Udløbet "
+
+@@ -4600,7 +4678,7 @@ msgstr "Udløbet "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Ugyldigt "
+
+@@ -4609,7 +4687,7 @@ msgstr "Ugyldigt "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Tilbagekaldt "
+
+@@ -4618,7 +4696,7 @@ msgstr "Tilbagekaldt "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Betroet "
+
+@@ -4627,7 +4705,7 @@ msgstr "Betroet "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Ikke kontrolleret"
+
+@@ -4636,7 +4714,7 @@ msgstr "Ikke kontrolleret"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Kontrolleret "
+
+@@ -4645,59 +4723,59 @@ msgstr "Kontrolleret "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Ukendt "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-certifikater som matcher \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Id er ikke betroet. Vil du virkelig anvende nøglen?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Anfør nøgle-ID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Fandt ikke et (gyldigt) certifikat for %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Fejl: kan ikke skabe en OpenSSL-delproces"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Certifikatets etiket: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "ingen certfil"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "ingen afsender-adresse"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Ingen uddata fra OpenSSL ..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Kan ikke underskrive: Ingen nøgle er angivet. Brug \"underskriv som\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Kan ikke åbne OpenSSL-delproces"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4705,19 +4783,19 @@ msgstr ""
+ "[-- Slut på OpenSSL-uddata --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Fejl: kan ikke skabe en OpenSSL-delproces --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Følgende data er S/MIME-krypteret --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Følgende data er S/MIME-underskrevet --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4725,7 +4803,7 @@ msgstr ""
+ "\n"
+ "[-- Slut på S/MIME-krypteret data --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4734,168 +4812,168 @@ msgstr ""
+ "[-- Slut på S/MIME-underskrevne data --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (u).skriv, kryptér (m)ed, u.skriv (s)om, r(y)d eller (o)ppenc-tilstand fra?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "umsyo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (k)ryptér, (u).skriv, kryptér (m)ed, u.skriv (s)om, (b)egge, r(y)d eller (o)ppenc-tilstand?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "kumsbyo"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (k)ryptér, (u).skriv, kryptér (m)ed, u.skriv (s)om, (b)egge, r(y)d?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "kumsby"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Vælg algoritme-familie: (1) DES, (2) RC2, (3) AES, eller r(y)d?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123y"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s er en ugyldig POP-sti"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Serveren afbrød forbindelsen"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP-server understøtter ikke godkendelse"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Ingen godkendelsesmetode kan bruges"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL-godkendelse slog fejl"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Forbindelse til %s er lukket"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Henter liste over breve ..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Kigger efter nye breve ..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "kunne ikke skrive til midlertidig brevbakke: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Forbinder til %s ..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Intet at gøre"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Kan ikke finde filen %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Sletter breve på server ..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Logger ind ..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Kigger efter nye breve ..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s er en ugyldig POP-sti"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4907,7 +4985,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Kunne ikke fortolke mailto:-link\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6036,187 +6114,187 @@ msgstr "gør sidepanelet (u)synligt"
+ msgid "show S/MIME options"
+ msgstr "vis tilvalg for S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Funktion er ikke tilgængelig i denne menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Side op"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Side ned"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Vis brevdel."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Næste"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Bunden af brevet vises"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Toppen af brevet vises"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Hjælpeskærm vises nu"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Ikke mere citeret tekst"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Ikke mere uciteret tekst efter citeret tekst"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Fejl i udtryk: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Tomt udtryk"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Ingen forespørgsels-kommando defineret"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Starter autovisning kommando: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Ugyldig dag: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Ugyldig måned: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Ugyldig relativ dato: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Ingen ulæste breve."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Fejl ved åbning af brevbakke"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Fejl ved åbning af brevbakke"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Kan ikke åbne /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "fejl i mønster ved: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "manglende mønster: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "parenteser matcher ikke: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: ugyldig modifikator af søgemønster"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: er ikke understøttet i denne tilstand"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "manglende parameter"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "tomt mønster"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "fejl: ukendt op %d (rapportér denne fejl)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Klargør søgemønster ..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Udfører kommando på matchende breve ..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ingen breve opfylder kriterierne"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Søger ..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Søgning er nået til bunden uden resultat"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Søgning nåede toppen uden resultat"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Søgning afbrudt"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Kommandoen TOP understøttes ikke af server"
+
+@@ -6224,7 +6302,7 @@ msgstr "Kommandoen TOP understøttes ikke af server"
+ msgid "Can't write header to temporary file"
+ msgstr "Kan ikke skrive brevhoved til midlertidig fil"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Kommandoen UIDL er ikke understøttet af server"
+
+@@ -6239,7 +6317,7 @@ msgstr[1] "%d breve er gået tabt. Prøv at genåbne brevbakken."
+ msgid "POP host is not defined"
+ msgstr "Ingen POP-server er defineret"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s er en ugyldig POP-sti"
+@@ -6272,153 +6350,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d af %d breve læst]"
+ msgstr[1] "%s [%d af %d breve læst]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Henter liste over breve ..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Giver breve slettemarkering ..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Kan ikke skrive brev til midlertidig fil"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Godkender (SASL) ..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP-tidsstempel er ugyldigt"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Godkender (APOP) ..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP-godkendelse slog fejl"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Kommandoen USER er ikke understøttet af server"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL-godkendelse fejlede"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Ugyldig POP-URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Kunne ikke efterlade breve på server"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Fejl under forbindelse til server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Lukker forbindelsen til POP-server ..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Efterkontrollerer brevfortegnelser ..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Mistede forbindelsen. Opret ny forbindelse til POP-server?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Tilbageholdte breve"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Ingen tilbageholdte breve"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Ugyldig S/MIME-header"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Ugyldig crypto-header"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Dekrypterer brev ..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Ny forespørgsel"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Opret alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Venter på svar ..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Forespørgsel: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Forespørgsel: '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Ingen forespørgsels-kommando defineret"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Overfør til program"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Udskriv"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Gemmer ..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Bilag gemt"
+ msgstr[1] "Bilag gemt"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ADVARSEL! Fil %s findes, overskriv?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Brevdel filtreret"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrér gennem: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Overfør til kommando (pipe): "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Jeg ved ikke hvordan man udskriver %s-brevdele"
+@@ -6426,56 +6504,56 @@ msgstr "Jeg ved ikke hvordan man udskriver %s-brevdele"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Udskriv udvalgte brevdel(e)?"
+ msgstr[1] "Udskriv udvalgte brevdel(e)?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Udskriv brevdel?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Strukturelle ændringer i dekrypterede bilag understøttes ikke"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Kan ikke dekryptere krypteret brev"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Brevdele"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Der er ingen underdele at vise"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Kan ikke slette bilag fra POP-server"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Kan ikke slette bilag fra POP-server"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Sletning af brevdele fra krypterede breve er ikke understøttet"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Sletning af brevdele fra underskrevne breve kan gøre underskriften ugyldig"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Sletning af brevdele fra udelte breve er ikke understøttet"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Du kan kun gensende message/rfc822-brevdele"
+
+@@ -6512,7 +6590,7 @@ msgstr "Kan ikke oprette %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Kan ikke finde nogen udvalgte breve"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Ingen postlister fundet"
+
+@@ -6527,67 +6605,67 @@ msgstr "Kan ikke afkode alle udvalgte brevdele. MIME-indkapsl de øvrige?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Du kan kun gensende message/rfc822-brevdele"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Tilføj"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Indsæt"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Kan ikke hente mixmasters type2.liste"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Vælg en genposterkæde"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Fejl: %s kan ikke være sidste led i kæden"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Kæden må højst have %d led"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Genposterkæden er allerede tom"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Du har allerede valgt kædens første led"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Du har allerede valgt kædens sidste led"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Breve sendt med Mixmaster må ikke have Cc- eller Bcc-felter"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Sæt hostname-variablen til en passende værdi ved brug af mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Fejl ved afsendelse af brev, afslutningskode fra barneproces: %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Fejl ved afsendelse af brev"
+
+@@ -6617,41 +6695,41 @@ msgstr "Videresend bilag?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Svar til %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Opfølg til %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Citér brevet i svar?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Inkluderer citeret brev ..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Kunne ikke citere alle ønskede breve"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Videresend som bilag?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Forbereder brev til videresendelse ..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc til en IMAP-brevbakke understøttes ikke i batch-tilstand"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Gem bilag i Fcc?"
+
+@@ -6659,195 +6737,195 @@ msgstr "Gem bilag i Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc fejlede. forsøg (i)gen, alternativ (b)revbakke, eller (a)fbryd? "
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "iba"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc-brevbakke"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Kan ikke udsætte. Variablen $postponed er ikke sat"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Genindlæs tilbageholdt brev?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Redigér brev før videresendelse?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Annullér uændret brev?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Annullerede uændret brev"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Ingen krypteringsressource er konfigureret. Deaktiverer brevets sikkerhedsindstilling."
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Brev ikke sendt"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Brev tilbageholdt"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Intet emne, undlad at sende?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Intet emne er angivet"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Intet emne er angivet"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "ret brevdelens indkodning"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Sender brev ..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Kunne ikke sende brevet"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Sender i baggrunden"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Brev sendt"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Fandt ingen \"boundary\"-parameter [rapportér denne fejl]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s eksisterer ikke mere"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s er ikke en almindelig fil"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Kunne ikke sende brevet."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Kunne ikke åbne %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail skal sættes for at sende post"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Fejl %d under afsendelse af brev (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Uddata fra leveringsprocessen"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Forkert IDN %s under forberedelse af af \"Resent-From\"-felt"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-session fejlede: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-session fejlede: kunne ikke åbne %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Ugyldig SMTP-URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s-godkendelse fejlede, prøver næste metode"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI-godkendelse slog fejl"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-server understøtter ikke godkendelse"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Afsenderadresse ikke anført"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-session fejlede: læsningsfejl"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-session fejlede: skrivningsfejl"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Ugyldigt svar fra server"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Sorterer brevbakke ..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Kunne ikke finde sorteringsfunktion [rapportér denne fejl]"
+
+@@ -6915,11 +6993,71 @@ msgstr ""
+ "NeoMutt er et frit program, og du er velkommen til at redistribuere det\n"
+ "under visse betingelser; tast 'neomutt -vv' for detaljer.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Tilvalg ved oversættelsen:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Tilvalg ved oversættelsen:"
++
++#~ msgid "Autocrypt account creation aborted."
++#~ msgstr "Oprettelse af autocrypt-konto afbrudt."
++
++#~ msgid "No (valid) autocrypt key found for %s."
++#~ msgstr "Fandt ikke nogen (gyldig) autocrypt-nøgle til %s."
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Fejl ved oprettelse af autocrypt-nøgle: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(o)pret ny, eller (v)ælg eksisterende GPG-nøgle? "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: (k)ryptér, (r)yd, (a)utomatisk? "
++
++#~ msgid "$send_multipart_alternative_filter is not set"
++#~ msgstr "$send_multipart_alternative_filter er ikke indstillet"
++
++#~ msgid "Cannot mark message(s) as read"
++#~ msgstr "Kan ikke markere breve som læst"
++
++#~ msgid "OAUTHBEARER authentication failed."
++#~ msgstr "OAUTHBEARER-godkendelse slog fejl."
++
++#~ msgid "Lock count exceeded, remove lock for %s?"
++#~ msgstr "Fil blokeret af gammel lås. Fjern låsen på %s?"
++
++#~ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear? "
++#~ msgstr "PGP (k)ryptér, (u)nderskriv, underskriv (s)om, (b)egge, %s-format, r(y)d?"
++
++#~ msgid "Generate multipart/alternative content?"
++#~ msgstr "Generér \"multipart/alternative\"-indhold?"
++
++#~ msgid "Missing mime type from output of \"%s\"!"
++#~ msgstr "Manglende mime-type fra uddata af \"%s\"!"
++
++#~ msgid "Missing blank line separator from output of \"%s\"!"
++#~ msgstr "Adskillelsesmarkering ved tom linje mangler fra uddata af \"%s\"!"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation."
++#~ msgstr "$send_multipart_alternative_filter understøtter ikke generering af multipart-type."
++
++#~ msgid "Bad IDN %s while preparing resent-from."
++#~ msgstr "Forkert IDN %s under forberedelse af \"Resent-From\"-felt."
++
++#~ msgid "view multipart/alternative"
++#~ msgstr "vis multipart/alternative"
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "vis multipart/alternative som tekst"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "vis multipart/alternative ved brug af mailcap"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "vælg en ny brevbakke fra katalogbrowseren"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "åbn en ny brevbakke i skrivebeskyttet tilstand fra katalogbrowseren"
+diff --git a/po/de.po b/po/de.po
+index 33fa2a449..b28f9c44a 100644
+--- a/po/de.po
++++ b/po/de.po
+@@ -14,7 +14,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-10-31 06:24+0100\n"
+ "Last-Translator: André Berger <andre.berger@web.de>\n"
+ "Language-Team: none\n"
+@@ -25,16 +25,40 @@ msgstr ""
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+ "X-Generator: Poedit 2.2.4\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(z)urückweisen, (e)inmal akzeptieren, (i)mmer akzeptieren, über(g)ehen"
++
++msgid "roas"
++msgstr "zeig"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(z)urückweisen, (e)inmal akzeptieren, (i)mmer akzeptieren"
++
++msgid "roa"
++msgstr "zei"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(z)urückweisen, (e)inmal akzeptieren, über(g)ehen"
++
++msgid "ros"
++msgstr "zeg"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(z)urückweisen, (e)inmal akzeptieren"
++
++msgid "ro"
++msgstr "ze"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Verlassen"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Entf"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Behalten"
+
+@@ -42,18 +66,18 @@ msgstr "Behalten"
+ msgid "Select"
+ msgstr "Auswählen"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Hilfe"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Keine Kurznamen vorhanden"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Kurznamen"
+
+@@ -62,51 +86,51 @@ msgstr "Kurznamen"
+ msgid "Alias as: "
+ msgstr "Kurzname anlegen: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Dieser Kurzname wird bereits verwendet"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Warnung: Dieser Kurzname könnte Probleme bereiten. Korrigieren?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresse: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Ungültige IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Ihr Name: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Akzeptieren?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Speichern in Datei: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Fehler beim Lesen der Kurznamendatei"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Problem bei Hinzufügen des Kurznamens"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Kurzname eingetragen"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Fehler bei der Suche in Kurznamendatei"
+
+@@ -115,7 +139,7 @@ msgstr "Fehler bei der Suche in Kurznamendatei"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s existiert nicht. Neu anlegen?"
+@@ -124,8 +148,8 @@ msgstr "%s existiert nicht. Neu anlegen?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Kann %s nicht anlegen: %s"
+@@ -135,7 +159,7 @@ msgstr "Kann %s nicht anlegen: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Ersten Autocrypt-Account erstellen?"
+
+@@ -144,7 +168,7 @@ msgstr "Ersten Autocrypt-Account erstellen?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Autocrypt-Account-Adresse: "
+
+@@ -153,7 +177,7 @@ msgstr "Autocrypt-Account-Adresse: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Bitte eine einzelne E-Mail-Adresse eingeben"
+
+@@ -162,7 +186,7 @@ msgstr "Bitte eine einzelne E-Mail-Adresse eingeben"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Diese E-Mail-Adresse hat bereits einen Autocrypt-Account"
+
+@@ -174,14 +198,14 @@ msgstr "Diese E-Mail-Adresse hat bereits einen Autocrypt-Account"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Verschlüsselung bevorzugen?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Autocrypt-Account-Erstellung erfolgreich"
+
+@@ -189,7 +213,7 @@ msgstr "Autocrypt-Account-Erstellung erfolgreich"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Autocrypt-Account-Erstellung abgebrochen"
+
+@@ -198,7 +222,7 @@ msgstr "Autocrypt-Account-Erstellung abgebrochen"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Kein (gültiges) Autocrypt-Zertifikat für %s gefunden"
+@@ -210,12 +234,12 @@ msgstr "Kein (gültiges) Autocrypt-Zertifikat für %s gefunden"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Mailbox nach Autocrypt-Headers durchsuchen?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Durchsuche Mailbox"
+
+@@ -226,21 +250,21 @@ msgstr "Durchsuche Mailbox"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Weitere Mailbox nach Autocrypt-Headers durchsuchen?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Erstelle"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Löschen"
+
+@@ -248,9 +272,9 @@ msgstr "Löschen"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "AktiviergSetzen"
+
+@@ -258,17 +282,17 @@ msgstr "AktiviergSetzen"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "BevorzCodierg"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "Verschlüsselung bevorzugen"
+
+@@ -277,7 +301,7 @@ msgstr "Verschlüsselung bevorzugen"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "manuell verschlüsseln"
+
+@@ -285,7 +309,7 @@ msgstr "manuell verschlüsseln"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "aktiv"
+
+@@ -293,12 +317,12 @@ msgstr "aktiv"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "inaktiv"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt-Accounts"
+
+@@ -306,12 +330,12 @@ msgstr "Autocrypt-Accounts"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Fehler bei der Aktualisierung des Account-Eintrags"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Account \"%s\" wirklich löschen?"
+@@ -329,7 +353,7 @@ msgstr "Account \"%s\" wirklich löschen?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Kann Autocrypt-Datenbank %s nicht öffnen"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "Fehler beim Erzeugen des GPGME-Kontexts: %s"
+@@ -402,469 +426,581 @@ msgstr "Die Version der Autocrypt-Datenbank zu hoch"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Nachrichten-Cache ist kein Verzeichnis %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Verzeichnis"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Gehe zu"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maske"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Liste"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Abonnieren"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Abbestellen"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Newsgroup als gelesen markieren"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s ist kein Verzeichnis"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Abonnierte Newsgroups"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Newsgroups auf Server [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Mailbox-Dateien [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Abonniert [%s], Dateimaske: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Verzeichnis [%s], Dateimaske: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Verzeichnisse können nicht angehängt werden"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Es gibt keine zur Maske passenden Dateien"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Es können nur IMAP-Mailboxen erzeugt werden"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Es können nur IMAP-Mailboxen umbenannt werden"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Es können nur IMAP-Mailboxen gelöscht werden"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Kann derzeit ausgewählte Mailbox nicht löschen"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Mailbox \"%s\" wirklich löschen?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Mailbox gelöscht"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Mailbox konnte nicht gelöscht werden"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Mailbox nicht gelöscht"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Verzeichnis wechseln nach: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Fehler beim Einlesen des Verzeichnisses"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Dateimaske: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortiere umgekehrt nach (d)atum, (a)lphabet, (g)röße, (b)eschreibung, an(z)ahl, anzahl (n)euer nachr., oder n(i)cht?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortiere nach (d)atum, (a)lphabet, (g)röße, (b)eschreibung, an(z)ahl, anzahl (n)euer nachr., oder n(i)cht?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dagbzni"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Neuer Dateiname: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Verzeichnis kann nicht angezeigt werden"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Fehler bei der Anzeige einer Datei"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Abonnieren mittels Muster: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Abbestellen mittels Muster: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Es gibt keine zur Maske passenden Newsgroups"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: Farbe wird vom Terminal nicht unterstützt"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: Farbe unbekannt"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: Objekt unbekannt"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: Zu wenige Parameter"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: Attribut unbekannt"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: Zu viele Parameter"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "Standardfarben werden nicht unterstützt"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr "Die maximale Antwortebene ist %d"
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s: ungültige Zahl: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Signatur überprüfen?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Kann keine Temporärdatei erzeugen"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Kann Filter zum Anzeigen nicht erzeugen"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Konnte Nachricht nicht kopieren"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-Unterschrift erfolgreich überprüft"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME-Zertifikatinhaber stimmt nicht mit Absender überein"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Warnung: Ein Teil dieser Nachricht wurde nicht signiert"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-Unterschrift konnte NICHT überprüft werden"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-Unterschrift erfolgreich überprüft"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-Unterschrift konnte NICHT überprüft werden"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Fehler beim Ausführen von \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Kommando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Warnung: Nachricht enthält keine From: Kopfzeile"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Nachricht neu versenden an: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Markierte Nachrichten neu versenden an: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Unverständliche Adresse"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Nachricht neu an %s versenden?"
+ msgstr[1] "Nachrichten neu an %s versenden?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Nachricht nicht neu versandt"
+ msgstr[1] "Nachrichten nicht neu versandt"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Nachricht neu versandt"
+ msgstr[1] "Nachrichten neu versandt"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Kann Filterprozess nicht erzeugen"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "In Kommando einspeisen: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Kein Druckkommando definiert"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Nachricht drucken?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Ausgewählte Nachrichten drucken?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Nachricht gedruckt"
+ msgstr[1] "Nachrichten gedruckt"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Nachricht konnte nicht gedruckt werden"
+ msgstr[1] "Nachrichten konnten nicht gedruckt werden"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Umgekehrt sortieren (d)atum/(a)bs./ei(n)g./(b)etr./(e)mpf./(f)aden/(u)nsort./(g)röße/be(w)ert./s(p)am/e(t)ikett?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sortieren (d)atum/(a)bs./ei(n)g./(b)etr./(e)mpf/(f)aden/(u)nsort./(g)röße/be(w)ert./s(p)am/e(t)ikett?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "danbefugwpt"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell-Kommando: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Speichere dekodiert in Mailbox"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Speichere ausgewählte dekodiert in Mailbox"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Speichere entschlüsselt in Mailbox"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Speichere ausgewählte entschlüsselt in Mailbox"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Speichere in Mailbox"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Speichere ausgewählte in Mailbox"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Kopiere dekodiert in Mailbox"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Kopiere ausgewählte dekodiert in Mailbox"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Kopiere entschlüsselt in Mailbox"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Kopiere ausgewählte entschlüsselt in Mailbox"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Kopiere in Mailbox"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopiere ausgewählte in Mailbox"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopiere nach %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Content-Type ist zu lang"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Konvertiere beim Senden nach %s?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type in %s abgeändert"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Zeichensatz in %s abgeändert; nicht konvertiert"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Zeichensatz in %s abgeändert; konvertiert"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: Zu wenige Parameter"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: Kein Gruppen Name"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "Zu wenige Parameter"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Fehler: Es gibt keinen Pfad zu '%s'"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Fehler: Endlosschleife beim Einlesen der Konfigurationsdatei '%s'"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Fehler in %s, Zeile %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Warnung in %s, Zeile %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: Fehler in %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: Lesevorgang abgebrochen, zu viele Fehler in %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d Warnung in %s"
++msgstr[1] "source: %d Warnungen in %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "Kurzname: fehlende Adresse"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Warnung: Ungültige IDN '%s' in Kurzname '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: keine Disposition"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Aktuelle Einstellung für Anhänge:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: ungültige disposition"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: Zu viele Parameter"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: Es fehlt -rx oder -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: Warnung: Ungültige IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Fehler: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "Ungültiges Kopffeld"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: unbekannte Variable"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s ist nicht gesetzt"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: Fehler bei %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source: Datei %s konnte nicht eingelesen werden"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "Spam: kein passendes Muster"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: kein passendes Muster"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Abonniere %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Konnte %s nicht abonnieren"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Kein Ordner angegeben"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: keine Disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: ungültige disposition"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Abonnement von %s abbestellt"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Konnte Abonnement von %s nicht abbestellen"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Es sind keine Anhänge vorhanden"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Von: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "An: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Kopie an: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Blindkopie an: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Betreff: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Antw. an: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc speichern in: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix(Master): "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Sicherheit: "
+
+@@ -875,75 +1011,75 @@ msgstr "Sicherheit: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Signiere als: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Newsgroups: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Antworte an: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Absenden"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Verwerfen"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "An"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopie"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Betr"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Datei anhängen"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Beschr"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Newsgroups"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Aus"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Nein"
+
+@@ -951,7 +1087,7 @@ msgstr "Nein"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Abgeraten"
+
+@@ -959,14 +1095,14 @@ msgstr "Abgeraten"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Verfügbar"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Ja"
+
+@@ -976,7 +1112,7 @@ msgstr "Ja"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (v)erchlüsseln, (e)ntfernen, (a)utomatisch?"
+
+@@ -984,51 +1120,51 @@ msgstr "Autocrypt: (v)erchlüsseln, (e)ntfernen, (a)utomatisch?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "vea"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Nicht unterstützt"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Signieren, Verschlüsseln"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Verschlüsseln"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Signieren"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Keine"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (Inline-PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc-Modus)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<Voreinstellung>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Verschlüsseln mit: "
+
+@@ -1037,11 +1173,11 @@ msgstr "Verschlüsseln mit: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Empfehlung: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<keine Kette definiert>"
+
+@@ -1052,7 +1188,7 @@ msgstr "<keine Kette definiert>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Anhang #%d existiert nicht mehr: %s"
+@@ -1064,232 +1200,351 @@ msgstr "Anhang #%d existiert nicht mehr: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Anhang #%d wurde verändert. Kodierung für %s anpassen?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Anhänge"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Der alleinige Nachrichtenteil kann nicht gelöscht werden"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Ungültige IDN in '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Anhang befindet sich bereits am Anfang"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Ein wesentlicher Teil kann nicht verschoben werden"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Anhang befindet sich bereits am Ende"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Gruppierung von 'multipart/alternative' erfordert wenigstens zwei markierte Nachrichten"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Gruppierung von 'multipart/multilingual' erfordert wenigstens zwei markierte Nachrichten"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Nicht alle Teile haben 'Content-Language' gesetzt, dennoch fortfahren?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Diese Nachricht wurde nicht versandt"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Hänge ausgewählte Datei an..."
+ msgstr[1] "Hänge ausgewählte Dateien an..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Kann %s nicht anhängen"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Öffne Mailbox, aus der angehängt werden soll"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Öffne Newsgroup, aus der angehängt werden soll"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Kann Mailbox %s nicht öffnen"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Keine Nachrichten in dieser Mailbox"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Bitte die Nachrichten markieren, die angehängt werden sollen"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Kann das nicht anhängen"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Ändern der Kodierung betrifft nur Textanhänge"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Der aktuelle Anhang wird nicht konvertiert werden"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Der aktuelle Anhang wird konvertiert werden"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Leeres 'Content-Language'-Feld"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Ungültige Kodierung"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Soll eine Kopie dieser Nachricht gespeichert werden?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Anhang mit folgendem Name senden: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Umbenennen in: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Kann Verzeichniseintrag für Datei %s nicht lesen: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Neue Datei: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type ist von der Art Basis-/Untertyp"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Unbekannter Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Kann Datei %s nicht anlegen"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Anhang kann nicht erzeugt werden"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Nachricht als Entwurf speichern?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Schreibe Nachricht in Mailbox"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Schreibe Nachricht nach %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Nachricht geschrieben"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Kein PGP-Backend eingerichtet"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME bereits ausgewählt. Löschen und fortfahren?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Kein S/MIME-Backend eingerichtet"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP bereits ausgewählt. Löschen und fortfahren?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Kann nicht ohne append-hook oder close-hook hinzufügen : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Kann Mailbox nicht für exklusiven Zugriff sperren"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Dekomprimiere %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Kann den Inhalt der komprimierten Datei nicht bestimmen"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Finde keine Mailbox-Operationen (Rückruffunktionen) für Mailbox-Typ %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Kommando zur Komprimierung fehlgeschlagen: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Bei diesem Mailbox-Typ ist Hinzufügen nicht möglich"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Kann komprimierte Datei nicht ohne close-hook synchronisieren"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Komprimiere %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Komprimieren-und-Hinzufügen zu %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Fehler. Speichere Temporärdatei: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Ungültiges relatives Datum: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Ungültiges relatives Datum: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%s: ungültige Zahl: %s"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Ungültiger Wert für Option %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Ungültiger Monat: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Option %s kann vom Pager aus weder gesetzt noch zurückgesetzt werden"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "Option %s kann vom Pager aus weder gesetzt noch zurückgesetzt werden"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%s: ungültige Zahl: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%s: ungültige Zahl: %s"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Ungültiges relatives Datum: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Ungültiger Wert für Option %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Fehler: Wert '%s' ist ungültig für -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: unbekannte Variable"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Ungültiges relatives Datum: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Ungültiges relatives Datum: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Benutzername am %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Passwort für %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "Kein OAUTH Kommando zur Aktualisierung definiert"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Kann Kommando zur Aktualisierung nicht ausführen"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Kommando gibt leere Zeichenkette zurück"
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1310,7 +1565,7 @@ msgstr "Verbinde zu %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Konnte keine Verbindung zu %s aufbauen (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "unbekannter Fehler"
+
+@@ -1324,23 +1579,23 @@ msgstr "Fehler bei Verbindung mit %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Verbindung zu %s wurde beendet"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Unbekanntes SASL-Profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Fehler beim Aufbau der SASL-Verbindung"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Fehler beim Setzen der SASL-Sicherheitsparameter"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Fehler beim Setzen der externen SASL-Sicherheitsstärke"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Fehler beim Setzen des externen SASL-Benutzernamens"
+
+@@ -1353,132 +1608,108 @@ msgstr "\"Preconnect\"-Kommando fehlgeschlagen"
+ msgid "Connection to %s closed"
+ msgstr "Verbindung zu %s beendet"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Sammle Entropie für Zufallsgenerator: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s hat unsichere Zugriffsrechte"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL deaktiviert, da nicht genügend Entropie zur Verfügung steht"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Unbekannt"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[kann nicht berechnet werden]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[ungültiges Datum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Zertifikat des Servers ist noch nicht gültig"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Zertifikat des Servers ist abgelaufen"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Nicht genügend Entropie auf diesem System gefunden"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "Kann Subject-Feld des Zertifikats nicht ermitteln"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "Kann \"Common Name (CN)\"-Feld des Zertifikats nicht ermitteln"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Zertifikatinhaber stimmt nicht mit Rechnername %s überein"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Dieses Zertifikat gehört zu:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Dieses Zertifikat wurde ausgegeben von:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Dieses Zertifikat ist gültig"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " von %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " an %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-Fingerabdruck: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-msgid "SHA256 Fingerprint: "
+-msgstr "SHA256-Fingerabdruck: "
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr "SSL-Zertifikatprüfung (Zertifikat %zu von %zu in Kette)"
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "zeig"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(z)urückweisen, (e)inmal akzeptieren, (i)mmer akzeptieren, über(g)ehen"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(z)urückweisen, (e)inmal akzeptieren, (i)mmer akzeptieren"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(z)urückweisen, (e)inmal akzeptieren, über(g)ehen"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++msgid "SHA256 Fingerprint: "
++msgstr "SHA256-Fingerabdruck: "
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(z)urückweisen, (e)inmal akzeptieren"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr "SSL-Zertifikatprüfung (Zertifikat %zu von %zu in Kette)"
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Ende "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Warnung: Konnte Zertifikat nicht speichern"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Zertifikat gespeichert"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Prüfung des Rechnernamens in Zertifikat gescheitert: %s"
+@@ -1486,15 +1717,15 @@ msgstr "Prüfung des Rechnernamens in Zertifikat gescheitert: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Warnung: kann den Namen des TLS/SNI-Servers nicht setzen"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Ein-/Ausgabe Fehler"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL fehlgeschlagen: %s"
+@@ -1502,89 +1733,73 @@ msgstr "SSL fehlgeschlagen: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Kann keinen OpenSSL-Kontext erzeugen"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Warnung: Fehler bei der Aktivierung der ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Kann kein Zertifikat vom Server erhalten"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Fehler beim Prüfen des Zertifikats (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Zertifikat ist kein X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Fehler beim Initialisieren von GnuTLS-Zertifikatdaten"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Fehler beim Verarbeiten der Zertifikatdaten"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "WARNUNG: Server-Zertifikat ist noch nicht gültig"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "WARNUNG: Server-Zertifikat ist abgelaufen"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "WARNUNG: Server-Zertifikat wurde zurückgezogen"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "WARNUNG: Hostname des Servers entspricht nicht dem Zertifikat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "WARNUNG: Aussteller des Server-Zertifikats ist keine CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Warnung: Server-Zertifikat wurde mit unsicherem Algorithmus signiert"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "zei"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ze"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Alle verfügbaren TLS/SSL-Protokolle sind deaktiviert"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Keine direkte Auswahl der Verschlüsselungsgruppe durch $ssl_ciphers möglich"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-Verbindung unter Verwendung von %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Fehler: kein TLS-Socket offen"
+
+@@ -1603,38 +1818,18 @@ msgstr "Tunnel-Fehler bei Verbindung mit %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel zu %s liefert Fehler %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] "Die Längenberechnung weicht um %ld Byte(s) ab"
+ msgstr[1] "Die Längenberechnung weicht um %ld Byte(s) ab"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Kein Entschlüsselungsmechanismus für Nachricht vorhanden"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ja"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nein"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt verlassen?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Bitte eine Taste drücken..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' für Auswahlliste eingeben): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1656,7 +1851,7 @@ msgstr ""
+ "~M Nachrichten Wie ~m, zusätzlich mit Nachrichtenkopf\n"
+ "~p Nachricht ausdrucken\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1678,20 +1873,20 @@ msgstr ""
+ "~? Diese Nachricht\n"
+ ". in einer Zeile alleine beendet die Eingabe\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: Ungültige Nachrichtennummer.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Beenden der Nachricht mit einem Punkt ('.') allein in einer Zeile)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Keine Mailbox.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Nachricht enthält:\n"
+
+@@ -1699,19 +1894,19 @@ msgstr "Nachricht enthält:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(weiter)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "Dateiname fehlt.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Keine Zeilen in der Nachricht.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: Unbekanntes Editor-Kommando (~? für Hilfestellung)\n"
+@@ -1758,19 +1953,73 @@ msgstr "Hinzufügen zu Mailbox %s nicht möglich"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Mehrteilige Nachricht hat keinen \"boundary\"-Parameter"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Die Darstellung von Diskussionsfäden ist abgeschaltet"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Setze Statusindikator"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Entferne Statusindikator"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: Farbe wird vom Terminal nicht unterstützt"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: Farbe unbekannt"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: Objekt unbekannt"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: Attribut unbekannt"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "Standardfarben werden nicht unterstützt"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr "Die maximale Antwortebene ist %d"
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s: ungültige Zahl: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ja"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nein"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt verlassen?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Bitte eine Taste drücken..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' für Auswahlliste eingeben): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1791,23 +2040,23 @@ msgstr "[-- Automatische Anzeige mittels %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Automatische Anzeige mittels: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Kann Filter nicht erzeugen"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Kann %s nicht ausführen. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Fehlerausgabe von %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Fehler: message/external-body hat keinen access-type Parameter --]\n"
+
+@@ -1826,7 +2075,7 @@ msgstr "[-- Fehler: message/external-body hat keinen access-type Parameter --]\n
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1855,7 +2104,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1869,7 +2118,7 @@ msgstr[1] "[-- Dieser %s/%s-Anhang (Größe %s Byte) wurde gelöscht --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1880,12 +2129,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Dieser %s/%s-Anhang wurde gelöscht --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- Name: %s --]\n"
+@@ -1893,7 +2142,7 @@ msgstr "[-- Name: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1909,7 +2158,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1918,91 +2167,91 @@ msgstr ""
+ "[-- Dieser %s/%s-Anhang ist nicht in der Nachricht enthalten, --]\n"
+ "[-- und die angegebene Zugangsmethode %s wird nicht unterstützt --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Fehler: Konnte keinen der multipart/alternative-Teile anzeigen --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Anhang #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Anhang #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Warnung: Mind. ein Teil dieser Nachricht konnte nicht angezeigt werden"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Konnte Datenstrom nicht öffnen"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Konnte Temporärdatei nicht öffnen"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Konnte Datenstrom nicht erneut öffnen"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Fehler: multipart/signed ohne \"protocol\"-Parameter"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Dies ist ein Anhang ('%s' benutzen, um diesen Teil anzuzeigen) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s wird nicht unterstützt ('%s' benutzen, um diesen Teil anzuzeigen) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Dies ist ein Anhang (Tastaturbindung für 'view-attachments' benötigt) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s wird nicht unterstützt (Tastaturbindung für 'view-attachments' benötigt) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Dies ist ein Anhang --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s wird nicht unterstützt --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "INTERNER FEHLER: Diesen Fehler bitte melden (bug report)"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<UNBEKANNT>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Allgemeine Tastenbelegungen:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funktionen ohne Bindung an Taste:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Hilfe für %s"
+@@ -2019,41 +2268,41 @@ msgstr "Mailbox-Kurzbefehl führte zu leerem regulären Ausdruck"
+ msgid "badly formatted command string"
+ msgstr "Falsch formatierte Kommandosequenz"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Innerhalb eines Hooks kann kein unhook * aufgerufen werden"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: Unbekannter Hook-Typ: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Kann kein %s innerhalb von %s löschen"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "Menü \"%s\" existiert nicht"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: Keine Tastenkombination für dieses Menü"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: kein Makro für dieses Menü"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Konnte Temporärdatei %s nicht erzeugen"
+@@ -2090,28 +2339,28 @@ msgstr "GSSAPI-Authentifizierung fehlgeschlagen"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN ist bei diesem Server abgeschaltet"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Anmeldung..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Anmeldung gescheitert"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Authentifiziere (OAUTHBEARER)…"
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-Authentifizierung fehlgeschlagen"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Authentifiziere (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-Authentifizierung fehlgeschlagen"
+
+@@ -2158,89 +2407,79 @@ msgstr "Umbenennung fehlgeschlagen: %s"
+ msgid "Mailbox renamed"
+ msgstr "Mailbox umbenannt"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Mailbox %s@%s geschlossen"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Verbindung zu %s beendet"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Dieser IMAP-Server ist veraltet und wird von NeoMutt nicht unterstützt."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Suche im Nachrichtenkopf ohne Angabe des Feldes: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Benutzerdefinierte serverseitige Suche nicht unterstützt: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE fehlgeschlagen: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Beende Verbindung zu %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Sichere Verbindung mittels TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Konnte keine TLS-Verbindung realisieren"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Verschlüsselte Verbindung nicht verfügbar"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Abonniere %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Bestelle Abonnement von %s ab..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Abonniere %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Abonnement von %s abbestellt"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopiere %d Nachricht nach %s..."
+ msgstr[1] "Kopiere %d Nachrichten nach %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s erstellen?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Löschen fehlgeschlagen"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2248,43 +2487,43 @@ msgstr[0] "Markiere %d Nachricht zum Löschen..."
+ msgstr[1] "Markiere %d Nachrichten zum Löschen..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Speichere veränderte Nachricht... [%d/%d]"
+ msgstr[1] "Speichere veränderte Nachrichten... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Fehler beim Speichern der Statusindikatoren. Trotzdem schließen?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Fehler beim Speichern der Statusindikatoren"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Lösche Nachrichten auf dem Server..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE fehlgeschlagen"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Wähle %s aus..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Fehler beim Öffnen der Mailbox"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP-Server unterstützt keine selbstdefinierten Statusindikatoren"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Ungültige IMAP-Statusindikatoren"
+
+@@ -2294,7 +2533,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Download abbrechen und Mailbox schließen?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Kein Speicher verfügbar"
+
+@@ -2312,7 +2551,7 @@ msgstr "Hole aktualisierte Markierungen..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Kann keine Nachrichtenköpfe von dieser Version des IMAP-Servers laden"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Hole Kopfdaten von Nachricht..."
+
+@@ -2325,152 +2564,152 @@ msgstr "Lade Nachricht auf den Server..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopiere Nachricht %d nach %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Hole Nachricht..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Der Nachrichtenindex ist fehlerhaft. Versuchen Sie, die Mailbox erneut zu öffnen."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Fortfahren?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Ende"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Speichern"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Senden"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Antwort"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Antw.alle"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Artikel"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Antworte an"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Keine Mailbox ist geöffnet"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Es sind keine Nachrichten vorhanden"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Keine sichtbaren Nachrichten"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Mailbox ist schreibgeschützt"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funktion steht beim Anhängen von Nachrichten nicht zur Verfügung"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "Operation %s gemäß ACL nicht zulässig"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Kann Schreibschutz bei Mailbox im Nur-Lese-Modus nicht umschalten"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Änderungen an dieser Mailbox werden beim Verlassen geschrieben"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Änderungen an dieser Mailbox werden nicht geschrieben"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s ist keine Mailbox"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Mailbox wurde extern verändert. Statusindikatoren nun ggf. inkorrekt."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Neue Nachrichten in dieser Mailbox"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Mailbox wurde extern verändert"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Keine markierten Nachrichten"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nichts zu erledigen"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Message-ID eingeben: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Der Artikel hat keine eigenen Eltern"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Nachricht in dieser begrenzten Ansicht nicht sichtbar"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Lade %s vom Server..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Artikel %s wurde auf dem Server nicht gefunden"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Keine Message-ID. Kann die Operation nicht ausführen."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Keine gelöschten Nachrichten im Diskussionsfaden vorhanden"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Springe zu Nachricht: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argument muss eine Nachrichtennummer sein"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Ungültige Nachrichtennummer"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Diese Nachricht ist nicht sichtbar"
+
+@@ -2483,37 +2722,37 @@ msgstr "Diese Nachricht ist nicht sichtbar"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Kann Nachricht(en) nicht löschen"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Lösche Nachrichten nach Muster: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Zur Zeit ist kein Muster zur Begrenzung aktiv"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Begrenze: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Begrenze auf Nachrichten nach Muster: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Um alle Nachrichten zu sehen, begrenze auf \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt beenden?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Markiere Nachrichten nach Muster: "
+
+@@ -2521,195 +2760,195 @@ msgstr "Markiere Nachrichten nach Muster: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Kann Löschmarkierung nicht entfernen"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Entferne Löschmarkierung nach Muster: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Entferne Markierung nach Muster: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Erfolgreich von IMAP-Servern abgemeldet"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Keine virtuelle Mailbox und keine Message-Id, breche ab"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Konnte Anfrage nicht erzeugen, breche ab"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr "Nachricht nicht in der notmuch-Datenbank zu finden; ’notmuch new’ ausführen."
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Kann Diskussionsfaden nicht lesen, breche ab"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Ordner unterstützt keine Etikettierung, breche ab"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Kein Etikett angegeben, breche ab"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Aktualisiere Etiketten..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Konnte Etiketten nicht verändern, breche ab"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Keine Anfrage, breche ab"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Fragefenster sind ausgeschaltet"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Zurzeit ist kein virtueller Notmuch-Ordner geladen"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Öffne Mailbox schreibgeschützt"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Öffne Mailbox"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Keine Mailbox mit neuen Nachrichten"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Öffne Newsgroup schreibgeschützt"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Öffne Newsgroup"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "NeoMutt verlassen, ohne Änderungen zu speichern?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Kann Diskussionsfaden nicht zerteilen"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Diskussionsfaden unterbrochen"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Kann Diskussionsfaden nicht abtrennen, da die Nachricht nicht Teil eines Diskussionsfadens ist"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Kann Diskussionsfäden nicht verbinden"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Keine Message-ID zum Aufbau von Diskussionsfäden verfügbar"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Bitte erst eine Nachricht zur Verlinkung markieren"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Diskussionsfäden verbunden"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Kein Diskussionsfaden verbunden"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Das ist bereits die letzte Nachricht"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Keine ungelöschten Nachrichten"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Das ist bereits die erste Nachricht"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Keine neuen Nachrichten in dieser begrenzten Ansicht"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Keine neuen Nachrichten"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Keine ungelesenen Nachrichten in dieser begrenzten Ansicht"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Keine ungelesenen Nachrichten"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Suche von vorne begonnen"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Suche von hinten begonnen"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Kann keinen Statusindikator für Nachricht setzen"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Kann nicht umschalten zwischen neu/nicht neu"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Keine weiteren Diskussionsfäden"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Der erste Diskussionsfaden wurde bereits aufgerufen"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Diskussionsfaden enthält ungelesene oder mit Statusindikator versehene Nachrichten"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Kann Nachricht nicht löschen"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Kann Nachricht nicht bearbeiten"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2719,7 +2958,7 @@ msgstr[1] "%d Etiketten verändert"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Etiketten unverändert"
+
+@@ -2727,275 +2966,140 @@ msgstr "Etiketten unverändert"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Kann Nachricht(en) nicht als gelesen markieren"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Kurztastenkombination für Makro eingeben: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "Kurztaste für Nachricht"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Nachricht wurde an %s gebunden"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Makro benötigt eine Message-ID"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Gemäß dem Wunsch des Autors per Mail antworten?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Das Veröffentlichen in der Newsgroup ist nicht erlaubt, ggf. wird diese moderiert. Fortfahren?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Kann Löschmarkierung nicht entfernen"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Fehler in Kommandozeile: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Warnung in der Kommandozeile: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "Kann Netzwerknamen nicht durch uname() bestimmen."
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: Kein Gruppen Name"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "Zu wenige Parameter"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Fehler: Es gibt keinen Pfad zu '%s'"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Fehler: Endlosschleife beim Einlesen der Konfigurationsdatei '%s'"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Fehler in %s, Zeile %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Warnung in %s, Zeile %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: Fehler in %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: Lesevorgang abgebrochen, zu viele Fehler in %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d Warnung in %s"
+-msgstr[1] "source: %d Warnungen in %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "Kurzname: fehlende Adresse"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Warnung: Ungültige IDN '%s' in Kurzname '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: keine Disposition"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Aktuelle Einstellung für Anhänge:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: ungültige disposition"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: Es fehlt -rx oder -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: Warnung: Ungültige IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Fehler: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "Ungültiges Kopffeld"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: unbekannte Variable"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s ist nicht gesetzt"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: Fehler bei %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source: Datei %s konnte nicht eingelesen werden"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "Spam: kein passendes Muster"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: kein passendes Muster"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Konnte %s nicht abonnieren"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Kein Ordner angegeben"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: keine Disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: ungültige disposition"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Konnte Abonnement von %s nicht abbestellen"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: Unbekanntes Kommando"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "'charset' muss genau einen Zeichensatz enthalten"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Ungültiger Wert für Option %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Option %s kann vom Pager aus weder gesetzt noch zurückgesetzt werden"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Option %s kann im Nachrichte-Anhangmodus nicht gesetzt werden"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr "Option %s muss zwischen 78 und einschließlich 998 eingestellt werden"
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Tastenkombination '%s' überdeckt '%s'. Setze zuerst: 'bind %s %s noop', siehe auch https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Makroschleife gefunden"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Taste ist nicht belegt"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Taste ist nicht belegt. '%s' für Hilfe drücken."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: Leere Tastenfolge"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Funktion '%s' ist nicht verfügbar für Menü '%s'"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: Leere Tastenfolge"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: Keine Parameter"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: Funktion unbekannt"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Tasten drücken (^G zum Abbrechen): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Zeichen = %s, Oktal = %o, Dezimal = %d"
+@@ -3019,7 +3123,7 @@ msgstr "Kann keinen Mailcap-Eintrag für %s finden"
+ msgid "Scanning %s..."
+ msgstr "Durchsuche %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Lese %s..."
+@@ -3033,13 +3137,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): kann Dateizeitstempel nicht setzen"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Schreibe %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3080,7 +3184,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3164,54 +3268,54 @@ msgstr ""
+ " -z Öffne die erste oder angegebene (-f) Mailbox, sofern Nachrichten\n"
+ " enthalten sind, anderenfalls beende umgehend mit Rückgabewert 1"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Kann Terminal nicht initialisieren"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "Kann Nutzernamen nicht bestimmen"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "Kann Home-Verzeichnis nicht bestimmen"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Fehler: Wert '%s' ist ungültig für -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Fehler beim Verarbeiten von mailto: Link"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Keine Empfänger angegeben"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Parameter -E funktioniert nicht mit stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Kann Nachrichtenvorlage nicht verarbeiten: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: Kann Datei nicht anhängen"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Keine Mailbox mit neuen Nachrichten"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Keine Eingangs-Mailboxen definiert"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Mailbox ist leer"
+
+@@ -3253,52 +3357,52 @@ msgstr "Konnte Mailbox nicht erneut öffnen"
+ msgid "Can't write message"
+ msgstr "Kann Nachricht nicht schreiben"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Springe zu: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Ungültige Indexnummer"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Keine Einträge"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Weiter nach unten geht es nicht"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Weiter nach oben geht es nicht"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Dies ist die erste Seite"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Dies ist die letzte Seite"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Dies ist der letzte Eintrag"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Dies ist der erste Eintrag"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Suche nach: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Rückwärtssuche nach: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nicht gefunden"
+
+@@ -3341,20 +3445,20 @@ msgstr "Warte auf flock-Versuch... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Falsches Format der Verlaufdatei (Zeile %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Kann Temporärdatei nicht erzeugen"
+
+@@ -3373,7 +3477,7 @@ msgstr "Schreibe Fehlersuche der Stufe %d nach Datei '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Schreibe Protokoll der Stufe %d nach Datei '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Fehler: kann Pfad nicht in absoluten Pfad konvertieren"
+
+@@ -3396,17 +3500,17 @@ msgstr "Signal %d (%s) empfangen ... Abbruch.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Signal %d empfangen ... Abbruch.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "Öffne /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "Lese /dev/urandom: %s"
+@@ -3414,146 +3518,119 @@ msgstr "Lese /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Datei ist ein Verzeichnis, darin abspeichern? (j)a, (n)ein, (a)lle?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "jna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Datei ist ein Verzeichnis, darin abspeichern?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Datei in diesem Verzeichnis: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Datei existiert, (u)eberschreiben, (a)nhängen, a(b)brechen?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "uab"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Kann Nachricht nicht in POP-Mailbox schreiben"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Nachricht %s hinzufügen?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Kann Nachricht nicht auf dem Server speichern"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Benutzername am %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Passwort für %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "Kein OAUTH Kommando zur Aktualisierung definiert"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Kann Kommando zur Aktualisierung nicht ausführen"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Kommando gibt leere Zeichenkette zurück"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Namensschema kann nicht erfüllt werden, fortfahren?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "\"compose\"-Eintrag in der Mailcap-Datei erfordert %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Kann Datei nicht öffnen, um Nachrichtenkopf zu untersuchen"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Kann Datei nicht öffnen, um Nachrichtenkopf zu entfernen"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Fehler beim Umbenennen der Datei"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Kein \"compose\"-Eintrag für %s in der Mailcap-Datei, erzeuge leere Datei"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "\"edit\"-Eintrag in Mailcap-Datei erfordert %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Kein \"edit\"-Eintrag für %s in Mailcap-Datei"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Keinen passenden Mailcap-Eintrag gefunden. Anzeige als Text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Undefinierter MIME-Typ. Kann Anhang nicht anzeigen."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Kommando: %-20.20s Beschreibung: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Kommando: %-30.30s Anhang: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Anhang: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Anhang: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Schreibfehler"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Ich weiß nicht, wie man dies druckt"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Suchen"
+
+@@ -3562,21 +3639,21 @@ msgstr "Suchen"
+ msgid "History '%s'"
+ msgstr "Verlauf '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Ungültiger Wert für Option %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Fehler: Kann Lua Interpreter nicht laden"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Konnte Lua-Datei nicht laden: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Neue Nachrichten in "
+
+@@ -3597,20 +3674,20 @@ msgstr "Oberste Bezugsnachricht ist in dieser begrenzten Ansicht nicht sichtbar"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Bezugsnachricht ist in dieser begrenzten Ansicht nicht sichtbar"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Lesen von %s unterbrochen..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Kann %s nicht schreiben"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "Nachricht nicht gelöscht"
+@@ -3620,69 +3697,69 @@ msgstr[1] "Nachrichten nicht gelöscht"
+ msgid "Can't open trash folder"
+ msgstr "Kann Papierkorb nicht öffnen"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Alle Artikel als gelesen markieren?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "%d gelesene Nachricht nach %s verschieben?"
+ msgstr[1] "%d gelesene Nachrichten nach %s verschieben?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Entferne %d als gelöscht markierte Nachricht?"
+ msgstr[1] "Entferne %d als gelöscht markierte Nachrichten?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Verschiebe gelesene Nachrichten nach %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Mailbox unverändert"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d behalten, %d verschoben, %d gelöscht"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d behalten, %d gelöscht"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Drücke '%s' zum Umschalten des Schreibmodus"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "'toggle-write' reaktiviert den Schreibmodus"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Mailbox ist als schreibgeschützt markiert. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Checkpoint in der Mailbox gesetzt"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (aktuelle Zeit: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s Ausgabe folgt%s --]\n"
+@@ -3691,52 +3768,52 @@ msgstr "[-- %s Ausgabe folgt%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Mantra(s) vergessen"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline-PGP funktioniert nicht mit Anhängen. PGP/MIME verwenden?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Mail nicht versandt: Inline-PGP funktioniert nicht mit Anhängen"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline-PGP funktioniert nicht mit format=flowed. PGP/MIME verwenden?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Mail nicht versandt: Inline-PGP funktioniert nicht mit format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Rufe PGP auf..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Nachricht kann nicht Inline verschickt werden. PGP/MIME verwenden?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Nachricht nicht verschickt"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-Nachrichten ohne Hinweis auf den Inhalt werden nicht unterstützt"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Versuche PGP-Schlüssel zu extrahieren...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Versuche S/MIME-Zertifikate zu extrahieren..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3745,7 +3822,7 @@ msgstr ""
+ "[-- Fehler: Unbekanntes multipart/signed Protokoll %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3753,7 +3830,7 @@ msgstr ""
+ "[-- Fehler: Inkonsistente multipart/signed Unterschrift --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3762,7 +3839,7 @@ msgstr ""
+ "[-- Warnung: %s/%s Unterschriften können nicht geprüft werden. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3770,7 +3847,7 @@ msgstr ""
+ "[-- Die folgenden Daten sind signiert --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3778,7 +3855,7 @@ msgstr ""
+ "[-- Warnung: Kann keine Unterschriften finden. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3797,229 +3874,229 @@ msgstr "Rufe S/MIME auf..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Name: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "auch bekannt als: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Gültig ab: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Gültig bis: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Schlüsseltyp: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Schlüsselgebrauch: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingerabdruck: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Seriennr.: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Herausgegeben von: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Unterschlüssel: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "Fehler beim Aktivieren des CMS-Protokolls : %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "Fehler beim Erzeugen des GPGME-Datenobjekts: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "Fehler beim Anlegen des Datenobjekts: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "Fehler beim Zurücklegen des Datenobjekts: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[Temporärdatei]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "Fehler beim Lesen des Datenobjekts: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "Fehler beim Hinzufügen des Empfängers '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "Geheimer Schlüssel '%s' nicht gefunden: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "mehrdeutige Angabe des geheimen Schlüssels '%s'\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "Fehler beim Setzen des geheimen Schlüssels '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "Fehler beim Setzen der Darstellung der PKA-Unterschrift: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "Fehler beim Verschlüsseln der Daten: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "Fehler beim Signieren der Daten: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as nicht gesetzt und kein Standardschlüssel in ~/.gnupg/gpg.conf benannt"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Warnung: Einer der Schlüssel wurde zurückgezogen\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Warnung: Der Signaturschlüssel ist verfallen am: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Warnung: Mindestens ein Zertifikat ist abgelaufen\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Warnung: Die Signatur ist verfallen am: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Kann wegen fehlenden Schlüssels oder Zertifikats nicht geprüft werden\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "Die CRL ist nicht verfügbar.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Verfügbare CRL ist zu alt\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Eine Richtlinienanforderung wurde nicht erfüllt\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Ein Systemfehler ist aufgetreten"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "WARNUNG: PKA-Eintrag entspricht nicht der Adresse des Unterzeichners: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Die PKA-geprüfte Adresse des Unterzeichners lautet: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "WARNUNG: Wir haben KEINEN Beleg, dass der Schlüssel zur oben genannten Person gehört\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "WARNUNG: Der Schlüssel gehört NICHT zur oben genannten Person\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "WARNUNG: Es ist NICHT sicher, dass der Schlüssel zur oben genannten Person gehört\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "KeyID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "Kein Fingerabdruck zur Unterschrift verfügbar"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "erstellt: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Fehler beim Auslesen der Schlüsselinformation für KeyID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Gültige Unterschrift von:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*UNGÜLTIGE* Unterschrift von:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematische Unterschrift von:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " läuft ab: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Anfang der Unterschrift --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Fehler: Überprüfung fehlgeschlagen: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Anfang Darstellung (Unterschrift von: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Ende Darstellung ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4027,7 +4104,7 @@ msgstr ""
+ "[-- Ende der Unterschrift --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4036,21 +4113,26 @@ msgstr ""
+ "[-- Fehler: Entschlüsselung fehlgeschlagen: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Fehler beim Import des Schlüssels: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Fehler: Entschlüsselung/Prüfung fehlgeschlagen: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-Nachricht erfolgreich entschlüsselt"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Fehler: Kopieren der Daten fehlgeschlagen\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4058,11 +4140,11 @@ msgstr ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4070,19 +4152,19 @@ msgstr ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- END PGP MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- END PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- END PGP SIGNED MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4090,11 +4172,11 @@ msgstr ""
+ "[-- Fehler: Konnte Anfang der PGP-Nachricht nicht finden --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Fehler: Konnte Temporärdatei nicht anlegen --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4102,7 +4184,7 @@ msgstr ""
+ "[-- Die folgenden Daten sind PGP/MIME-signiert und -verschlüsselt --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4110,24 +4192,20 @@ msgstr ""
+ "[-- Die folgenden Daten sind PGP/MIME-verschlüsselt --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Ende der PGP/MIME-signierten und -verschlüsselten Daten --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Ende der PGP/MIME-verschlüsselten Daten --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-Nachricht erfolgreich entschlüsselt"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Konnte PGP-Nachricht nicht entschlüsseln"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4135,7 +4213,7 @@ msgstr ""
+ "[-- Die folgenden Daten sind S/MIME signiert --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4143,34 +4221,34 @@ msgstr ""
+ "[-- Die folgenden Daten sind S/MIME-verschlüsselt --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Ende der S/MIME-signierten Daten --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Ende der S/MIME-verschlüsselten Daten --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Kann Benutzer-ID nicht darstellen (unbekannte Kodierung)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Kann Benutzer-ID nicht darstellen (unzulässige Kodierung)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Kann Benutzer-ID nicht darstellen (unzulässiger DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Ungültig]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4178,94 +4256,94 @@ msgstr[0] "%s, %lu Bit %s\n"
+ msgstr[1] "%s, %lu Bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "Verschlüsselung"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "Signieren"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "Zertifikat"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Zurückgez.]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Abgelaufen]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Deaktiviert]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Sammle Informationen..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Fehler bei der Suche nach dem Schlüssel des Herausgebers: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Fehler: Zertifikatkette zu lang - Stoppe hier\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Schlüssel ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start fehlgeschlagen: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next fehlgeschlagen: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Alle passenden Schlüssel sind abgelaufen/zurückgezogen"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Auswahl "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Schlüssel prüfen "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Passende PGP- und S/MIME-Schlüssel"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Passende PGP-Schlüssel"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Passende S/MIME-Schlüssel"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Passende Schlüssel"
+
+@@ -4273,55 +4351,55 @@ msgstr "Passende Schlüssel"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Dieser Schlüssel ist nicht verwendbar: veraltet/deaktiviert/zurückgezogen"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Diese ID ist veraltet/deaktiviert/zurückgezogen. Soll dieser Schlüssel wirklich benutzt werden?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Diese ID ist ungültig. Soll dieser Schlüssel wirklich benutzt werden?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Diese Gültigkeit dieser ID ist grenzwertig. Soll dieser Schlüssel wirklich benutzt werden?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Die Gültigkeit dieser ID ist undefiniert. Soll dieser Schlüssel wirklich benutzt werden?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Suche nach Schlüsseln, die auf \"%s\" passen..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "Keine passenden Schlüssel für \"%s\" gefunden"
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Benutze KeyID = \"%s\" für %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "KeyID für %s: "
+@@ -4330,15 +4408,15 @@ msgstr "KeyID für %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Keine geheimen Schlüsselgefunden"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Bitte Schlüsselidentifikation eingeben: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Fehler beim Export des Schlüssels: %s"
+@@ -4346,92 +4424,92 @@ msgstr "Fehler beim Export des Schlüssels: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-Schlüssel 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP-Protokoll nicht verfügbar"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS-Protokoll nicht verfügbar"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ign., sign. (a)ls, (p)gp, (u)nverschl., oder kein (w)ie-mögl.-Modus?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapuw"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign., sign. (a)ls, s/(m)ime, (u)nverschl., oder kein (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samuw"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (v)erschl., (s)ign., sign. (a)ls, (b)eides, (p)gp, (u)nverschl., oder (w)ie-mögl.-Modus?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "vsabpuw"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, s/(m)ime, (u)nverschl., oder (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "vsabmuw"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (v)erschl., (s)ign., sign. (a)ls, (b)eides, (p)gp oder (u)nverschl.?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "vsabpu"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, s/(m)ime oder (u)nverschl.?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "vsabmu"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Prüfung des Absenders fehlgeschlagen"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Kann Absender nicht ermitteln"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "PGP-Mantra eingeben:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Fehler: Kann keinen PGP-Prozess erzeugen --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4442,15 +4520,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-Nachricht ist nicht verschlüsselt"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Interner Fehler. Diesen Fehler bitte melden."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4458,125 +4536,125 @@ msgstr ""
+ "[-- Fehler: Konnte PGP-Subprozess nicht erzeugen --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Entschlüsselung gescheitert"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Kann PGP-Subprozess nicht erzeugen"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Kann PGP nicht aufrufen"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign., sign. (a)ls, %s Format, (u)nverschl., oder kein (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saiuw"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign., sign. (a)ls, (u)nverschl., oder kein (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "sauw"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, %s Format, (u)nverschl., oder (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "vsabiuw"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, (u)nverschl., oder (w)ie-mögl.-Modus?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "vsabuw"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, %s Format, oder (u)nverschl.?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "vsabiu"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (v)erschl., (s)ign., sign. (a)ls, (b)eides, oder (u)nverschl.?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "vsabu"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Hole PGP-Schlüssel..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Alle passenden Schlüssel sind veraltet, zurückgezogen oder deaktiviert"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-Schlüssel, die zu <%s> passen"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-Schlüssel, die zu \"%s\" passen"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Kann /dev/null nicht öffnen"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-Schlüssel %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "S/MIME-Mantra eingeben:"
+
+@@ -4585,7 +4663,7 @@ msgstr "S/MIME-Mantra eingeben:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Veraltet "
+
+@@ -4594,7 +4672,7 @@ msgstr "Veraltet "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Ungültig "
+
+@@ -4603,7 +4681,7 @@ msgstr "Ungültig "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Zurückgezogen "
+
+@@ -4612,7 +4690,7 @@ msgstr "Zurückgezogen "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Vertrauenswürdig "
+
+@@ -4621,7 +4699,7 @@ msgstr "Vertrauenswürdig "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Ungeprüft"
+
+@@ -4630,7 +4708,7 @@ msgstr "Ungeprüft"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Geprüft "
+
+@@ -4639,58 +4717,58 @@ msgstr "Geprüft "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Unbekannt "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-Zertifikate, die zu \"%s\" passen"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Diese ID ist nicht vertrauenswürdig. Soll dieser Schlüssel wirklich benutzt werden?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "KeyID eingeben: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Kein (gültiges) Zertifikat für %s gefunden"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Fehler: Kann keinen OpenSSL-Unterprozess erzeugen"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Etikett für Zertifikat: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "keine Zertifikatdatei"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "keine Mailbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Keine Ausgabe von OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Kann nicht signieren: Kein Schlüssel angegeben. \"sign. als\" verwenden."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Kann OpenSSL-Unterprozess nicht erzeugen"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4698,19 +4776,19 @@ msgstr ""
+ "[-- Ende der OpenSSL-Ausgabe --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Fehler: Kann keinen OpenSSL-Unterprozess erzeugen --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Die folgenden Daten sind S/MIME-verschlüsselt --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Die folgenden Daten sind S/MIME-signiert --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4718,7 +4796,7 @@ msgstr ""
+ "\n"
+ "[-- Ende der S/MIME-verschlüsselten Daten --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4727,160 +4805,160 @@ msgstr ""
+ "[-- Ende der S/MIME-signierten Daten --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ign., verschl. (m)it, sign. (a)ls, (u)nverschl., oder kein (w)ie-mögl.-Modus?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "smauw"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (v)erschl., (s)ign., verschl. (m)it, sign. (a)ls, (b)eides, (u)nverschl., oder (w)ie-mögl.-Modus?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "vsmabuw"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (v)erschl., (s)ign., verschl. (m)it, sign. (a)ls, (b)eides, (u)nverschlüsselt?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "vsmabu"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Wähle Algorithmus: (1) DES, (2) RC2, (3) AES, oder (u)nverschlüsselt?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123u"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Lese Liste der Newsgroups aus dem Cache..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Kein Newsserver definiert"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s ist eine ungültige Newsserver-Angabe"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server hat Verbindung beendet"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Server unterstützt den Lesermodus nicht"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Keine Authentifizierung verfügbar"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s Authentifizierung fehlgeschlagen"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Verbindung zu %s verloren. Erneut verbinden?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Hole Liste der Artikel..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Prüfe auf neue Nachrichten..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Konnte nicht in den Lesermodus wechseln"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Verbunden mit %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Veröffentlichung ist OK"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Veröffentlichung ist NICHT OK"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Kann Artikel nicht veröffentlichen: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Lade Liste der Newsgroups von Server %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Lade Beschreibungen..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Prüfe auf neue Newsgroups..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Kann keine Folgeartikel finden, weil der Server das XPAT-Kommando nicht unterstützt"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s ist keine gültige Newsgroup-Angabe"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Newsgroup %s wurde nicht auf dem Server gefunden"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Newsgroup %s wurde vom Server entfernt"
+@@ -4892,8 +4970,8 @@ msgstr "Fehler beim Verwenden von Notmuch-Anfrage-Typ: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "Fehler beim Verwenden von Notmuch-URI: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "Fehler beim Verwenden von Notmuch-URL: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5983,182 +6061,182 @@ msgstr "Schalte um zwischen Seitenleiste sichtbar/unsichtbar"
+ msgid "show S/MIME options"
+ msgstr "Zeige S/MIME-Optionen"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Funktion ist in diesem Menü nicht verfügbar"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "S.zurück"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "S.vor"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Anhänge betr."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Nächste Nachricht"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "Alles"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "Ende"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Das Ende der Nachricht wird angezeigt"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Der Beginn der Nachricht wird angezeigt"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Hilfe wird bereits angezeigt"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Kein weiterer zitierter Text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Kein weiterer eigener Text nach zitiertem Text"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Fehler in Ausdruck: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Leerer Ausdruck"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "Kein Such-Kommando definiert"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Suche gerade nach: %s …"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Ungültiger Tag des Monats: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Ungültiger Monat: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Ungültiges relatives Datum: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Keine gegenwärtige Nachricht"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "Kein Kontext"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Fehler beim Öffnen des Datenstroms"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Fehler beim erneuten Öffnen des Datenstroms"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Kann /dev/null nicht öffnen"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "Fehler in Muster bei: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "Fehlendes Muster: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "Unpassende Klammern: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: Ungültiger Suchmuster-Modifikator"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: Wird in diesem Modus nicht unterstützt"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "Fehlendes Parameterargument"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "Leeres Muster"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "Fehler: Benutzerdefinierte serverseitige Suche wird nur bei IMAP unterstützt"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "Fehler: Unbekannter Suchmuster-Operator %d (Bitte Bug melden)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompiliere Suchmuster..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Führe Kommando aus..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Keine Nachrichten haben Kriterium erfüllt"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Suche..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Suche hat Ende erreicht, ohne Treffer zu erzielen"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Suche hat Anfang erreicht, ohne Treffer zu erzielen"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Suche unterbrochen"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Das Kommando TOP wird vom Server nicht unterstützt"
+
+@@ -6166,7 +6244,7 @@ msgstr "Das Kommando TOP wird vom Server nicht unterstützt"
+ msgid "Can't write header to temporary file"
+ msgstr "Kann Header nicht in Temporärdatei schreiben"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Kommando UIDL wird vom Server nicht unterstützt"
+
+@@ -6181,7 +6259,7 @@ msgstr[1] "%d Nachrichten verloren gegangen. Die Mailbox sollte erneut geöffnet
+ msgid "POP host is not defined"
+ msgstr "Es wurde kein POP-Server definiert"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s ist ein ungültiger POP-Pfad"
+@@ -6214,152 +6292,152 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d von %d Nachricht gelesen]"
+ msgstr[1] "%s [%d von %d Nachrichten gelesen]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Hole Liste der Nachrichten..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Markiere Nachrichten zum Löschen..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Kann Nachricht nicht in Temporärdatei schreiben"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Authentifiziere (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP-Zeitstempel ist ungültig"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Authentifiziere (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP-Authentifizierung fehlgeschlagen"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Kommando USER wird vom Server nicht unterstützt"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Authentifizierung fehlgeschlagen"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Ungültige POP-URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Kann Nachrichten nicht auf dem Server belassen"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Fehler beim Verbinden mit dem Server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Beende Verbindung zum POP-Server..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Überprüfe Nachrichten-Indexe..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Verbindung unterbrochen. Verbindung zum POP-Server wiederherstellen?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Zurückgestellte Nachrichten"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Keine zurückgestellten Nachrichten"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Unzulässiger S/MIME-Header"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Unzulässiger Krypto-Header"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Entschlüssle Nachricht..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Neue Abfrage"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Erzeuge Kurzname"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Warte auf Antwort..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Abfrage: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Abfrage: '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Kein Abfragekommando definiert"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Filtern"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Drucke"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Speichere..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Anhang gespeichert"
+ msgstr[1] "%d Anhänge gespeichert"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "WARNUNG! Datei %s existiert, überschreiben?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Anhang gefiltert"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtere durch: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Übergebe an (pipe): "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Kann %s Anhänge nicht drucken"
+@@ -6367,55 +6445,55 @@ msgstr "Kann %s Anhänge nicht drucken"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Markierten Anhang drucken?"
+ msgstr[1] "%d markierte Anhänge drucken?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Anhang drucken?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Strukturelle Änderungen entschlüsselter Anhänge werden nicht unterstützt"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Kann verschlüsselte Nachricht nicht entschlüsseln"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Anhänge"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Es sind keine Teile zur Anzeige vorhanden"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Kann Dateianhang nicht vom POP-Server löschen"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Kann Dateianhang nicht vom Newsserver löschen"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Kann Anhänge verschlüsselter Nachrichten nicht löschen"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Das Löschen von Anhängen signierter Nachrichten kann deren Signatur ungültig machen"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Kann nur aus mehrteiligen Anhängen löschen"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Nur message/rfc822-Anhänge können erneut versendet werden"
+
+@@ -6451,7 +6529,7 @@ msgstr "Kann %s nicht anlegen"
+ msgid "Can't find any tagged messages"
+ msgstr "Es sind keine markierten Nachrichten vorhanden"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Keine Mailinglisten gefunden"
+
+@@ -6465,67 +6543,67 @@ msgstr "Nicht alle markierten Anhänge sind dekodierbar. MIME-encapsulate für d
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Nur message/rfc822-Anhänge können an den Adressaten versendet werden"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Hinzufügen"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Einfügen"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<zufällig>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Kann die \"type2.list\" für Mixmaster nicht holen"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Wähle eine Remailer Kette aus"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Fehler: %s kann nicht als letzter Remailer einer Kette verwendet werden"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Eine Mixmaster-Kette kann maximal %d Elemente enthalten"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Die Remailer-Kette ist bereits leer"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Das erste Element der Kette ist bereits ausgewählt worden"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Das letzte Element der Kette ist bereits ausgewählt worden"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster unterstützt weder Cc: noch Bcc: Felder"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Zur Verwendung von Mixmaster muss die Variable \"hostname\" richtig gesetzt sein"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Fehler %d beim Versand der Nachricht.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Fehler beim Versand der Nachricht"
+
+@@ -6555,41 +6633,41 @@ msgstr "Anhänge weiterleiten?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Antworte an %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Antworte an %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Nachricht in Antwort zitieren?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Binde zitierte Nachricht ein..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Konnte nicht alle gewünschten Nachrichten zitieren"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Als Anhang weiterleiten?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Bereite Nachricht zum Weiterleiten vor..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc zu einer IMAP-Mailbox wird in diesem Modus nicht unterstützt"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Anhänge in Fcc-Mailbox speichern?"
+
+@@ -6597,190 +6675,190 @@ msgstr "Anhänge in Fcc-Mailbox speichern?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc fehlgeschlagen; (w)iederholen, (a)ndere Mailbox oder ü(b)erspringen?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "wab"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc Mailbox"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Kann Entwurf nirgendwohin speichern $postponed is unset"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Zurückgestellte Nachricht weiterbearbeiten?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Weitergeleitete Nachricht editieren?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Unveränderte Nachricht verwerfen?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Unveränderte Nachricht verworfen"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Kein Krypto-Backend eingerichtet. Nachrichten-Sicherheitseinstellung deaktiviert."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Artikel nicht veröffentlicht"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Nachricht zurückgestellt"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Kein Betreff, Versand abbrechen?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Kein Betreff"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Keine Newsgroup angegeben"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Keine Anhänge vorhanden, Senden abbrechen?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Nachricht enthält Text, der \"$abort_noattach_regex\" entspricht. Versand abgebrochen."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Versende Nachricht..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Konnte Nachricht nicht versenden"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Versende im Hintergrund"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Artikel veröffentlicht"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Nachricht versandt"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Kein boundary-Parameter gefunden (bitte Bug melden)"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s existiert nicht mehr"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s ist keine reguläre Datei"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Konnte keine Datei mime.types finden."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Konnte %s nicht öffnen"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail muss gesetzt sein, damit Mails versandt werden können"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Fehler %d beim Versand der Nachricht (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Ausgabe des Auslieferungs-Prozesses"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Ungültige IDN %s bei der Vorbereitung von Resent-From"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-Verbindung fehlgeschlagen: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-Verbindung fehlgeschlagen: Kann %s nicht öffnen"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Ungültige SMTP-URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP Authentifizierungsmethode %s benötigt SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s Authentifizierung fehlgeschlagen, versuche nächste Methode"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP-Authentifizierung benötigt SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-Server unterstützt keine Authentifizierung"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Keine Absenderadresse angegeben"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-Verbindung fehlgeschlagen: Lesefehler"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-Verbindung fehlgeschlagen: Schreibfehler"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Ungültige Serverantwort"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Sortiere Mailbox..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Sortierfunktion nicht gefunden (bitte Bug melden)"
+
+@@ -6852,10 +6930,37 @@ msgstr ""
+ "Sie können es unter bestimmten Bedingungen weitergeben; starten Sie\n"
+ "'neomutt -vv' für weitere Details.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Standard Einstellungen:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Einstellungen bei der Kompilierung:"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Fehler beim erstellen des Autocrypt Schlüssels: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(n)eu erstellen, oder existierenden GPG Schlüssel aus(w)ählen? "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: (v)erschlüsseln, (l)öschen, (a)utomatisch?"
++
++#~ msgid "Error History is disabled"
++#~ msgstr "Einstellung error_history ist deaktiviert"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation"
++#~ msgstr "$send_multipart_alternative_filter funktioniert nicht mit Typ \"multipart\""
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "Ansicht des Anhangs als Text"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "Ansicht des Anhangs mittels mailcap"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "Öffne Mailbox"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "Öffne Mailbox im nur-Lesen-Modus"
+diff --git a/po/el.po b/po/el.po
+index 890010a05..c9ba75031 100644
+--- a/po/el.po
++++ b/po/el.po
+@@ -13,7 +13,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2005-02-01 00:01GMT+2\n"
+ "Last-Translator: Dokianakis Fanis <madf@hellug.gr>\n"
+ "Language-Team: Greek <EL@li.org>\n"
+@@ -23,16 +23,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)απόρριψη, (o)αποδοχή μια φορά, (a)αποδοχή πάντα"
++
++#, fuzzy
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)απόρριψη, (o)αποδοχή μια φορά, (a)αποδοχή πάντα"
++
++msgid "roa"
++msgstr "roa"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)απόρριψη, (o)αποδοχή μια φορά"
++
++#, fuzzy
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)απόρριψη, (o)αποδοχή μια φορά"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Έξοδος"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Διαγραφή"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Επαναφορά"
+
+@@ -40,18 +68,18 @@ msgstr "Επαναφορά"
+ msgid "Select"
+ msgstr "Επιλέξτε"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Βοήθεια"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Δεν έχετε κανένα ψευδώνυμο"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Ψευδώνυμα"
+
+@@ -60,53 +88,53 @@ msgstr "Ψευδώνυμα"
+ msgid "Alias as: "
+ msgstr "Ψευδώνυμο ως: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Έχετε ήδη ένα ψευδώνυμο με αυτό το όνομα"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: αυτό το ψευδώνυμο ίσως να μην δουλεύει. Διόρθωση;"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Διεύθυνση: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Λανθασμένη διεθνής διεύθυνση IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Προσωπικό Όνομα: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Δέχεστε;"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Αποθήκευση στο αρχείο: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Σφάλμα κατά την εμφάνιση αρχείου"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Σφάλμα κατά την εμφάνιση αρχείου"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Το ψευδώνυμο προστέθηκε"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Σφάλμα κατά την εμφάνιση αρχείου"
+@@ -116,7 +144,7 @@ msgstr "Σφάλμα κατά την εμφάνιση αρχείου"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "Το %s δεν υπάρχει. Δημιουργία;"
+@@ -125,8 +153,8 @@ msgstr "Το %s δεν υπάρχει. Δημιουργία;"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Αδυναμία δημιουργίας του %s: %s"
+@@ -136,7 +164,7 @@ msgstr "Αδυναμία δημιουργίας του %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -145,7 +173,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -154,7 +182,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -163,7 +191,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -175,7 +203,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Κρυπτογράφηση"
+@@ -183,7 +211,7 @@ msgstr "Κρυπτογράφηση"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -191,7 +219,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -200,7 +228,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Δεν βρέθηκαν (έγκυρα) πιστοποιητικά για το %s"
+@@ -212,12 +240,12 @@ msgstr "Δεν βρέθηκαν (έγκυρα) πιστοποιητικά για
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Κανένα γραμματοκιβώτιο.\n"
+@@ -229,14 +257,14 @@ msgstr "Κανένα γραμματοκιβώτιο.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Δημιουργία του %s;"
+@@ -244,7 +272,7 @@ msgstr "Δημιουργία του %s;"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Διαγραφή"
+
+@@ -252,9 +280,9 @@ msgstr "Διαγραφή"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -262,17 +290,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -281,7 +309,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -289,7 +317,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -297,12 +325,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -310,13 +338,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Σφάλμα κατά τη διερεύνηση του καταλόγου"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Διαγραφή του γραμματοκιβωτίου \"%s\";"
+@@ -334,7 +362,7 @@ msgstr "Διαγραφή του γραμματοκιβωτίου \"%s\";"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Αδυναμία κλειδώματος του γραμματοκιβωτίου!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+@@ -407,336 +435,287 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Το %s δεν είναι κατάλογος"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Αλλαγή καταλόγου"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Μάσκα"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Εγγραφή στο %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Διαγραφή στο %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "Το %s δεν είναι κατάλογος"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Εγγραφή στο %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Γραμματοκιβώτια [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Εγγεγραμμένα [%s], Μάσκα αρχείου: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Κατάλογος [%s], Μάσκα αρχείου: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Αδυναμία προσάρτησης ενός κατάλογου"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Κανένα αρχείο δεν ταιριάζει με τη μάσκα αρχείου"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Η δημιουργία υποστηρίζεται μόνο για τα γραμματοκιβώτια IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Η δημιουργία υποστηρίζεται μόνο για τα γραμματοκιβώτια IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Η διαγραφή υποστηρίζεται μόνο για τα γραμματοκιβώτια IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "απεικόνιση του ονόματος του τρέχοντος επιλεγμένου αρχείου"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Διαγραφή του γραμματοκιβωτίου \"%s\";"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Το γραμματοκιβώτιο διαγράφηκε"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Το γραμματοκιβώτιο διαγράφηκε"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Το γραμματοκιβώτιο δεν διαγράφηκε"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Αλλαγή καταλόγου σε:"
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Σφάλμα κατά τη διερεύνηση του καταλόγου"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Μάσκα αρχείου: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ανάστροφη ταξινόμηση κατά (d)ημερομηνία, (a)αλφαβητικά, (z)μέγεθος ή (n)άκυρο;"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ταξινόμηση κατά (d)ημερομηνία, (a)αλφαβητικά, (z)μέγεθος ή (n)άκυρο;"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Νέο όνομα αρχείου: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Αδυναμία ανάγνωσης ενός κατάλογου"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Σφάλμα κατά την εμφάνιση αρχείου"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Εγγραφή στο %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Διαγραφή στο %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Κανένα αρχείο δεν ταιριάζει με τη μάσκα αρχείου"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: το τερματικό δεν υποστηρίζει χρώμα"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: δεν υπάρχει τέτοιο χρώμα"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: δεν υπάρχει τέτοιο αντικείμενο"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: πολύ λίγα ορίσματα"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: δεν υπάρχει τέτοια ιδιότητα"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: πάρα πολλά ορίσματα"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "δεν υποστηρίζονται τα εξ'ορισμού χρώματα"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Επιβεβαίωση της ψηφιακής υπογραφής;"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Αδυναμία δημιουργίας προσωρινού αρχείου"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Αδυναμία δημιουργίας φίλτρου απεικόνισης"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Αδυναμία αντιγραφής του μηνύματος."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Η υπογραφή S/MIME επαληθεύτηκε επιτυχώς"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Ο ιδιοκτήτης του πιστοποιητικού S/MIME δεν ταιριάζει με τον αποστολέα"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Προειδοποίηση: Τμήμα αυτού του μηνύματος δεν είναι υπογεγραμμένο"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Η υπογραφή S/MIME ΔΕΝ επαληθεύτηκε"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Η υπογραφή PGP επαληθεύτηκε επιτυχώς"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Η υπογραφή PGP ΔΕΝ επαληθεύτηκε"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Σφάλμα κατά την εκτέλεση του \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Εντολή: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Διαβίβαση μηνύματος στον: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Διαβίβαση σημειωμένων μηνυμάτων στον: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Σφάλμα κατά την ανάλυση της διεύθυνσης"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Διαβίβαση μηνύματος στον %s?"
+ msgstr[1] "Διαβίβαση μηνυμάτων στον %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Το μήνυμα δεν διαβιβάστηκε"
+ msgstr[1] "Τα μηνύματα δεν διαβιβάστηκαν"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Το μήνυμα διαβιβάστηκε"
+ msgstr[1] "Τα μηνύματα διαβιβάστηκαν"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Αδυναμία δημιουργίας διεργασίας φίλτρου"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Διοχέτευση στην εντολή: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Δεν έχει οριστεί εντολή εκτυπώσεως"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Εκτύπωση μηνύματος;"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Εκτύπωση των σημειωμένων μηνυμάτων;"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Το μήνυμα εκτυπώθηκε"
+ msgstr[1] "Τα μηνύματα εκτυπώθηκαν"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -744,165 +723,332 @@ msgstr[0] "Αδυναμία εκτύπωσης μηνύματος"
+ msgstr[1] "Αδυναμία εκτύπωσης μηνυμάτων"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Αντ-Ταξ (d)ημν/(f)από/(r)λήψ/(s)θέμ/(o)προς/(t)νήμ/(u)άνευ/(z)μεγ/(c)βαθμ/s(p)am;: "
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ταξ (d)ημν/(f)από/(r)λήψ/(s)θέμ/(o)προς/(t)νήμ/(u)άνευ/(z)μεγ/(c)βαθμ/s(p)am;: "
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcp"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Εντολή φλοιού: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Αποκωδικοποίηση-αποθήκευση στο γραμματοκιβώτιο"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Αποκωδικοποίηση-αποθήκευση σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Αποκρυπτογράφηση-αποθήκευση στο γραμματοκιβώτιο"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Αποκρυπτογράφηση-αποθήκευση σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Αποθήκευση στο γραμματοκιβώτιο"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Αποθήκευση σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Αποκωδικοποίηση-αντιγραφή στο γραμματοκιβώτιο"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Αποκωδικοποίηση-αντιγραφή σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Αποκρυπτογράφηση-αντιγραφή στο γραμματοκιβώτιο"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Αποκρυπτογράφηση-αντιγραφή σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Αντιγραφή στο γραμματοκιβώτιο"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Αντιγραφή σημειωμένο στο γραμματοκιβώτιο"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Αντιγραφή στο %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Το Content-Type άλλαξε σε %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Μετατροπή σε %s κατά τη μεταφορά;"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Το Content-Type άλλαξε σε %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Το σετ χαρακτήρων άλλαξε σε %s; όχι μετατροπή"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Το σετ χαρακτήρων άλλαξε σε %s; μετατροπή"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: πολύ λίγα ορίσματα"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "πολύ λίγα ορίσματα"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Σφάλμα στο %s, γραμμή %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Σφάλμα στο %s, γραμμή %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: λάθη στο %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "πηγή: απόρριψη ανάγνωσης λόγω πολλών σφαλμάτων στο %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: λάθη στο %s"
++msgstr[1] "source: λάθη στο %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "ψευδώνυμο: καμμία διεύθυνση"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Προειδοποίηση: Λανθασμένη διεθνής διεύθυνση IDN '%s' στο ψευδώνυμο '%s'"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "επεξεργασία της περιγραφής της προσάρτησης"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "επεξεργασία της περιγραφής της προσάρτησης"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "επεξεργασία της περιγραφής της προσάρτησης"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: πάρα πολλά ορίσματα"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Προειδοποίηση: Λανθασμένη διεθνής διεύθυνση IDN '%s' στο ψευδώνυμο '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "μη έγκυρο πεδίο επικεφαλίδας"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: άγνωστη μεταβλητή"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "Το %s δεν έχει τεθεί"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: λάθος στο %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Αδυναμία εκτύπωσης μηνυμάτων"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: δεν υπάρχει μοντέλο που να ταιριάζει"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: δεν υπάρχει μοντέλο που να ταιριάζει"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "Εγγραφή στο %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Εγγραφή στο %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Δεν καθορίστηκε θέμα."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "επεξεργασία της περιγραφής της προσάρτησης"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Διαγραφή στο %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Διαγραφή στο %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Δεν υπάρχουν προσαρτήσεις"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Απάντ"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -913,78 +1059,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Υπογραφή ως: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Συνέχεια στο %s%s;"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "επεξεργασία του πεδίου Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Αποστολή"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Ακύρωση"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Προσαρτήστε αρχείο"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Περιγραφή"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Δεν καθορίστηκε θέμα."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -992,7 +1138,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -1000,14 +1146,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "y(ναι)"
+@@ -1018,7 +1164,7 @@ msgstr "y(ναι)"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1026,54 +1172,54 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Σημειώσεις δεν υποστηρίζονται."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Υπογραφή, κρυπτογράφηση"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Κρυπτογράφηση"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Υπογραφή"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(εσωτερικό κείμενο)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ #, fuzzy
+ msgid " (S/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<εξ'ορισμού>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Κρυπτογράφηση με: "
+
+@@ -1082,12 +1228,12 @@ msgstr "Κρυπτογράφηση με: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "επεξεργασία του πεδίου Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1098,7 +1244,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Το %s [#%d] δεν υπάρχει πια"
+@@ -1110,240 +1256,360 @@ msgstr "Το %s [#%d] δεν υπάρχει πια"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Το %s [#%d] μεταβλήθηκε. Ενημέρωση της κωδικοποίησης;"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Προσαρτήσεις"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Δεν μπορείτε να διαγράψετε τη μοναδική προσάρτηση"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Λανθασμένη διεθνής διεύθυνση IDN στο '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Η προσάρτηση αποθηκεύθηκε"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Η τρέχουσα προσάρτηση δεν θα μετατραπεί"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Η προσάρτηση έχει φιλτραριστεί"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Σφάλμα κατά την αποστολή του μηνύματος"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Προσάρτηση επιλεγμένων αρχείων..."
+ msgstr[1] "Προσάρτηση επιλεγμένων αρχείων..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Αδυναμία προσάρτησης του %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Άνοιγμα γραμματοκιβωτίου για την προσάρτηση μηνύματος από"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Άνοιγμα γραμματοκιβωτίου για την προσάρτηση μηνύματος από"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Αδυναμία κλειδώματος του γραμματοκιβωτίου!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Δεν υπάρχουν μηνύματα σε αυτό το φάκελο"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Σημειώστε τα μηνύματα που θέλετε να προσαρτήσετε"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Αδυναμία προσάρτησης"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Η επανακωδικοποίηση επηρεάζει μόνο της προσαρτήσεις κειμένου"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Η τρέχουσα προσάρτηση δεν θα μετατραπεί"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Η τρέχουσα προσάρτηση θα μετατραπεί"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Μη έγκυρη κωδικοποίηση"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Αποθήκευση αντιγράφου του μηνύματος;"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "παρουσίαση της προσάρτησης ως κείμενο"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Μετονομασία σε: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Αδυναμία λήψης της κατάστασης του %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Νέο αρχείο: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Το Content-Type είναι της μορφής base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Άγνωστο Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Αδυναμία δημιουργίας αρχείου %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Αποτυχία κατά την δημιουργία προσάρτησης"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Ανάκληση αναβληθέντος μηνύματος;"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Εγγραφή τους μηνύματος στο γραμματοκιβώτιο"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Εγγραφή μηνύματος στο %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Το μήνυμα γράφτηκε"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "Το S/MIME είχε ήδη επιλεγεί. Καθαρισμός ή συνέχεια ; "
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "Το PGP είχε ήδη επιλεγεί. Καθαρισμός ή συνέχεια ; "
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Αδυναμία κλειδώματος του γραμματοκιβωτίου"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Αποτυχία εντολής προσύνδεσης"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Αντιγραφή στο %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Αντιγραφή στο %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Σφάλμα. Διατήρηση προσωρινού αρχείου: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Μη έγκυρη μέρα του μήνα: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Μη έγκυρος μήνας: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Η λειτουργία απαγορεύεται στην κατάσταση προσάρτηση-μηνύματος."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Μη έγκυρη μέρα του μήνα: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Σφάλμα: '%s' είναι λανθασμένη διεθνής διεύθυνση IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: άγνωστη μεταβλητή"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Όνομα χρήστη στο %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Συνθηματικό για το %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Η εντολή ερωτήσεως δεν καθορίστηκε"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1364,7 +1630,7 @@ msgstr "Σύνδεση στο %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Αδυναμία σύνδεσης στο %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "άγνωστο σφάλμα"
+
+@@ -1378,24 +1644,24 @@ msgstr "Σφάλμα στη συνομιλία με το %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Έκλεισε η σύνδεση στο %s"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1408,138 +1674,112 @@ msgstr "Αποτυχία εντολής προσύνδεσης"
+ msgid "Connection to %s closed"
+ msgstr "Έκλεισε η σύνδεση στο %s"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Αποθήκευση εντροπίας: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "Το %s έχει ανασφαλή δικαιώματα"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Το SSL απενεργοποιήθηκε λόγω λήψης εντροπίας"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Άγνωστο"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[αδυναμία υπολογισμού]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[μη έγκυρη ημερομηνία]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Η πιστοποίηση του διακομιστή δεν είναι ακόμα έγκυρη"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Το πιστοποιητικό του διακομιστή έληξε"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Αποτυχία στην εύρεση αρκετής εντροπίας στο σύστημα σας"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Αδυναμία στη λήψη πιστοποιητικού από το ταίρι"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Αδυναμία στη λήψη πιστοποιητικού από το ταίρι"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Ο ιδιοκτήτης του πιστοποιητικού S/MIME δεν ταιριάζει με τον αποστολέα."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Αυτό το πιστοποιητικό ανήκει στο:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Αυτό το πιστοποιητικό εκδόθηκε από το:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Αυτό το πιστοποιητικό είναι έγκυρο"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " από %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " προς %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Αποτύπωμα: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Αποτύπωμα: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)απόρριψη, (o)αποδοχή μια φορά, (a)αποδοχή πάντα"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)απόρριψη, (o)αποδοχή μια φορά, (a)αποδοχή πάντα"
+-
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)απόρριψη, (o)αποδοχή μια φορά"
++msgid "SHA256 Fingerprint: "
++msgstr "Αποτύπωμα: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)απόρριψη, (o)αποδοχή μια φορά"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Έξοδος "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Προειδοποίηση: Αδυναμία αποθήκευσης πιστοποιητικού"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Το πιστοποιητικό αποθηκεύτηκε"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Το πιστοποιητικό αποθηκεύτηκε"
+@@ -1547,15 +1787,15 @@ msgstr "Το πιστοποιητικό αποθηκεύτηκε"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O σφάλμα"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL απέτυχε: %s"
+@@ -1563,96 +1803,80 @@ msgstr "SSL απέτυχε: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Σφάλμα: αδυναμία δημιουργίας υποδιεργασίας OpenSSL!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Αδυναμία στη λήψη πιστοποιητικού από το ταίρι"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "Το πιστοποιητικό αποθηκεύτηκε"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Λάθος κατά την αρχικοποίηση του τερματικού."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Η πιστοποίηση του διακομιστή δεν είναι ακόμα έγκυρη"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Το πιστοποιητικό του διακομιστή έληξε"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Το πιστοποιητικό του διακομιστή έληξε"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Η πιστοποίηση του διακομιστή δεν είναι ακόμα έγκυρη"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Σύνδεση SSL χρησιμοποιώντας το %s (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1671,38 +1895,18 @@ msgstr "Σφάλμα στη συνομιλία με το %s (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "y(ναι)"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "n(όχι)"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Έξοδος από το NeoMutt;"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Πατήστε ένα πλήκτρο για να συνεχίσετε..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr "('?' για λίστα): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1734,7 +1938,7 @@ msgstr ""
+ "~? αυτό το μήνυμα\n"
+ ". μόνη της σε μια γραμμή τερματίζει την είσοδο\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1766,20 +1970,20 @@ msgstr ""
+ "~? αυτό το μήνυμα\n"
+ ". μόνη της σε μια γραμμή τερματίζει την είσοδο\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Τελειώστε το μήνυμα με . μόνη της σε μια γραμμή)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Κανένα γραμματοκιβώτιο.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Το μήνυμα περιέχει:\n"
+
+@@ -1787,19 +1991,19 @@ msgstr "Το μήνυμα περιέχει:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(συνεχίστε)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "λείπει το όνομα του αρχείου.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Δεν υπάρχουν γραμμές στο μήνυμα.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: άγνωστη εντολή κειμενογράφου (~? για βοήθεια)\n"
+@@ -1846,19 +2050,73 @@ msgstr "Αδυναμία πρόσθεσης στο φάκελο: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "το πολυμερές μήνυμα δεν έχει οριοθέτουσα παράμετρο"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Η χρήση συζητήσεων δεν έχει ενεργοποιηθεί"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Ορίστε σημαία"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Καθαρίστε σημαία"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: το τερματικό δεν υποστηρίζει χρώμα"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: δεν υπάρχει τέτοιο χρώμα"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: δεν υπάρχει τέτοιο αντικείμενο"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: δεν υπάρχει τέτοια ιδιότητα"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "δεν υποστηρίζονται τα εξ'ορισμού χρώματα"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: μη έγκυρος αριθμός μηνύματος.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "y(ναι)"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "n(όχι)"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Έξοδος από το NeoMutt;"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Πατήστε ένα πλήκτρο για να συνεχίσετε..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr "('?' για λίστα): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1879,23 +2137,23 @@ msgstr "[-- Autoview χρησιμοποιώντας το %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Κλήση της εντολής autoview: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Αδυναμία δημιουργίας φίλτρου"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Αδυναμία εκτέλεσης στις %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Autoview κανονική έξοδος του %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Σφάλμα: το μήνυμα/εξωτερικό-σώμα δεν έχει παράμετρο access-type --]\n"
+
+@@ -1914,7 +2172,7 @@ msgstr "[-- Σφάλμα: το μήνυμα/εξωτερικό-σώμα δεν
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1943,7 +2201,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1957,7 +2215,7 @@ msgstr[1] "[-- Αυτή η %s/%s προσάρτηση (μέγεθος %s bytes)
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1969,12 +2227,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Αυτή η %s/%s προσάρτηση έχει διαγραφεί --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- όνομα: %s --]\n"
+@@ -1982,7 +2240,7 @@ msgstr "[-- όνομα: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1998,7 +2256,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2007,96 +2265,96 @@ msgstr ""
+ "[-- Αυτή η %s/%s προσάρτηση δεν περιλαμβάνετε, --]\n"
+ "[-- και το ενδεδειγμένο access-type %s δεν υποστηρίζεται --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Σφάλμα: Αδυναμία απεικόνισης σε όλα τα μέρη του Multipart/Alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Προσάρτηση #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Προσάρτηση #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Προειδοποίηση: Τμήμα αυτού του μηνύματος δεν είναι υπογεγραμμένο."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Αδυναμία ανοίγματος προσωρινού αρχείου"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Αδυναμία ανοίγματος προσωρινού αρχείου"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Αδυναμία ανοίγματος προσωρινού αρχείου"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Σφάλμα: το πολυμερές/υπογεγραμμένο δεν έχει πρωτόκολλο"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Αυτή η %s/%s προσάρτηση (χρησιμοποιήστε το '%s' για να δείτε αυτό το μέρος) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- Το %s/%s δεν υποστηρίζεται (χρησιμοποιήστε το '%s' για να δείτε αυτό το μέρος) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Αυτή η %s/%s προσάρτηση (απαιτείται το 'view-attachments' να είναι συνδεδεμένο με πλήκτρο --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Το %s/%s δεν υποστηρίζεται (απαιτείται το 'view-attachments' να είναι συνδεδεμένο με πλήκτρο --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Αυτή η %s/%s προσάρτηση --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- Το %s/%s δεν υποστηρίζεται --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ΣΦΑΛΜΑ: παρακαλώ αναφέρατε αυτό το σφάλμα προγράμματος"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<ΑΓΝΩΣΤΟ>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Γενικές συνδέσεις:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Μη συνδεδεμένες λειτουργίες:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Βοήθεια για το %s"
+@@ -2113,41 +2371,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Αδυναμία unhook * μέσα από ένα hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: άγνωστος τύπος hook: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Αδυναμία διαγραφής ενός %s μέσα από ένα %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: δεν υπάρχει τέτοιο μενού"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: δεν υπάρχει τέτοιο μενού"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: δεν υπάρχει τέτοιο μενού"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Αδυναμία δημιουργίας προσωρινού αρχείου %s"
+@@ -2185,30 +2443,30 @@ msgstr "Αυθεντικοποίηση GSSAPI απέτυχε"
+ msgid "LOGIN disabled on this server"
+ msgstr "Το LOGIN απενεργοποιήθηκε σε αυτό τον διακομιστή"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Είσοδος στο σύστημα..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Απέτυχε η είσοδος στο σύστημα"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Αυθεντικοποίηση (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Αυθεντικοποίηση OAUTHBEARER απέτυχε"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Αυθεντικοποίηση (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Αυθεντικοποίηση SASL απέτυχε"
+
+@@ -2257,90 +2515,80 @@ msgstr "SSL απέτυχε: %s"
+ msgid "Mailbox renamed"
+ msgstr "Το γραμματοκιβώτιο δημιουργήθηκε"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Το γραμματοκιβώτιο έκλεισε"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Έκλεισε η σύνδεση στο %s"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Αυτός ο εξυπηρετητής IMAP είναι αρχαίος. Το NeoMutt δεν είναι συμβατό με αυτόν."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL απέτυχε: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Κλείσιμο σύνδεσης στο στο %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Ασφαλής σύνδεση με TLS;"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Αδυναμία διαπραγμάτευσης σύνδεσης TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr ""
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Εγγραφή στο %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Διαγραφή στο %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "Εγγραφή στο %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Διαγραφή στο %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Αντιγραφή %d μηνυμάτων στο %s..."
+ msgstr[1] "Αντιγραφή %d μηνυμάτων στο %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Δημιουργία του %s;"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Διαγραφή απέτυχε"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2348,44 +2596,44 @@ msgstr[0] "Σημείωση %d διαγραφέντων μηνυμάτων..."
+ msgstr[1] "Σημείωση %d διαγραφέντων μηνυμάτων..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Αποθήκευση σημαιών κατάστασης μηνύματος... [%d/%d]"
+ msgstr[1] "Αποθήκευση σημαιών κατάστασης μηνύματος... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Σφάλμα κατά την ανάλυση της διεύθυνσης!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Διαγραφή μηνυμάτων από τον εξυπηρετητή..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE απέτυχε"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Επιλογή %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Σφάλμα κατά το άνοιγμα του γραμματοκιβωτίου"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Μη έγκυρο "
+@@ -2396,7 +2644,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Η μνήμη εξαντλήθηκε"
+
+@@ -2417,7 +2665,7 @@ msgstr "Λήψη επικεφαλίδων από τα μηνύματα... [%d/%d
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Αδυναμία λήψης επικεφαλίδων από αυτή την έκδοση του εξυπηρετητή IMAP"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Λήψη επικεφαλίδων από τα μηνύματα... [%d/%d]"
+@@ -2432,156 +2680,156 @@ msgstr "Ανέβασμα μηνύματος ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Αντιγραφή μηνύματος %d στο %s ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Λήψη μηνύματος..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Ο δείκτης του μηνύματος είναι άκυρος. Ξανανοίξτε το γραμματοκιβώτιο."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Συνέχεια;"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Έξοδος"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Αποθήκ"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Ταχυδρ"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Απάντ"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Ομάδα"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Συνέχεια στο %s%s;"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Δεν υπάρχουν ανοιχτά γραμματοκιβώτια"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Δεν υπάρχουν μηνύματα"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Δεν υπάρχουν ορατά μηνύματα"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Το γραμματοκιβώτιο είναι μόνο για ανάγνωση"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Η λειτουργία απαγορεύεται στην κατάσταση προσάρτηση-μηνύματος"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Αδυναμία αλλαγής σε κατάσταση εγγραφής σε γραμματοκιβώτιο μόνο για ανάγνωση"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Οι αλλαγές στο φάκελο θα γραφούν κατά τη έξοδο από το φάκελο"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Οι αλλαγές στο φάκελο δεν θα γραφούν"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "Το %s δεν είναι γραμματοκιβώτιο"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Το γραμματοκιβώτιο τροποποιήθηκε εξωτερικά. Οι σημαίες μπορεί να είναι λάθος"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Νέα αλληλογραφία σε αυτό το γραμματοκιβώτιο"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Το γραμματοκιβώτιο τροποποιήθηκε εξωτερικά"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Δεν υπάρχουν σημειωμένα μηνύματα"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Καμμία ενέργεια"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Εισάγετε το keyID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Το τρέχον μήνυμα δεν είναι ορατό σε αυτή τη περιορισμένη όψη"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Διαγραφή μηνυμάτων από τον εξυπηρετητή..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "διαγραφή όλων των μηνυμάτων στη συζήτηση"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Μετάβαση στο μήνυμα: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Η παράμετρος πρέπει να είναι αριθμός μηνύματος"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Μη έγκυρος αριθμός μηνύματος"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Αυτό το μήνυμα δεν είναι ορατό"
+
+@@ -2594,38 +2842,38 @@ msgstr "Αυτό το μήνυμα δεν είναι ορατό"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Δεν υπάρχουν αποκαταστημένα μηνύματα."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Διαγραφή παρόμοιων μηνυμάτων: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Κανένα υπόδειγμα ορίων σε λειτουργία"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Όριο: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Περιορισμός στα παρόμοια μηνύματα: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Έξοδος από το NeoMutt;"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Σημειώστε μηνύματα που ταιριάζουν σε: "
+
+@@ -2633,213 +2881,213 @@ msgstr "Σημειώστε μηνύματα που ταιριάζουν σε: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Δεν υπάρχουν αποκαταστημένα μηνύματα."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Επαναφορά τα μηνύματα που ταιριάζουν σε: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Αφαίρεση της σημείωσης στα μηνύματα που ταιριάζουν σε: "
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "Κλείσιμο σύνδεσης στον εξυπηρετητή IMAP.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Δεν υπάρχει θέμα, εγκατάλειψη"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Δεν υπάρχει θέμα, εγκατάλειψη"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Δεν υπάρχει θέμα, εγκατάλειψη"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Ανοίξτε το γραμματοκιβώτιο σε κατάσταση μόνο για εγγραφή"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Ανοίξτε το γραμματοκιβώτιο"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Δεν υπάρχει νέα αλληλογραφία σε κανένα γραμματοκιβώτιο."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Ανοίξτε το γραμματοκιβώτιο σε κατάσταση μόνο για εγγραφή"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Έξοδος από το NeoMutt χωρίς αποθήκευση;"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Αδυναμία δημιουργίας φίλτρου"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "αποθήκευση αυτού του μηνύματος για μετέπειτα αποστολή"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Είστε στο τελευταίο μήνυμα"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Δεν υπάρχουν αποκαταστημένα μηνύματα"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Είστε στο πρώτο μήνυμα"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Το τρέχον μήνυμα δεν είναι ορατό σε αυτή τη περιορισμένη όψη"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Δεν υπάρχουν νέα μηνύματα"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Το τρέχον μήνυμα δεν είναι ορατό σε αυτή τη περιορισμένη όψη"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Δεν υπάρχουν μη αναγνωσμένα μηνύματα"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Αναζήτηση συνεχίστηκε από την κορυφή"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Αναζήτηση συνεχίστηκε στη βάση"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "απεικόνιση του μηνύματος"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Δεν υπάρχουν άλλες συζητήσεις"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Είστε στην πρώτη συζήτηση"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Η συζήτηση περιέχει μη αναγνωσμένα μηνύματα"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Δεν υπάρχουν αποκαταστημένα μηνύματα."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Αδυναμία εγγραφής του μηνύματος"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2849,7 +3097,7 @@ msgstr[1] "Δεν έγινε αλλαγή στο γραμματοκιβώτιο
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Δεν έγινε αλλαγή στο γραμματοκιβώτιο "
+@@ -2858,7 +3106,7 @@ msgstr "Δεν έγινε αλλαγή στο γραμματοκιβώτιο "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "μετάβαση στο τρέχον μήνυμα της συζήτησης"
+@@ -2866,14 +3114,14 @@ msgstr "μετάβαση στο τρέχον μήνυμα της συζήτησ
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Εισάγετε το keyID: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Το μήνυμα ανεβλήθη."
+@@ -2881,264 +3129,123 @@ msgstr "Το μήνυμα ανεβλήθη."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Το μήνυμα διαβιβάστηκε"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Δεν υπάρχουν μηνύματα σε αυτό το φάκελο"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Δεν υπάρχουν αποκαταστημένα μηνύματα."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Λάθος στη γραμμή εντολών: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Λάθος στη γραμμή εντολών: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "αδυναμία στον εντοπισμό του ονόματος χρήστη"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "πολύ λίγα ορίσματα"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Σφάλμα στο %s, γραμμή %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Σφάλμα στο %s, γραμμή %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: λάθη στο %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "πηγή: απόρριψη ανάγνωσης λόγω πολλών σφαλμάτων στο %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: λάθη στο %s"
+-msgstr[1] "source: λάθη στο %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "ψευδώνυμο: καμμία διεύθυνση"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Προειδοποίηση: Λανθασμένη διεθνής διεύθυνση IDN '%s' στο ψευδώνυμο '%s'"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "επεξεργασία της περιγραφής της προσάρτησης"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "επεξεργασία της περιγραφής της προσάρτησης"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "επεξεργασία της περιγραφής της προσάρτησης"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Προειδοποίηση: Λανθασμένη διεθνής διεύθυνση IDN '%s' στο ψευδώνυμο '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "μη έγκυρο πεδίο επικεφαλίδας"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: άγνωστη μεταβλητή"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "Το %s δεν έχει τεθεί"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: λάθος στο %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Αδυναμία εκτύπωσης μηνυμάτων"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: δεν υπάρχει μοντέλο που να ταιριάζει"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: δεν υπάρχει μοντέλο που να ταιριάζει"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Εγγραφή στο %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Δεν καθορίστηκε θέμα."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "επεξεργασία της περιγραφής της προσάρτησης"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Διαγραφή στο %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: άγνωστη εντολή"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Μη έγκυρη μέρα του μήνα: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Η λειτουργία απαγορεύεται στην κατάσταση προσάρτηση-μηνύματος."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Εντοπίστηκε βρόγχος μακροεντολής"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Το πλήκτρο δεν είναι συνδεδεμένο"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Το πλήκτρο δεν είναι συνδεδεμένο. Πατήστε '%s' για βοήθεια."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: κενή ακολουθία πλήκτρων"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: άδεια ακολουθία πλήκτρων"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: καθόλου ορίσματα"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: δεν υπάρχει τέτοια λειτουργία"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Εισάγετε κλειδιά (^G για απόρριψη): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Χαρακτ = %s, Οκταδικός = %o, Δεκαδικός = %d"
+@@ -3162,7 +3269,7 @@ msgstr "Η είσοδος mailcap για το τύπο %s δε βρέθηκε"
+ msgid "Scanning %s..."
+ msgstr "Επιλογή %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Ανάγνωση %s..."
+@@ -3178,13 +3285,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): αδυναμία ορισμού χρόνου στο αρχείο"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Εγγραφή %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3207,7 +3314,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3250,54 +3357,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Λάθος κατά την αρχικοποίηση του τερματικού"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "αδυναμία στον εντοπισμό του ονόματος χρήστη"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "αδυναμία στον εντοπισμό του καταλόγου χρήστη (home directory)"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Σφάλμα: '%s' είναι λανθασμένη διεθνής διεύθυνση IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Δεν έχουν οριστεί παραλήπτες"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Αδυναμία πρόσβασης στο αρχείο μηνυμάτων: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: αδυναμία στην προσάρτηση του αρχείου"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Δεν υπάρχει νέα αλληλογραφία σε κανένα γραμματοκιβώτιο"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Δεν έχει οριστεί γραμματοκιβώτιο εισερχομένων"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Το γραμματοκιβώτιο είναι άδειο"
+
+@@ -3341,52 +3448,52 @@ msgstr "Αδυναμία επαναπρόσβασης του γραμματοκ
+ msgid "Can't write message"
+ msgstr "Αδυναμία εγγραφής του μηνύματος"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Μετακίνηση στο: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Μη έγκυρος αριθμός δείκτη"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Καμμία καταχώρηση"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Δεν μπορείτε να μετακινηθείτε παρακάτω"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Δεν μπορείτε να μετακινηθείτε παραπάνω"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Είστε στην πρώτη σελίδα"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Είστε στην τελευταία σελίδα"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Είστε στην τελευταία καταχώρηση"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Είστε στην πρώτη καταχώρηση"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Αναζήτηση για: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Ανάστροφη αναζήτηση για: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Δε βρέθηκε"
+
+@@ -3429,20 +3536,20 @@ msgstr "Αναμονή για προσπάθεια flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Αδυναμία δημιουργίας προσωρινού αρχείου"
+
+@@ -3461,7 +3568,7 @@ msgstr "Αποσφαλμάτωση στο επίπεδο %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Αποσφαλμάτωση στο επίπεδο %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Σφάλμα κατα τη σύνδεση στο διακομιστή: %s"
+@@ -3485,17 +3592,17 @@ msgstr "Εντοπισμός σήματος %d (%s) ... Εγκατάλειψη.
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Εντοπισμός σήματος %d ... Εγκατάλειψη.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3503,148 +3610,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Το αρχείο είναι φάκελος, αποθήκευση υπό αυτού; (y)ναι, (n)όχι, (a)όλα"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Το αρχείο είναι φάκελος, αποθήκευση υπό αυτού;"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Αρχείο υπό φάκελο:"
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Το αρχείο υπάρχει, (o)διαγραφή του υπάρχοντος, (a)πρόσθεση, (c)άκυρο;"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Αδυναμία εγγραφής του μηνύματος στο POP γραμματοκιβώτιο"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Πρόσθεση μηνυμάτων στο %s;"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Αδυναμία επεξεργασίας μηνύματος στο διακομιστή POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Όνομα χρήστη στο %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Συνθηματικό για το %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Η εντολή ερωτήσεως δεν καθορίστηκε"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Αδυναμία ταιριάσματος του 'nametemplate', συνέχεια;"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Η καταχώρηση στοιχείων του mailcap χρειάζεται το %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Αποτυχία κατά το άνοιγμα αρχείου για την ανάλυση των επικεφαλίδων"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Αποτυχία κατά το άνοιγμα αρχείου για την απογύμνωση των επικεφαλίδων"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Αποτυχία μετονομασίας αρχείου"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Καμμία καταχώρηση mailcap για το %s, δημιουργία κενού αρχείου"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Η καταχώρηση mailcap Edit χρειάζεται το %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Δεν υπάρχει καταχώρηση mailcap για επεξεργασία κειμένου για το %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Δεν βρέθηκε όμοια καταχώρηση Mailcap. Απεικόνιση ως κείμενο."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Ο τύπος MIME δεν έχει οριστεί. Αδυναμία εμφάνισης προσαρτήσεως."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Προσαρτήσεις"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Προσαρτήσεις"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Σφάλμα εγγραφής"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Δεν γνωρίζω πώς να το τυπώσω αυτό"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Αναζήτηση"
+
+@@ -3653,21 +3732,21 @@ msgstr "Αναζήτηση"
+ msgid "History '%s'"
+ msgstr "Ερώτηση '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Μη έγκυρη μέρα του μήνα: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Αδυναμία κλειδώματος του %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Νέα αλληλογραφία στο "
+
+@@ -3689,20 +3768,20 @@ msgstr "Το τρέχον μήνυμα δεν είναι ορατό σε αυτ
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Το τρέχον μήνυμα δεν είναι ορατό σε αυτή τη περιορισμένη όψη"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Η αναζήτηση διακόπηκε."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Αδυναμία προσάρτησης του %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3714,69 +3793,69 @@ msgstr[1] "Σημείωση %d διαγραφέντων μηνυμάτων..."
+ msgid "Can't open trash folder"
+ msgstr "Αδυναμία πρόσθεσης στο φάκελο: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Μετακίνηση αναγνωσμένων μηνυμάτων στο %s;"
+ msgstr[1] "Μετακίνηση αναγνωσμένων μηνυμάτων στο %s;"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Καθαρισμός %d διεγραμμένου μηνύματος;"
+ msgstr[1] "Καθαρισμός %d διεγραμμένων μηνυμάτων;"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Μετακίνηση αναγνωσμένων μηνυμάτων στο %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Δεν έγινε αλλαγή στο γραμματοκιβώτιο "
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d κρατήθηκαν, %d μετακινήθηκαν, %d διαγράφηκαν"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d κρατήθηκαν, %d διαγράφηκαν"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Πατήστε '%s' για να ενεργοποιήσετε την εγγραφή!"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Χρησιμοποιήστε το 'toggle-write' για να ενεργοποιήσετε την εγγραφή"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Το γραμματοκιβώτιο είναι σημειωμένο μη εγγράψιμο. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Το γραμματοκιβώτιο σημειώθηκε"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr "(τρέχουσα ώρα: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s ακολουθεί έξοδος%s --]\n"
+@@ -3785,55 +3864,55 @@ msgstr "[-- %s ακολουθεί έξοδος%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Η φράση(-εις)-κλειδί έχει ξεχαστεί"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Το μήνυμα δεν μπορεί να σταλεί ως εσωτερικό κείμενο. Να χρησιμοποιηθεί PGP/MIME;"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Το μήνυμα δεν μπορεί να σταλεί ως εσωτερικό κείμενο. Να χρησιμοποιηθεί PGP/MIME;"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Κλήση του PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Το μήνυμα δεν μπορεί να σταλεί ως εσωτερικό κείμενο. Να χρησιμοποιηθεί PGP/MIME;"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Το γράμμα δεν εστάλη"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Δεν υποστηρίζονται μηνύματα S/MIME χωρίς πληροφορίες στην επικεφαλίδα"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Προσπάθεια εξαγωγής κλειδιών PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Προσπάθεια εξαγωγής πιστοποιητικών S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3842,7 +3921,7 @@ msgstr ""
+ "[-- Σφάλμα: Άγνωστο πολυμερές/υπογεγραμμένο πρωτόκολλο %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3851,7 +3930,7 @@ msgstr ""
+ "[-- Σφάλμα: Ασυνεπής πολυμερής/υπογεγραμμένη δομή --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3860,7 +3939,7 @@ msgstr ""
+ "[-- Προειδοποίηση: αδυναμία επιβεβαίωσης %s%s υπογραφών --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3868,7 +3947,7 @@ msgstr ""
+ "[-- Τα επόμενα δεδομένα είναι υπογεγραμμένα --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3876,7 +3955,7 @@ msgstr ""
+ "[-- Προειδοποίηση: Αδυναμία εύρεσης υπογραφών. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3896,237 +3975,237 @@ msgstr "Κλήση του S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Μη έγκυρος μήνας: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Μη έγκυρος μήνας: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Αποτύπωμα: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "ID κλειδιού: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ #, fuzzy
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Προειδοποίηση: Τμήμα αυτού του μηνύματος δεν είναι υπογεγραμμένο."
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Το πιστοποιητικό του διακομιστή έληξε"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "Το SSL δεν είναι διαθέσιμο."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Δημιουργία του %s;"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Λάθος στη γραμμή εντολών: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4135,28 +4214,34 @@ msgstr ""
+ "\n"
+ "[-- Τέλος υπογεγραμμένων δεδομένων --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Σφάλμα: αδυναμία δημιουργίας προσωρινού αρχείου! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "Η υπογραφή PGP επαληθεύτηκε επιτυχώς"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4164,11 +4249,11 @@ msgstr ""
+ "[-- ΕΝΑΡΞΗ ΜΗΝΥΜΑΤΟΣ PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- ΕΝΑΡΞΗ ΟΜΑΔΑΣ ΔΗΜΟΣΙΩΝ ΚΛΕΙΔΙΩΝ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4176,19 +4261,19 @@ msgstr ""
+ "[-- ΕΝΑΡΞΗ ΥΠΟΓΕΓΡΑΜΜΕΝΟΥ PGP ΜΗΝΥΜΑΤΟΣ --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- ΤΕΛΟΣ ΜΗΝΥΜΑΤΟΣ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- ΤΕΛΟΣ ΟΜΑΔΑΣ ΔΗΜΟΣΙΩΝ ΚΛΕΙΔΙΩΝ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- ΤΕΛΟΣ ΥΠΟΓΕΓΡΑΜΜΕΝΟΥ PGP ΜΗΝΥΜΑΤΟΣ --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4196,11 +4281,11 @@ msgstr ""
+ "[-- Σφάλμα: δε μπόρεσε να βρεθεί η αρχή του μηνύματος PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Σφάλμα: αδυναμία δημιουργίας προσωρινού αρχείου --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4209,7 +4294,7 @@ msgstr ""
+ "[-- Τα επόμενα δεδομένα είναι κρυπτογραφημένα μέσω PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4217,75 +4302,70 @@ msgstr ""
+ "[-- Τα επόμενα δεδομένα είναι κρυπτογραφημένα μέσω PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Τέλος δεδομένων κρυπτογραφημένων μέσω PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Τέλος δεδομένων κρυπτογραφημένων μέσω PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "Η υπογραφή PGP επαληθεύτηκε επιτυχώς"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "Αδυναμία αντιγραφής του μηνύματος."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+ msgstr "[-- Τα επόμενα δεδομένα είναι υπογεγραμμένα με S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+ msgstr "[-- Τα επόμενα δεδομένα είναι κρυπτογραφημένα μέσω S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Τέλος δεδομένων υπογεγραμμένων με S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Τέλος δεδομένων κρυπτογραφημένων μέσω S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "Μη έγκυρο "
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4293,104 +4373,104 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Κρυπτογράφηση"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "Το πιστοποιητικό αποθηκεύτηκε"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ #, fuzzy
+ msgid "[Revoked]"
+ msgstr "Ανακλήθηκε "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "Έληξε "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "Σύνδεση στο %s..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Σφάλμα κατα τη σύνδεση στο διακομιστή: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Λάθος στη γραμμή εντολών: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID κλειδιού: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Όλα τα κλειδιά που ταιριάζουν είναι ληγμένα, ακυρωμένα ή ανενεργά"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Διαλέξτε "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Ελέγξτε κλειδί "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Όμοια S/MIME κλειδιά \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "Όμοια PGP κλειδιά \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "Όμοια πιστοποιητικά S/MIME \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "Όμοια PGP κλειδιά \"%s\"."
+@@ -4399,59 +4479,59 @@ msgstr "Όμοια PGP κλειδιά \"%s\"."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr ""
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Αυτό το κλειδί δεν μπορεί να χρησιμοποιηθεί ληγμένο/αχρηστευμένο/άκυρο"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Το ID είναι ληγμένο/αχρηστευμένο/άκυρο. Θέλετε σίγουρα να χρησιμοποιήσετε το κλειδί;"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Το ID δεν είναι έγκυρο. Θέλετε σίγουρα να χρησιμοποιήσετε το κλειδί;"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Το ID είναι μόνο μερικώς έγκυρο. Θέλετε σίγουρα να χρησιμοποιήσετε το κλειδί;"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Το ID έχει μη ορισμένη εγκυρότητα. Θέλετε σίγουρα να χρησιμοποιήσετε το κλειδί;"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Εύρεση όμοιων κλειδιών με \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Να χρησιμοποιηθεί keyID = \"%s\" για το %s;"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Εισάγετε keyID για το %s: "
+@@ -4460,16 +4540,16 @@ msgstr "Εισάγετε keyID για το %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Δε βρέθηκε"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Παρακαλώ γράψτε το ID του κλειδιού: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+@@ -4477,103 +4557,103 @@ msgstr "σφάλμα στο μοντέλο στο: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Κλειδί PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "esabc"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "esabc"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "esabc"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "esabc"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "esabc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "esabc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Αποτυχία κατά το άνοιγμα αρχείου για την ανάλυση των επικεφαλίδων."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Εισάγετε την φράση-κλειδί PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Σφάλμα: αδυναμία στη δημιουργία υποδιεργασίας PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4584,16 +4664,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Η υπογραφή PGP επαληθεύτηκε επιτυχώς"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4601,132 +4681,132 @@ msgstr ""
+ "[-- Σφάλμα: αδυναμία στη δημιουργία υποδιεργασίας PGP --0]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Η αποκρυπτογράφηση απέτυχε"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Αδυναμία ανοίγματος υποδιεργασίας PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Αδυναμία κλήσης του PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)εσωτερικό κείμενο"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "esabc"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "esabc"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabc"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabc"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabc"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)κλείδ, (s)υπογρ, υπογρ.σ(a)ν, (b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Λήψη κλειδιού PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Όλα τα κλειδιά που ταιριάζουν είναι ληγμένα, ακυρωμένα ή ανενεργά"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Όμοια PGP κλειδιά <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Όμοια PGP κλειδιά \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Αδυναμία ανοίγματος /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Κλειδί PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Εισάγετε την φράση-κλειδί S/MIME:"
+
+@@ -4735,7 +4815,7 @@ msgstr "Εισάγετε την φράση-κλειδί S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Έληξε "
+
+@@ -4744,7 +4824,7 @@ msgstr "Έληξε "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Μη έγκυρο "
+
+@@ -4753,7 +4833,7 @@ msgstr "Μη έγκυρο "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Ανακλήθηκε "
+
+@@ -4762,7 +4842,7 @@ msgstr "Ανακλήθηκε "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Εμπιστευμένο "
+
+@@ -4771,7 +4851,7 @@ msgstr "Εμπιστευμένο "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Μη Επιβεβαιωμένο"
+
+@@ -4780,7 +4860,7 @@ msgstr "Μη Επιβεβαιωμένο"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Επιβεβαιωμένο "
+
+@@ -4789,60 +4869,60 @@ msgstr "Επιβεβαιωμένο "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Άγνωστο "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Όμοια πιστοποιητικά S/MIME \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Το ID δεν είναι έγκυρο. Θέλετε σίγουρα να χρησιμοποιήσετε το κλειδί;"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Εισάγετε το keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Δεν βρέθηκαν (έγκυρα) πιστοποιητικά για το %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Σφάλμα: αδυναμία δημιουργίας υποδιεργασίας OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Αδυναμία στη λήψη πιστοποιητικού από το ταίρι"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "κανένα αρχείο πιστοποιητικών"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "κανένα γραμματοκιβώτιο"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Καμμία έξοδος από OpenSSL.."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Αδυναμία υπογραφής. Δεν έχει οριστεί κλειδί. Χρησιμοποιήστε Υπογρ.σαν"
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Αδυναμία εκκίνησης υποδιεργασίας OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4850,19 +4930,19 @@ msgstr ""
+ "[-- Τέλος της εξόδου OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Σφάλμα: αδυναμία δημιουργίας υποδιεργασίας OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Τα επόμενα δεδομένα είναι κρυπτογραφημένα μέσω S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Τα επόμενα δεδομένα είναι υπογεγραμμένα με S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4870,7 +4950,7 @@ msgstr ""
+ "\n"
+ "[-- Τέλος δεδομένων κρυπτογραφημένων μέσω S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4879,167 +4959,167 @@ msgstr ""
+ "[-- Τέλος δεδομένων υπογεγραμμένων με S/MIME --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)κλείδ,(s)υπογρ,(w)υπογρ.με,υπογρ.σ(a)ν,(b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eswabc"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)κλείδ,(s)υπογρ,(w)υπογρ.με,υπογρ.σ(a)ν,(b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabc"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)κλείδ,(s)υπογρ,(w)υπογρ.με,υπογρ.σ(a)ν,(b)κλ+υπ, %s, ή (c)τίποτα; "
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s είναι μη έγκυρη POP διαδρομή"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Η σύνδεση με τον εξυπηρετητή έκλεισε"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Δεν υπάρχει διαθέσιμη αυθεντικοποίηση."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Αυθεντικοποίηση SASL απέτυχε"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Έκλεισε η σύνδεση στο %s"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Λήψη λίστας μηνυμάτων..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Έλεγχος για νέα μηνύματα..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "αδυναμία εγγραφής προσωρινού φακέλου αλληλογραφίας: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Σύνδεση στο %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Καμμία ενέργεια"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Αδυναμία λήψης της κατάστασης του %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Διαγραφή μηνυμάτων από τον εξυπηρετητή..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Είσοδος στο σύστημα..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Έλεγχος για νέα μηνύματα..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s είναι μη έγκυρη POP διαδρομή"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5051,7 +5131,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6202,189 +6282,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "εμφάνιση των επιλογών S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Δεν είναι διαθέσιμο σε αυτό το μενού"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "ΠροηγΣελ"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "ΕπόμΣελ"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "ΌψηΠροσάρτ"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Επόμενο"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Εμφανίζεται η βάση του μηνύματος"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Εμφανίζεται η αρχή του μηνύματος"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Η βοήθεια ήδη εμφανίζεται"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Όχι άλλο καθορισμένο κείμενο"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Όχι άλλο μη καθορισμένο κείμενο μετά από καθορισμένο"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Λάθος στην έκφραση: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "σφάλμα στην έκφραση"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Η εντολή ερωτήσεως δεν καθορίστηκε"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Κλήση της εντολής autoview: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Μη έγκυρη μέρα του μήνα: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Μη έγκυρος μήνας: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Μη έγκυρος αναφορικώς μήνας: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Δεν υπάρχουν μη αναγνωσμένα μηνύματα"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Σφάλμα κατά το άνοιγμα του γραμματοκιβωτίου"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Σφάλμα κατά το άνοιγμα του γραμματοκιβωτίου"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Αδυναμία ανοίγματος /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "σφάλμα στο μοντέλο στο: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "έλλειψη παραμέτρου"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "αταίριαστη παρένθεση/εις: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: μη έγκυρη εντολή"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "Το %c: δεν υποστηρίζεται σε αυτή την κατάσταση"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "έλλειψη παραμέτρου"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "άδειο μοντέλο/μορφή"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "λάθος: άγνωστη διεργασία %d (ανέφερε αυτό το σφάλμα)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Σύνταξη μοντέλου αναζήτησης..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Εκτέλεση εντολής στα παρόμοια μηνύματα..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Κανένα μήνυμα δεν ταιριάζει στα κριτήρια"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Αποθήκευση..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Η αναζήτηση έφθασε στο τέλος χωρίς να βρει όμοιο"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Η αναζήτηση έφθασε στην αρχή χωρίς να βρει όμοιο"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Η αναζήτηση διακόπηκε"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Η εντολή TOP δεν υποστηρίζετε από το διακομιστή"
+
+@@ -6392,7 +6472,7 @@ msgstr "Η εντολή TOP δεν υποστηρίζετε από το διακ
+ msgid "Can't write header to temporary file"
+ msgstr "Αδυναμία εγγραφής επικεφαλίδας στο προσωρινό αρχείο"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Η εντολή UIDL δεν υποστηρίζετε από το διακομιστή"
+
+@@ -6407,7 +6487,7 @@ msgstr[1] "Ο δείκτης του μηνύματος είναι άκυρος.
+ msgid "POP host is not defined"
+ msgstr "Ο POP host δεν καθορίστηκε"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s είναι μη έγκυρη POP διαδρομή"
+@@ -6440,155 +6520,155 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d από %d μηνύματα διαβάστηκαν]"
+ msgstr[1] "%s [%d από %d μηνύματα διαβάστηκαν]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Λήψη λίστας μηνυμάτων..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Σημείωση %d διαγραφέντων μηνυμάτων..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Αδυναμία εγγραφής μηνύματος στο προσωρινό αρχείο"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Αυθεντικοποίηση (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Αυθεντικοποίηση (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Αυθεντικοποίηση APOP απέτυχε"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Η εντολή USER δεν υποστηρίζετε από το διακομιστή"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Αυθεντικοποίηση SASL απέτυχε"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Μη έγκυρο "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Αδυναμία άφεσης των μηνυμάτων στον εξυπηρετητή"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Σφάλμα κατα τη σύνδεση στο διακομιστή: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Κλείσιμο σύνδεσης στον εξυπηρετητή IMAP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Επιβεβαίωση των ευρετηρίων μηνυμάτων..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Απώλεια σύνδεσης. Επανασύνδεση στο διακομιστή POP;"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Αναβληθέντα Μηνύματα"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Δεν υπάρχουν αναβληθέντα μηνύματα"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Ακατάλληλη επικεφαλίδα S/MIME"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Ακατάλληλη επικεφαλίδα PGP"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Αποκρυπτογράφηση μηνύματος..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Νέα Ερώτηση"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Δημιουργία Ψευδώνυμου"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Αναμονή απάντησης..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Ερώτηση: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Ερώτηση '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Η εντολή ερωτήσεως δεν καθορίστηκε"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Διοχέτευση"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Εκτύπωση"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Αποθήκευση..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Η προσάρτηση αποθηκεύθηκε"
+ msgstr[1] "Η προσάρτηση αποθηκεύθηκε"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ΠΡΟΕΙΔΟΠΟΙΗΣΗ! Πρόκειται να γράψεις πάνω από το %s, συνέχεια;"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Η προσάρτηση έχει φιλτραριστεί"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Φιλτράρισμα μέσω: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Διοχέτευση στο: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Δεν ξέρω πως να τυπώσω τις %s προσαρτήσεις"
+@@ -6596,57 +6676,57 @@ msgstr "Δεν ξέρω πως να τυπώσω τις %s προσαρτήσε
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Εκτύπωση σημειωμένου/ων προσάρτησης/σεων;"
+ msgstr[1] "Εκτύπωση σημειωμένου/ων προσάρτησης/σεων;"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Εκτύπωση προσαρτήσεων;"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Αδυναμία αποκρυπτογράφησης του κρυπτογραφημένου μηνύματος"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Προσαρτήσεις"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Δεν υπάρχουν επιμέρους τμήματα για να εμφανιστούν."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Αδυναμία διαγραφής προσάρτησης από τον εξυπηρετητή POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Αδυναμία διαγραφής προσάρτησης από τον εξυπηρετητή POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Η διαγραφή προσαρτήσεων από κρυπτογραφημένα μηνύματα δεν υποστηρίζεται"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Η διαγραφή προσαρτήσεων από κρυπτογραφημένα μηνύματα δεν υποστηρίζεται"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Μόνο η διαγραφή πολυμερών προσαρτήσεων υποστηρίζεται"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Μπορείτε να διαβιβάσετε μόνο μήνυμα/μέρη rfc822"
+
+@@ -6683,7 +6763,7 @@ msgstr "Αδυναμία δημιουργίας του %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Αδυναμία εύρεσης σημειωμένων μηνυμάτων"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Δεν βρέθηκαν λίστες συζητήσεων"
+
+@@ -6698,67 +6778,67 @@ msgstr "Αδυναμία αποκωδικοποίησης όλων των σημ
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Μπορείτε να διαβιβάσετε μόνο μήνυμα/μέρη rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Πρόσθεση"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Είσοδος"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Αδυναμία λήψης της type2.list του mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Επιλογή μιας αλυσίδας επαναποστολέων"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Σφάλμα: το %s δεν μπορεί να είναι ο τελικός επαναποστολέας της αλυσίδας"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Οι αλυσίδες Mixmaster είναι περιορισμένες σε %d στοιχεία"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Η αλυσίδα επαναποστολέων είναι ήδη άδεια"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Έχετε ήδη επιλέξει το πρώτο στοιχείο της αλυσίδας"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Έχετε ήδη επιλέξει το τελευταίο στοιχείο της αλυσίδας"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Ο Mixmaster δεν δέχεται Cc ή Bcc επικεφαλίδες"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Παρακαλώ ορίστε σωστά την μεταβλητή του ονόματος του συστήματος όταν χρησιμοποιείτε το mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Σφάλμα στην αποστολή μηνύματος, τερματισμός θυγατρικής με %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Σφάλμα κατά την αποστολή του μηνύματος"
+
+@@ -6789,42 +6869,42 @@ msgstr "Προώθηση σαν προσαρτήσεις;"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Απάντηση στο %s%s;"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Συνέχεια στο %s%s;"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Συμπερίληψη του μηνύματος στην απάντηση;"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Συμπερίληψη καθορισμένου μηνύματος..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Αδυναμία συμπερίληψης όλων των μηνυμάτων που ζητήθηκαν"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Προώθηση σαν προσάρτηση;"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Ετοιμασία προωθημένου μηνύματος ..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Το %c: δεν υποστηρίζεται σε αυτή την κατάσταση"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "παρουσίαση της προσάρτησης ως κείμενο"
+@@ -6833,196 +6913,196 @@ msgstr "παρουσίαση της προσάρτησης ως κείμενο"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Κανένα γραμματοκιβώτιο.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Ανάκληση αναβληθέντος μηνύματος;"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Επεξεργασία προωθημένου μηνύματος;"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Ματαίωση αποστολής μη τροποποιημένου μηνύματος;"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Ματαίωση αποστολής μη τροποποιημένου μηνύματος"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Το γράμμα δεν εστάλη"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Το μήνυμα ανεβλήθη"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Δεν υπάρχει θέμα, ακύρωση αποστολής;"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Δεν καθορίστηκε θέμα"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Δεν καθορίστηκε θέμα"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "επεξεργασία της κωδικοποίησης-μεταφοράς της προσάρτησης"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Αποστολή μηνύματος..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Αδυναμία αποστολής του μηνύματος"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Αποστολή στο παρασκήνιο"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Το γράμμα εστάλη"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Δε βρέθηκε παράμετρος οριοθέτησης [αναφέρατε αυτό το σφάλμα]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "Το %s δεν υπάρχει πια"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "Το %s δεν είναι κανονικό αρχείο"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Αδυναμία αποστολής του μηνύματος."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Αδυναμία ανοίγματος του %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Σφάλμα κατά την αποστολή μηνύματος, τερματισμός θυγατρικής με %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Έξοδος της διεργασίας αποστολής"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Λανθασμένη διεθνής διεύθυνση IDN %s κατά την δημιουργία του πεδίου Επαναποστολή-Από"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SSL απέτυχε: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SSL απέτυχε: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Μη έγκυρο "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Αυθεντικοποίηση SASL απέτυχε."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Αυθεντικοποίηση GSSAPI απέτυχε"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Τακτοποίηση γραμματοκιβωτίου..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Αδυναμία εύρεσης της λειτουργίας ταξινόμησης [αναφέρατε αυτό το σφάλμα]"
+
+@@ -7074,11 +7154,11 @@ msgstr ""
+ "Το NeoMutt είναι ελεύθερο λογισμικό, και ευχαρίστως μπορείτε να το επαναδιανέμετε\n"
+ "υπό ορισμένους όρους; γράψτε 'neomutt -vv' για λεπτομέρειες.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Παράμετροι μεταγλώττισης:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Παράμετροι μεταγλώττισης:"
+diff --git a/po/en_GB.po b/po/en_GB.po
+index 72104eec2..2f0c61211 100644
+--- a/po/en_GB.po
++++ b/po/en_GB.po
+@@ -9,7 +9,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2017-04-17 17:06+0100\n"
+ "Last-Translator: Richard Russon <rich@flatcap.org>\n"
+ "Language-Team: none\n"
+@@ -19,16 +19,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)eject, accept (o)nce, (a)ccept always"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)eject, accept (o)nce, (s)kip"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)eject, accept (o)nce"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Exit"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Del"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Undel"
+
+@@ -36,18 +60,18 @@ msgstr "Undel"
+ msgid "Select"
+ msgstr "Select"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Help"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "You have no aliases"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliases"
+
+@@ -56,51 +80,51 @@ msgstr "Aliases"
+ msgid "Alias as: "
+ msgstr "Alias as: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "You already have an alias defined with that name"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Warning: This alias name may not work. Fix it?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Address: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Bad IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Personal name: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Accept?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Save to file: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Error reading alias file"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Trouble adding alias"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias added"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Error seeking in alias file"
+
+@@ -109,7 +133,7 @@ msgstr "Error seeking in alias file"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s does not exist. Create it?"
+@@ -118,8 +142,8 @@ msgstr "%s does not exist. Create it?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Can't create %s: %s"
+@@ -129,7 +153,7 @@ msgstr "Can't create %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Create an initial autocrypt account?"
+
+@@ -138,7 +162,7 @@ msgstr "Create an initial autocrypt account?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Autocrypt account address: "
+
+@@ -147,7 +171,7 @@ msgstr "Autocrypt account address: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Please enter a single email address"
+
+@@ -156,7 +180,7 @@ msgstr "Please enter a single email address"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "That email address already has an autocrypt account"
+
+@@ -168,14 +192,14 @@ msgstr "That email address already has an autocrypt account"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Prefer encryption?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Autocrypt account creation succeeded"
+
+@@ -183,7 +207,7 @@ msgstr "Autocrypt account creation succeeded"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Autocrypt account creation aborted"
+
+@@ -192,7 +216,7 @@ msgstr "Autocrypt account creation aborted"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "No (valid) autocrypt key found for %s"
+@@ -204,12 +228,12 @@ msgstr "No (valid) autocrypt key found for %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Scan a mailbox for autocrypt headers?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Scan mailbox"
+
+@@ -220,21 +244,21 @@ msgstr "Scan mailbox"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Scan another mailbox for autocrypt headers?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Create"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Delete"
+
+@@ -242,9 +266,9 @@ msgstr "Delete"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Tgl Active"
+
+@@ -252,17 +276,17 @@ msgstr "Tgl Active"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
+-msgstr "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
++msgstr "Prf Encr"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "prefer encrypt"
+
+@@ -271,7 +295,7 @@ msgstr "prefer encrypt"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "manual encrypt"
+
+@@ -279,7 +303,7 @@ msgstr "manual encrypt"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "active"
+
+@@ -287,12 +311,12 @@ msgstr "active"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "inactive"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt Accounts"
+
+@@ -300,12 +324,12 @@ msgstr "Autocrypt Accounts"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Error updating account record"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Really delete account \"%s\"?"
+@@ -323,7 +347,7 @@ msgstr "Really delete account \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Unable to open autocrypt database %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "error creating gpgme context: %s"
+@@ -396,469 +420,581 @@ msgstr "Autocrypt database version is too new"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Message cache isn't a directory: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Chdir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Goto"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Mask"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "List"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Subscribe"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Unsubscribe"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Catchup"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s is not a directory"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Subscribed newsgroups"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Newsgroups on server [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Mailboxes [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Subscribed [%s], File mask: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Directory [%s], File mask: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Can't attach a directory"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "No files match the file mask"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Create is only supported for IMAP mailboxes"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Rename is only supported for IMAP mailboxes"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Delete is only supported for IMAP mailboxes"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Can't delete currently selected mailbox"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Really delete mailbox \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Mailbox deleted"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Mailbox deletion failed"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Mailbox not deleted"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Chdir to: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Error scanning directory"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "File Mask: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dazecwn"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "New file name: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Can't view a directory"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Error trying to view file"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Subscribe pattern: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Unsubscribe pattern: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "No newsgroups match the mask"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: colour not supported by term"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: no such colour"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: no such object"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: too few arguments"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: no such attribute"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: too many arguments"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "default colours not supported"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr "Maximum quoting level is %d"
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s: invalid number: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Verify signature?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Could not create temporary file"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Can't create display filter"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Could not copy message"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME signature successfully verified"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME certificate owner does not match sender"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Warning: Part of this message has not been signed"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME signature could NOT be verified"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP signature successfully verified"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP signature could NOT be verified"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Error running \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Command: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Warning: message contains no From: header"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Bounce message to: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Bounce tagged messages to: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Error parsing address"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Bounce message to %s?"
+ msgstr[1] "Bounce messages to %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Message not bounced"
+ msgstr[1] "Messages not bounced"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Message bounced"
+ msgstr[1] "Messages bounced"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Can't create filter process"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Pipe to command: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "No printing command has been defined"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Print message?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Print tagged messages?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Message printed"
+ msgstr[1] "Messages printed"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Message could not be printed"
+ msgstr[1] "Messages could not be printed"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell command: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Decode-save to mailbox"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decode-save tagged to mailbox"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Decrypt-save to mailbox"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Decrypt-save tagged to mailbox"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Save to mailbox"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Save tagged to mailbox"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Decode-copy to mailbox"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decode-copy tagged to mailbox"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Decrypt-copy to mailbox"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Decrypt-copy tagged to mailbox"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Copy to mailbox"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Copy tagged to mailbox"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copying to %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Content type is too long"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Convert to %s upon sending?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type changed to %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Character set changed to %s; not converting"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Character set changed to %s; converting"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: too few arguments"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: no group name"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "out of arguments"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Error: Can't build path of '%s'"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Error: Cyclic sourcing of configuration file '%s'"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Error in %s, line %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Warning in %s, line %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: errors in %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: reading aborted due to too many errors in %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d warning in %s"
++msgstr[1] "source: %d warnings in %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: no address"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Warning: Bad IDN '%s' in alias '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: no disposition"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Current attachments settings:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: invalid disposition"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: too many arguments"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: missing -rx or -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: warning: bad IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Error: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "invalid header field"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: unknown variable"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s is unset"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: error at %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source: file %s could not be sourced"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: no matching pattern"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: no matching pattern"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Subscribed to %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Could not subscribe to %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "No folder specified"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: no disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: invalid disposition"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Unsubscribed from %s"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Could not unsubscribe from %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "There are no attachments"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Security: "
+
+@@ -869,75 +1005,75 @@ msgstr "Security: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Sign as: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Newsgroups: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Followup-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Send"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Abort"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "To"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Subj"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Attach file"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descrip"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Newsgroups"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Off"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "No"
+
+@@ -945,7 +1081,7 @@ msgstr "No"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Discouraged"
+
+@@ -953,14 +1089,14 @@ msgstr "Discouraged"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Available"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Yes"
+
+@@ -970,7 +1106,7 @@ msgstr "Yes"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+
+@@ -978,51 +1114,51 @@ msgstr "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Not supported"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Sign, Encrypt"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Encrypt"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Sign"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "None"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (inline PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc mode)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<default>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Encrypt with: "
+
+@@ -1031,11 +1167,11 @@ msgstr "Encrypt with: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Recommendation: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<no chain defined>"
+
+@@ -1046,7 +1182,7 @@ msgstr "<no chain defined>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Attachment #%d no longer exists: %s"
+@@ -1058,231 +1194,350 @@ msgstr "Attachment #%d no longer exists: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Attachment #%d modified. Update encoding for %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Attachments"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "You may not delete the only attachment"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Bad IDN in '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Attachment is already at top"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "The fundamental part can't be moved"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Attachment is already at bottom"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Grouping 'alternatives' requires at least 2 tagged messages"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Grouping 'multilingual' requires at least 2 tagged messages"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Not all parts have 'Content-Language' set, continue?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Not sending this message"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Attaching selected file..."
+ msgstr[1] "Attaching selected files..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Unable to attach %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Open mailbox to attach message from"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Open newsgroup to attach message from"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Unable to open mailbox %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "No messages in that folder"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Tag the messages you want to attach"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Unable to attach"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Recoding only affects text attachments"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "The current attachment won't be converted"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "The current attachment will be converted"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Empty 'Content-Language'"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Invalid encoding"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Save a copy of this message?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Send attachment with name: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Rename to: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Can't stat %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "New file: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type is of the form base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Unknown Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Can't create file %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "What we have here is a failure to make an attachment"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Save (postpone) draft message?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Write message to mailbox"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Writing message to %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Message written"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "No PGP backend configured"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME already selected. Clear and continue?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "No S/MIME backend configured"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP already selected. Clear and continue?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Can't append without an append-hook or close-hook : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Unable to lock mailbox"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Decompressing %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Can't identify the contents of the compressed file"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Can't find mailbox ops for mailbox type %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Compress command failed: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Unsupported mailbox type for appending"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Can't sync a compressed file without a close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Compressing %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Compressed-appending to %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
++#, c-format
++msgid "Error. Preserving temporary file: %s"
++msgstr "Error. Preserving temporary file: %s"
++
++#: config/bool.c:70
++#, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Invalid boolean value: %s"
++
++#: config/bool.c:131
++#, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Invalid boolean value: %ld"
++
++#: config/enum.c:62
++#, c-format
++msgid "Invalid enum value: %s"
++msgstr "Invalid enum value: %s"
++
++#: config/enum.c:149
++#, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Invalid enum value: %ld"
++
++#: config/long.c:50
++#, c-format
++msgid "Invalid long: %s"
++msgstr "Invalid long: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, c-format
++msgid "Option %s may not be negative"
++msgstr "Option %s may not be negative"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr "Option %s may not be empty"
++
++#: config/number.c:56
++#, c-format
++msgid "Invalid number: %s"
++msgstr "Invalid number: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr "Number is too big: %s"
++
++#: config/number.c:127
++#, c-format
++msgid "Invalid number: %ld"
++msgstr "Invalid number: %ld"
++
++#: config/quad.c:69
++#, c-format
++msgid "Invalid quad value: %s"
++msgstr "Invalid quad value: %s"
++
++#: config/quad.c:133
++#, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Invalid quad value: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr "No such variable: %s"
++
++#: config/set.c:134 config/set.c:821
++#, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Variable '%s' has an invalid type %d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, c-format
++msgid "Unknown variable '%s'"
++msgstr "Unknown variable '%s'"
++
++#: config/sort.c:192
++#, c-format
++msgid "Invalid sort name: %s"
++msgstr "Invalid sort name: %s"
++
++#: config/sort.c:322
++#, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Invalid sort type: %ld"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Username at %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Password for %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "No OAUTH refresh command defined"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Unable to run refresh command"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Command returned empty string"
++
++#: conn/connaccount.c:191
+ #, c-format
+-msgid "Error. Preserving temporary file: %s"
+-msgstr "Error. Preserving temporary file: %s"
++msgid "OAUTH token is too big: %ld"
++msgstr "OAUTH token is too big: %ld"
+
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+@@ -1304,7 +1559,7 @@ msgstr "Connecting to %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Could not connect to %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "unknown error"
+
+@@ -1318,23 +1573,23 @@ msgstr "Error talking to %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Connection to %s has been aborted"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Unknown SASL profile"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Error allocating SASL connection"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Error setting SASL security properties"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Error setting SASL external security strength"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Error setting SASL external user name"
+
+@@ -1347,132 +1602,108 @@ msgstr "Preconnect command failed"
+ msgid "Connection to %s closed"
+ msgstr "Connection to %s closed"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Filling entropy pool: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s has insecure permissions"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL disabled due to the lack of entropy"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Unknown"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[unable to calculate]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[invalid date]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Server certificate is not yet valid"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Server certificate has expired"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Failed to find enough entropy on your system"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "can't get certificate subject"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "can't get certificate common name"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "certificate owner does not match hostname %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "This certificate belongs to:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "This certificate was issued by:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "This certificate is valid"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " from %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " to %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1 Fingerprint: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA256 Fingerprint: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "SSL Certificate check (certificate %zu of %zu in chain)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "roas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)eject, accept (o)nce, (a)ccept always"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)eject, accept (o)nce, (s)kip"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)eject, accept (o)nce"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Exit "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Warning: Couldn't save certificate"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificate saved"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Certificate host check failed: %s"
+@@ -1480,15 +1711,15 @@ msgstr "Certificate host check failed: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Warning: unable to set TLS SNI host name"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O error"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL failed: %s"
+@@ -1496,89 +1727,73 @@ msgstr "SSL failed: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Unable to create SSL context"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Warning: error enabling ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Unable to get certificate from peer"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Certificate verification error (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certificate is not X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Error initialising gnutls certificate data"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Error processing certificate data"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "WARNING: Server certificate is not yet valid"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "WARNING: Server certificate has expired"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "WARNING: Server certificate has been revoked"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "WARNING: Server hostname does not match certificate"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "WARNING: Signer of server certificate is not a CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Warning: Server certificate was signed using an insecure algorithm"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "All available protocols for TLS/SSL connection disabled"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Explicit ciphersuite selection via $ssl_ciphers not supported"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS connection using %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Error: no TLS socket open"
+
+@@ -1597,38 +1812,18 @@ msgstr "Tunnel error talking to %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel to %s returned error %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] "The length calculation was wrong by %ld byte"
+ msgstr[1] "The length calculation was wrong by %ld bytes"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "No decryption engine available for message"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "yes"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Exit NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Press any key to continue..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' for list): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1650,7 +1845,7 @@ msgstr ""
+ "~M messages same as ~m, except include headers\n"
+ "~p print the message\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1672,20 +1867,20 @@ msgstr ""
+ "~? this message\n"
+ ". on a line by itself ends input\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: invalid message number.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(End message with a . on a line by itself)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "No mailbox.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Message contains:\n"
+
+@@ -1693,19 +1888,19 @@ msgstr "Message contains:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continue)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "missing filename.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "No lines in message.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: unknown editor command (~? for help)\n"
+@@ -1752,19 +1947,73 @@ msgstr "Can't append to folder: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "multipart message has no boundary parameter"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Threading is not enabled"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Set flag"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Clear flag"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: colour not supported by term"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: no such colour"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: no such object"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: no such attribute"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "default colours not supported"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr "Maximum quoting level is %d"
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s: invalid number: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "yes"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Exit NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Press any key to continue..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' for list): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1785,23 +2034,23 @@ msgstr "[-- Autoview using %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Invoking autoview command: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Can't create filter"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Can't run %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Autoview stderr of %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Error: message/external-body has no access-type parameter --]\n"
+
+@@ -1820,7 +2069,7 @@ msgstr "[-- Error: message/external-body has no access-type parameter --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1849,7 +2098,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1863,7 +2112,7 @@ msgstr[1] "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1874,12 +2123,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- This %s/%s attachment has been deleted --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- name: %s --]\n"
+@@ -1887,7 +2136,7 @@ msgstr "[-- name: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1903,7 +2152,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1912,91 +2161,91 @@ msgstr ""
+ "[-- This %s/%s attachment is not included, --]\n"
+ "[-- and the indicated access-type %s is unsupported --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Attachment #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Attachment #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "One or more parts of this message could not be displayed"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Unable to open 'memory stream'"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Unable to open temporary file"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "failed to re-open 'memory stream'"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Error: multipart/signed has no protocol"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- This is an attachment (use '%s' to view this part) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- This is an attachment --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s is unsupported --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERROR: please report this bug"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<UNKNOWN>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Generic bindings:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Unbound functions:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Help for %s"
+@@ -2013,41 +2262,41 @@ msgstr "mailbox shortcut expanded to empty regex"
+ msgid "badly formatted command string"
+ msgstr "badly formatted command string"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Can't do unhook * from within a hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: unknown hook type: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Can't delete a %s from within a %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: no such menu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: no binds for this menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: no macros for this menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Could not create temporary file %s"
+@@ -2084,28 +2333,28 @@ msgstr "GSSAPI authentication failed"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN disabled on this server"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Logging in..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Login failed"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Authenticating (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER authentication failed"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Authenticating (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL authentication failed"
+
+@@ -2152,89 +2401,79 @@ msgstr "Rename failed: %s"
+ msgid "Mailbox renamed"
+ msgstr "Mailbox renamed"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Mailbox %s@%s closed"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Connection to %s timed out"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "This IMAP server is ancient. NeoMutt does not work with it."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Header search without header name: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Server-side custom search not supported: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE failed: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Closing connection to %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Secure connection with TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Could not negotiate TLS connection"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Encrypted connection unavailable"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Subscribing to %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Unsubscribing from %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Subscribed to %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Unsubscribed from %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Copying %d message to %s..."
+ msgstr[1] "Copying %d messages to %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Create %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Expunge failed"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2242,43 +2481,43 @@ msgstr[0] "Marking %d message deleted..."
+ msgstr[1] "Marking %d messages deleted..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Saving changed message... [%d/%d]"
+ msgstr[1] "Saving changed messages... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Error saving flags. Close anyway?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Error saving flags"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Expunging messages from server..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE failed"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Selecting %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Error opening mailbox"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP server doesn't support custom flags"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Invalid IMAP flags"
+
+@@ -2288,7 +2527,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Abort download and close mailbox?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Out of memory"
+
+@@ -2306,7 +2545,7 @@ msgstr "Fetching flag updates..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Unable to fetch headers from this IMAP server version"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Fetching message headers..."
+
+@@ -2319,152 +2558,152 @@ msgstr "Uploading message..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copying message %d to %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Fetching message..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "The message index is incorrect. Try reopening the mailbox."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Continue?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Quit"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Save"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Mail"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Reply"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Group"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Post"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Followup"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "No mailbox is open"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "There are no messages"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "No visible messages"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Mailbox is read-only"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Function not permitted in attach-message mode"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Operation not permitted by ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Can't toggle write on a readonly mailbox"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Changes to folder will be written on folder exit"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Changes to folder will not be written"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s is not a mailbox"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Mailbox was externally modified. Flags may be wrong."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "New mail in this mailbox"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Mailbox was externally modified"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "No tagged messages"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nothing to do"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Enter Message-Id: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Article has no parent reference"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Message is not visible in limited view"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Fetching %s from server..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Article %s not found on the server"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "No Message-Id. Unable to perform operation."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "No deleted messages found in the thread"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Jump to message: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argument must be a message number"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Invalid message number"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "That message is not visible"
+
+@@ -2477,37 +2716,37 @@ msgstr "That message is not visible"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Can't delete messages"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Delete messages matching: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "No limit pattern is in effect"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limit: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limit to messages matching: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "To view all messages, limit to \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Quit NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Tag messages matching: "
+
+@@ -2515,195 +2754,195 @@ msgstr "Tag messages matching: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Can't undelete messages"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Undelete messages matching: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Untag messages matching: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Logged out of IMAP servers"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "No virtual folder and no Message-Id, aborting"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Failed to create query, aborting"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr "failed to find message in notmuch database. try running 'notmuch new'."
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Failed to read thread, aborting"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Folder doesn't support tagging, aborting"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "No tag specified, aborting"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Update tags..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Failed to modify tags, aborting"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "No query, aborting"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Windowed queries disabled"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "No notmuch vfolder currently loaded"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Open mailbox in read-only mode"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Open mailbox"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "No mailboxes have new mail"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Open newsgroup in read-only mode"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Open newsgroup"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Exit NeoMutt without saving?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Can't break thread"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Thread broken"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Thread can't be broken, message is not part of a thread"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Can't link threads"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "No Message-ID: header available to link thread"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "First, please tag a message to be linked here"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Threads linked"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "No thread linked"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "You are on the last message"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "No undeleted messages"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "You are on the first message"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "No new messages in this limited view"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "No new messages"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "No unread messages in this limited view"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "No unread messages"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Search wrapped to top"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Search wrapped to bottom"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Can't flag message"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Can't toggle new"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "No more threads"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "You are on the first thread"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Thread contains unread or flagged messages"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Can't delete message"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Can't edit message"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2713,7 +2952,7 @@ msgstr[1] "%d labels changed"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "No labels changed"
+
+@@ -2721,275 +2960,140 @@ msgstr "No labels changed"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Can't mark messages as read"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Enter macro stroke: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "message hotkey"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Message bound to %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "No message ID to macro"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Reply by mail as poster prefers?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Posting to this group not allowed, may be moderated. Continue?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Can't undelete message"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Error in command line: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Warning in command line: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "unable to determine nodename via uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: no group name"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "out of arguments"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Error: Can't build path of '%s'"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Error: Cyclic sourcing of configuration file '%s'"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Error in %s, line %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Warning in %s, line %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: errors in %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: reading aborted due to too many errors in %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d warning in %s"
+-msgstr[1] "source: %d warnings in %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: no address"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Warning: Bad IDN '%s' in alias '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: no disposition"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Current attachments settings:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: invalid disposition"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: missing -rx or -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: warning: bad IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Error: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "invalid header field"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: unknown variable"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s is unset"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: error at %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source: file %s could not be sourced"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: no matching pattern"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: no matching pattern"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Could not subscribe to %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "No folder specified"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: no disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: invalid disposition"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Could not unsubscribe from %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: unknown command"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "'charset' must contain exactly one character set name"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Invalid value for option %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Option %s may not be set or reset from the pager"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Option %s may not be set when in attach-message mode"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr "Option %s must between 78 and 998 inclusive"
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Macro loop detected"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Key is not bound"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Key is not bound. Press '%s' for help."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: null key sequence"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Function '%s' not available for menu '%s'"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: empty key sequence"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: no arguments"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: no such function"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Enter keys (^G to abort): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Char = %s, Octal = %o, Decimal = %d"
+@@ -3013,7 +3117,7 @@ msgstr "mailcap entry for type %s not found"
+ msgid "Scanning %s..."
+ msgstr "Scanning %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Reading %s..."
+@@ -3027,13 +3131,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): unable to set time on file"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Writing %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3074,7 +3178,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3156,54 +3260,54 @@ msgstr ""
+ " -z Open the first or specified (-f) mailbox if it holds any message\n"
+ " or exit immediately with exit code 1 otherwise"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Error initializing terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "unable to determine username"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "unable to determine home directory"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Error: value '%s' is invalid for -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Failed to parse mailto: link"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "No recipients specified"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Can't use -E flag with stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Can't parse message template: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: unable to attach file"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "No mailbox with new mail"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "No incoming mailboxes defined"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Mailbox is empty"
+
+@@ -3245,52 +3349,52 @@ msgstr "Could not reopen mailbox"
+ msgid "Can't write message"
+ msgstr "Can't write message"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Jump to: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Invalid index number"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "No entries"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "You can't scroll down farther"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "You can't scroll up farther"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "You are on the first page"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "You are on the last page"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "You are on the last entry"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "You are on the first entry"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Search for: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Reverse search for: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Not found"
+
+@@ -3333,20 +3437,20 @@ msgstr "Waiting for flock attempt... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Bad history file format (line %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Can't create temporary file"
+
+@@ -3365,7 +3469,7 @@ msgstr "Debugging at level %d to file '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Logging at level %d to file '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Error: converting path to absolute"
+
+@@ -3388,17 +3492,17 @@ msgstr "Caught signal %d (%s) ... Exiting.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Caught signal %d ... Exiting.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "open /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "read /dev/urandom: %s"
+@@ -3406,146 +3510,119 @@ msgstr "read /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "File is a directory, save under it?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "File under directory: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Can't save message to POP mailbox"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Append messages to %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Can't save message to news server"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Username at %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Password for %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "No OAUTH refresh command defined"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Unable to run refresh command"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Command returned empty string"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Can't match 'nametemplate', continue?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap compose entry requires %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Failure to open file to parse headers"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Failure to open file to strip headers"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Failure to rename file"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "No mailcap compose entry for %s, creating empty file"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap Edit entry requires %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "No mailcap edit entry for %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "No matching mailcap entry found. Viewing as text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME type not defined. Can't view attachment."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Command: %-20.20s Description: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Command: %-30.30s Attachment: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Attachment: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Attachment: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Write fault"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "I don't know how to print that"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Search"
+
+@@ -3554,21 +3631,21 @@ msgstr "Search"
+ msgid "History '%s'"
+ msgstr "History '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Invalid value for option %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Error: Couldn't load the lua interpreter"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Couldn't source lua source: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "New mail in "
+
+@@ -3589,20 +3666,20 @@ msgstr "Root message is not visible in this limited view"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Parent message is not visible in this limited view"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Reading from %s interrupted..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Unable to write %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "message not deleted"
+@@ -3612,69 +3689,69 @@ msgstr[1] "messages not deleted"
+ msgid "Can't open trash folder"
+ msgstr "Can't open trash folder"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Mark all articles read?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Move %d read message to %s?"
+ msgstr[1] "Move %d read messages to %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Purge %d deleted message?"
+ msgstr[1] "Purge %d deleted messages?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Moving read messages to %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Mailbox is unchanged"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d kept, %d moved, %d deleted"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d kept, %d deleted"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Press '%s' to toggle write"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Use 'toggle-write' to re-enable write"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Mailbox is marked unwritable. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Mailbox checkpointed"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (current time: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s output follows%s --]\n"
+@@ -3683,52 +3760,52 @@ msgstr "[-- %s output follows%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Passphrases forgotten"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Mail not sent: inline PGP can't be used with attachments"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Mail not sent: inline PGP can't be used with format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Invoking PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Message can't be sent inline. Revert to using PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Mail not sent"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME messages with no hints on content are unsupported"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Trying to extract PGP keys...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Trying to extract S/MIME certificates..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3737,7 +3814,7 @@ msgstr ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3745,7 +3822,7 @@ msgstr ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3754,7 +3831,7 @@ msgstr ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3762,7 +3839,7 @@ msgstr ""
+ "[-- The following data is signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3770,7 +3847,7 @@ msgstr ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3789,229 +3866,229 @@ msgstr "Invoking S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Name: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "aka: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Valid From: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Valid To: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Key Type: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Key Usage: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingerprint: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Serial-No: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Issued By: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Subkey: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "error enabling CMS protocol: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "error creating gpgme data object: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "error allocating data object: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "error rewinding data object: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[tempfile]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "error reading data object: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "error adding recipient '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "secret key '%s' not found: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "ambiguous specification of secret key '%s'\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "error setting secret key '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "error setting PKA signature notation: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "error encrypting data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "error signing data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Warning: One of the keys has been revoked\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Warning: The key used to create the signature expired at: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Warning: At least one certification key has expired\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Warning: The signature expired at: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Can't verify due to a missing key or certificate\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "The CRL is not available\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Available CRL is too old\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "A policy requirement was not met\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "A system error occurred"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "WARNING: PKA entry does not match signer's address: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA verified signer's address is: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "WARNING: The key does NOT BELONG to the person named as shown above\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "KeyID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "no signature fingerprint available"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "created: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Error getting key information for KeyID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Good signature from:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*BAD* signature from:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problem signature from:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " expires: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Begin signature information --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Error: verification failed: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Begin Notation (signature by: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** End Notation ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4019,7 +4096,7 @@ msgstr ""
+ "[-- End signature information --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4028,21 +4105,26 @@ msgstr ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Error importing key: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Error: decryption/verification failed: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP message successfully decrypted"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Error: copy data failed\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4050,11 +4132,11 @@ msgstr ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4062,19 +4144,19 @@ msgstr ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- END PGP MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- END PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- END PGP SIGNED MESSAGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4082,11 +4164,11 @@ msgstr ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Error: could not create temporary file --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4094,7 +4176,7 @@ msgstr ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4102,24 +4184,20 @@ msgstr ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- End of PGP/MIME signed and encrypted data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- End of PGP/MIME encrypted data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP message successfully decrypted"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Could not decrypt PGP message"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4127,7 +4205,7 @@ msgstr ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4135,34 +4213,34 @@ msgstr ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- End of S/MIME signed data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- End of S/MIME encrypted data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Can't display this user ID (unknown encoding)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Can't display this user ID (invalid encoding)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Can't display this user ID (invalid DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Invalid]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4170,94 +4248,94 @@ msgstr[0] "%s, %lu bit %s\n"
+ msgstr[1] "%s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "encryption"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "signing"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certification"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revoked]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Expired]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Disabled]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Collecting data..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Error finding issuer key: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Error: certification chain too long - stopping here\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start failed: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next failed: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "All matching keys are marked expired/revoked"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Select "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Check key "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP and S/MIME keys matching"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP keys matching"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME keys matching"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "keys matching"
+
+@@ -4265,55 +4343,55 @@ msgstr "keys matching"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "This key can't be used: expired/disabled/revoked"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID is expired/disabled/revoked. Do you really want to use the key?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID is not valid. Do you really want to use the key?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID is only marginally valid. Do you really want to use the key?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID has undefined validity. Do you really want to use the key?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Looking for keys matching \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "No matching keys found for \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Use keyID = \"%s\" for %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Enter keyID for %s: "
+@@ -4322,15 +4400,15 @@ msgstr "Enter keyID for %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "No secret keys found"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Please enter the key ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Error exporting key: %s"
+@@ -4338,92 +4416,92 @@ msgstr "Error exporting key: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP Key 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP protocol not available"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS protocol not available"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "esabpco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Failed to verify sender"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Failed to figure out sender"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Enter PGP passphrase:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Error: unable to create PGP subprocess --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4434,15 +4512,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP message is not encrypted"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Internal error. Please submit a bug report."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4450,125 +4528,125 @@ msgstr ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Decryption failed"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Can't open PGP subprocess"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Can't invoke PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Fetching PGP key..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "All matching keys are expired, revoked, or disabled"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP keys matching <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP keys matching \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Can't open /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP Key %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Enter S/MIME passphrase:"
+
+@@ -4577,7 +4655,7 @@ msgstr "Enter S/MIME passphrase:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Expired "
+
+@@ -4586,7 +4664,7 @@ msgstr "Expired "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Invalid "
+
+@@ -4595,7 +4673,7 @@ msgstr "Invalid "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Revoked "
+
+@@ -4604,7 +4682,7 @@ msgstr "Revoked "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Trusted "
+
+@@ -4613,7 +4691,7 @@ msgstr "Trusted "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Unverified"
+
+@@ -4622,7 +4700,7 @@ msgstr "Unverified"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Verified "
+
+@@ -4631,58 +4709,58 @@ msgstr "Verified "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Unknown "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME certificates matching \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID is not trusted. Do you really want to use the key?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Enter keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "No (valid) certificate found for %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Error: unable to create OpenSSL subprocess"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Label for certificate: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "no certfile"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "no mbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "No output from OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Can't sign: No key specified. Use Sign As."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Can't open OpenSSL subprocess"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4690,19 +4768,19 @@ msgstr ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Error: unable to create OpenSSL subprocess --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- The following data is S/MIME encrypted --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- The following data is S/MIME signed --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4710,7 +4788,7 @@ msgstr ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4719,160 +4797,160 @@ msgstr ""
+ "[-- End of S/MIME signed data. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Loading list of groups from cache..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "No news server defined"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s is an invalid news server specification"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server closed connection"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Server doesn't support reader mode"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "No authenticators available"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s authentication failed"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Connection to %s lost. Reconnect?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Fetching list of articles..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Checking for new messages..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Could not switch to reader mode"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Connected to %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Posting is ok"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Posting is NOT ok"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Can't post article: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Loading list of groups from server %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Loading descriptions..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Checking for new newsgroups..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Unable to find child articles because server does not support XPAT command"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s is an invalid newsgroup specification"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Newsgroup %s not found on the server"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Newsgroup %s has been removed from the server"
+@@ -4884,8 +4962,8 @@ msgstr "failed to parse notmuch query type: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "failed to parse notmuch url: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5975,182 +6053,182 @@ msgstr "make the sidebar (in)visible"
+ msgid "show S/MIME options"
+ msgstr "show S/MIME options"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Not available in this menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PrevPg"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "NextPg"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "View Attachm."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Next"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "all"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "end"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Bottom of message is shown"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Top of message is shown"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Help is currently being shown"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "No more quoted text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "No more unquoted text after quoted text"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Error in expression: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Empty expression"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "No search command defined"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Running search command: %s ..."
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Invalid day of month: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Invalid month: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Invalid relative date: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "No current message"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "No Context"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Error opening 'memory stream'"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Error re-opening 'memory stream'"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Error opening /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "error in pattern at: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "missing pattern: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "mismatched parentheses: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: invalid pattern modifier"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: not supported in this mode"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "missing parameter"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "empty pattern"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "error: server custom search only supported with IMAP"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "error: unknown op %d (report this error)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compiling search pattern..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Executing command on matching messages..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "No messages matched criteria"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Searching..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Search hit bottom without finding match"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Search hit top without finding match"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Search interrupted"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Command TOP is not supported by server"
+
+@@ -6158,7 +6236,7 @@ msgstr "Command TOP is not supported by server"
+ msgid "Can't write header to temporary file"
+ msgstr "Can't write header to temporary file"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Command UIDL is not supported by server"
+
+@@ -6173,7 +6251,7 @@ msgstr[1] "%d messages have been lost. Try reopening the mailbox."
+ msgid "POP host is not defined"
+ msgstr "POP host is not defined"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s is an invalid POP path"
+@@ -6206,152 +6284,152 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d of %d message read]"
+ msgstr[1] "%s [%d of %d messages read]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Fetching list of messages..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Marking messages deleted..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Can't write message to temporary file"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Authenticating (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP timestamp is invalid"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Authenticating (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP authentication failed"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Command USER is not supported by server"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Authentication failed"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Invalid POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Unable to leave messages on server"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Error connecting to server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Closing connection to POP server..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verifying message indexes..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Connection lost. Reconnect to POP server?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Postponed Messages"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "No postponed messages"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Illegal S/MIME header"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Illegal crypto header"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Decrypting message..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "New Query"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Make Alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Waiting for response..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Query: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Query '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Query command not defined"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipe"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Print"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Saving..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Attachment saved"
+ msgstr[1] "%d attachments saved"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "WARNING! You are about to overwrite %s, continue?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Attachment filtered"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filter through: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Pipe to: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "I don't know how to print %s attachments"
+@@ -6359,55 +6437,55 @@ msgstr "I don't know how to print %s attachments"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Print tagged attachment?"
+ msgstr[1] "Print %d tagged attachments?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Print attachment?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Structural changes to decrypted attachments are not supported"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Can't decrypt encrypted message"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Attachments"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "There are no subparts to show"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Can't delete attachment from POP server"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Can't delete attachment from news server"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Deletion of attachments from encrypted messages is unsupported"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Deletion of attachments from signed messages may invalidate the signature"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Only deletion of multipart attachments is supported"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "You may only bounce message/rfc822 parts"
+
+@@ -6443,7 +6521,7 @@ msgstr "Can't create %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Can't find any tagged messages"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "No mailing lists found"
+
+@@ -6457,67 +6535,67 @@ msgstr "Can't decode all tagged attachments. MIME-encapsulate the others?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "You may only compose to sender with message/rfc822 parts"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Append"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Insert"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<random>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Can't get mixmaster's type2.list"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Select a remailer chain"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Error: %s can't be used as the final remailer of a chain"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster chains are limited to %d elements"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "The remailer chain is already empty"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "You already have the first chain element selected"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "You already have the last chain element selected"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster doesn't accept Cc or Bcc headers"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Please set the hostname variable to a proper value when using mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Error sending message, child exited %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Error sending message"
+
+@@ -6547,41 +6625,41 @@ msgstr "Forward attachments?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Reply to %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Follow-up to %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Include message in reply?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Including quoted message..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Could not include all requested messages"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Forward as attachment?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Preparing forwarded message..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc to an IMAP mailbox is not supported in batch mode"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Save attachments in Fcc?"
+
+@@ -6589,190 +6667,190 @@ msgstr "Save attachments in Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rms"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc mailbox"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Can't postpone. $postponed is unset"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Recall postponed message?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Edit forwarded message?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Abort unmodified message?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Aborted unmodified message"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "No crypto backend configured. Disabling message security setting."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Article not posted"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Message postponed"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "No subject, abort sending?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "No subject specified"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "No newsgroup specified"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "No attachments, cancel sending?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Message contains text matching \"$abort_noattach_regex\". Not sending."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Sending message..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Could not send the message"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Sending in background"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Article posted"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mail sent"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "No boundary parameter found [report this error]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s no longer exists"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s isn't a regular file"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Could not find any mime.types file."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Could not open %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail must be set in order to send mail"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Error sending message, child exited %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Output of the delivery process"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Bad IDN %s while preparing resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP session failed: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP session failed: unable to open %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Invalid SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP authentication method %s requires SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s authentication failed, trying next method"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP authentication requires SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP server does not support authentication"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "No from address given"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP session failed: read error"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP session failed: write error"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Invalid server response"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Sorting mailbox..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Could not find sorting function [report this bug]"
+
+@@ -6842,10 +6920,10 @@ msgstr ""
+ "NeoMutt is free software, and you are welcome to redistribute it\n"
+ "under certain conditions; type 'neomutt -vv' for details.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Default options:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Compile options:"
+diff --git a/po/eo.po b/po/eo.po
+index 65eb49183..a6fce8125 100644
+--- a/po/eo.po
++++ b/po/eo.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2017-02-22 21:14+0100\n"
+ "Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
+ "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
+@@ -20,16 +20,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(m)alakcepti, akcepti (u)nufoje, (a)kcepti ĉiam, (s)kip"
++
++msgid "roas"
++msgstr "muas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(m)alakcepti, akcepti (u)nufoje, (a)kcepti ĉiam"
++
++msgid "roa"
++msgstr "mua"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(m)alakcepti, akcepti (u)nufoje, (s)kip"
++
++msgid "ros"
++msgstr "mus"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(m)alakcepti, akcepti (u)nufoje"
++
++msgid "ro"
++msgstr "mu"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Fino"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Forviŝi"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Malforviŝi"
+
+@@ -37,18 +61,18 @@ msgstr "Malforviŝi"
+ msgid "Select"
+ msgstr "Elekto"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Helpo"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Vi ne havas adresaron"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Adresaro"
+
+@@ -57,52 +81,52 @@ msgstr "Adresaro"
+ msgid "Alias as: "
+ msgstr "Aldonu nomon: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "En la adresaro jam estas nomo kun tiu adreso"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Averto: Ĉi tiu nomo eble ne funkcios. Ĉu ripari ĝin?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adreso: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Malbona IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Plena nomo: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Ĉu akcepti?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Skribi al dosiero: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Eraro dum legado de adresaro-dosiero"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Eraro dum legado de adresaro-dosiero"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Adreso aldonita"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Eraro dum alsalto en adresaro-dosiero"
+
+@@ -111,7 +135,7 @@ msgstr "Eraro dum alsalto en adresaro-dosiero"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s ne ekzistas. Ĉu krei ĝin?"
+@@ -120,8 +144,8 @@ msgstr "%s ne ekzistas. Ĉu krei ĝin?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Ne eblas krei %s: %s"
+@@ -131,7 +155,7 @@ msgstr "Ne eblas krei %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -140,7 +164,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -149,7 +173,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -158,7 +182,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -170,7 +194,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "ĉifrado"
+@@ -178,7 +202,7 @@ msgstr "ĉifrado"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -186,7 +210,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -195,7 +219,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Nenia (valida) atestilo trovita por %s"
+@@ -207,12 +231,12 @@ msgstr "Nenia (valida) atestilo trovita por %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Mankas poŝtfako.\n"
+@@ -224,14 +248,14 @@ msgstr "Mankas poŝtfako.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Ĉu krei %s?"
+@@ -239,7 +263,7 @@ msgstr "Ĉu krei %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Forviŝi"
+
+@@ -247,9 +271,9 @@ msgstr "Forviŝi"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -257,17 +281,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -276,7 +300,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -284,7 +308,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -292,12 +316,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -305,13 +329,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Eraro dum legado de dosierujo"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Ĉu vere forviŝi la poŝtfakon \"%s\"?"
+@@ -329,7 +353,7 @@ msgstr "Ĉu vere forviŝi la poŝtfakon \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Ne eblas malfermi poŝtfakon %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "eraro en kreado de gpgme-kunteksto: %s"
+@@ -402,335 +426,286 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s ne estas dosierujo"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Listo"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Masko"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Abonas %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Malabonis %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s ne estas dosierujo"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Abonas %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Poŝtfakoj [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Abonita [%s], Dosieromasko: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Dosierujo [%s], Dosieromasko: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Ne eblas aldoni dosierujon"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Neniu dosiero kongruas kun la dosieromasko"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Kreado funkcias nur ĉe IMAP-poŝtfakoj"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Renomado funkcias nur ĉe IMAP-poŝtfakoj"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Forviŝado funkcias nur ĉe IMAP-poŝtfakoj"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "montri la nomon de la elektita dosiero"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Ĉu vere forviŝi la poŝtfakon \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Poŝtfako forviŝita"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Poŝtfako forviŝita"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Poŝtfako ne forviŝita"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Iri al la dosierujo: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Eraro dum legado de dosierujo"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Dosieromasko: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Inversa ordigo laŭ (d)ato, (a)lfabete, (g)rando, aŭ (n)e ordigi?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ordigo laŭ (d)ato, (a)lfabete, (g)rando, aŭ (n)e ordigi?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nova dosieronomo: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Ne eblas rigardi dosierujon"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Eraro dum vidigo de dosiero"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Abonas %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Malabonis %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Neniu dosiero kongruas kun la dosieromasko"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: terminalo ne kapablas je koloro"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: koloro ne ekzistas"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: objekto ne ekzistas"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: nesufiĉe da argumentoj"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: nekonata trajto"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: tro da argumentoj"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "implicitaj koloroj ne funkcias"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Eraro: score: nevalida nombro"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Ĉu kontroli subskribon?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Ne eblis krei dumtempan dosieron"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Ne eblas krei vidig-filtrilon"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Ne eblis kopii mesaĝon"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-subskribo estis sukcese kontrolita"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Posedanto de S/MIME-atestilo ne kongruas kun sendinto"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Averto: Parto de ĉi tiu mesaĝo ne estis subskribita"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-subskribo NE povis esti kontrolita"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-subskribo estas sukcese kontrolita"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-subskribo NE povis esti kontrolita"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Eraro dum ruligo de \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Komando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Averto: mesaĝo malhavas 'From:'-ĉapaĵon"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Redirekti mesaĝon al: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Redirekti markitajn mesaĝojn al: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Eraro dum analizo de adreso"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Redirekti mesaĝon al %s?"
+ msgstr[1] "Redirekti mesaĝojn al %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Mesaĝo ne redirektita"
+ msgstr[1] "Mesaĝoj ne redirektitaj"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Mesaĝo redirektita"
+ msgstr[1] "Mesaĝoj redirektitaj"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Ne eblas krei filtrilprocezon"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Filtri per komando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Neniu pres-komando estas difinita"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Ĉu presi mesaĝon?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Ĉu presi markitajn mesaĝojn?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Mesaĝo presita"
+ msgstr[1] "Mesaĝoj presitaj"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -738,162 +713,325 @@ msgstr[0] "Ne eblis presi mesaĝon"
+ msgstr[1] "Ne eblis presi mesaĝojn"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Inverse laŭ (d)ato/d(e)/(r)icev/(t)emo/(a)l/(f)aden/(n)eorde/(g)rando/(p)oent/spa(m)/(e)tikedo?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordigo laŭ (d)ato/d(e)/(r)icev/(t)emo/(a)l/(f)aden/(n)eorde/(g)rando/(p)oent/spa(m)/(e)tikedo?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dertafngpme"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Ŝelkomando: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Malkodita skribi al poŝtfako"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Malkodita skribi markitajn al poŝtfako"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Malĉifrita skribi al poŝtfako"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Malĉifrita skribi markitajn al poŝtfako"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Skribi al poŝtfako"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Skribi markitajn al poŝtfako"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Malkodita kopii al poŝtfako"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Malkodita kopii markitajn al poŝtfako"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Malĉifrita kopii al poŝtfako"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Malĉifrita kopii markitajn al poŝtfako"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Kopii al poŝtfako"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopii markitajn al poŝtfako"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopias al %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type ŝanĝita al %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Ĉu konverti al %s ĉe sendado?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type ŝanĝita al %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Signaro ŝanĝita al %s; ne konvertiĝas"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Signaro ŝanĝita al %s; konvertiĝas"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: nesufiĉe da argumentoj"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: mankas gruponomo"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "nesufiĉe da argumentoj"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Eraro en %s, linio %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Eraro en %s, linio %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: eraroj en %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: legado ĉesis pro tro da eraroj en %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: eraroj en %s"
++msgstr[1] "source: eraroj en %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "adresaro: mankas adreso"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Averto: Malbona IDN '%s' en adreso '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: mankas dispozicio"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "redakti priskribon de parto"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: nevalida dispozicio"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: tro da argumentoj"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%s-grupo: mankas -rx aŭ -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%s-grupo: averto: malbona IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "nevalida ĉaplinio"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: nekonata variablo"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s estas malŝaltita"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: eraro ĉe %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Ne eblis presi mesaĝojn"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: neniu ŝablono kongruas"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: neniu ŝablono kongruas"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Abonas %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Abonas %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Temlinio ne specifita."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: mankas dispozicio"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: nevalida dispozicio"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Malabonis %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Malabonis %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Mankas mesaĝopartoj"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Respondi"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -904,78 +1042,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Subskribi kiel: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Ĉu respondi grupe al %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "redakti la kampon Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Sendi"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Interrompi"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Aldoni dosieron"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Priskribo"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Temlinio ne specifita."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Nenio"
+@@ -984,7 +1122,7 @@ msgstr "Nenio"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -992,14 +1130,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "jes"
+@@ -1010,7 +1148,7 @@ msgstr "jes"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1018,51 +1156,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Ne subtenatas"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Subskribi, Ĉifri"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Ĉifri"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Subskribi"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Nenio"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (enteksta PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc-moduso)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<implicite>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Ĉifri per: "
+
+@@ -1071,12 +1209,12 @@ msgstr "Ĉifri per: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "redakti la kampon Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1087,7 +1225,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] ne plu ekzistas"
+@@ -1099,239 +1237,359 @@ msgstr "%s [#%d] ne plu ekzistas"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] modifita. Ĉu aktualigi kodadon?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Partoj"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Vi ne povas forviŝi la solan parton"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Malbona IDN en '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Parto skribita"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Ĉi tiu parto ne estos konvertita"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Parto filtrita"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Eraro dum sendado de mesaĝo"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Aldonas la elektitajn dosierojn..."
+ msgstr[1] "Aldonas la elektitajn dosierojn..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Ne eblas aldoni %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Malfermu poŝtfakon por aldoni mesaĝon el ĝi"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Malfermu poŝtfakon por aldoni mesaĝon el ĝi"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Ne eblas malfermi poŝtfakon %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Ne estas mesaĝoj en tiu poŝtfako"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Marku la mesaĝojn kiujn vi volas aldoni"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Ne eblas aldoni"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Rekodado efikas nur al tekstaj partoj"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Ĉi tiu parto ne estos konvertita"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Ĉi tiu parto estos konvertita"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Nevalida kodado"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Ĉu skribi kopion de ĉi tiu mesaĝo?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Sendi parton kun nomo: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Renomi al: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Ne eblas ekzameni la dosieron %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nova dosiero: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type havas la formon bazo/subspeco"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Nekonata Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Ne eblas krei dosieron %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Malsukcesis krei kunsendaĵon"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Ĉu revoki prokrastitan mesaĝon?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Skribi mesaĝon al poŝtfako"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Skribas mesaĝon al %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Mesaĝo skribita"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME jam elektita. Ĉu nuligi kaj daŭrigi?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP jam elektita. Ĉu nuligi kaj daŭrigi?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Ne eblas aldoni sen 'append-hook' aŭ 'close-hook': %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Ne eblis ŝlosi poŝtfakon"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Maldensigo de %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Ne eblas identigi enhavon de densigita dosiero"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Ne eblas trovi poŝtfakajn agojn por poŝtfaktipo %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Densiga komando fiaskis: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Nesubtenata poŝtfaktipo por aldoni"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Ne eblas sinkronigi densigitan dosieron sen 'close-hook'"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Densigo de %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Densiga aldono al %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Eraro. Konservas dumtempan dosieron: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Nevalida relativa dato: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Nevalida relativa dato: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Eraro: score: nevalida nombro"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Nevalida valoro por opcio %s: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Nevalida monato: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funkcio nepermesata dum elektado de aldonoj."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Eraro: score: nevalida nombro"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Eraro: score: nevalida nombro"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Nevalida relativa dato: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Nevalida valoro por opcio %s: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Eraro: valoro '%s' ne validas por '-d'"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: nekonata variablo"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Nevalida relativa dato: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Nevalida relativa dato: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Uzantonomo ĉe %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Pasvorto por %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Demandokomando ne difinita"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1352,7 +1610,7 @@ msgstr "Konektiĝas al %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Ne eblis konektiĝi al %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "nekonata eraro"
+
+@@ -1366,23 +1624,23 @@ msgstr "Eraro dum komunikado kun %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Konekto al %s fermita"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Nekonata SASL-profilo"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Eraro en asignado de SASL-konekto"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Eraro dum agordo de SASL-sekureco-trajtoj"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Eraro dum agordo de SASL-sekureco-forto"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Eraro dum agordo de ekstera uzantonomo de SASL"
+
+@@ -1395,133 +1653,109 @@ msgstr "Antaŭkonekta komando malsukcesis"
+ msgid "Connection to %s closed"
+ msgstr "Konekto al %s fermita"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Plenigas entropiujon: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s havas malsekurajn permesojn"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL malŝaltita pro manko de entropio"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Nekonata"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[ne eblas kalkuli]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[nevalida dato]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Atestilo de servilo ankoraŭ ne validas"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Atestilo de servilo estas eksvalidiĝinta"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Ne trovis sufiĉe da entropio en via sistemo"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "ne eblas akiri atestilan temon"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "ne eblas akiri atestilan normalan nomon"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "posedanto de atestilo ne kongruas kun komputilretnomo %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Ĉi tiu atestilo apartenas al:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Ĉi tiu atestilo estis eldonita de:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Ĉi tiu atestilo estas valida"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " al %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-fingrospuro: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA1-fingrospuro: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Kontrolo de SSL-atestilo (%zu de %zu en ĉeno)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "muas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(m)alakcepti, akcepti (u)nufoje, (a)kcepti ĉiam, (s)kip"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(m)alakcepti, akcepti (u)nufoje, (a)kcepti ĉiam"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(m)alakcepti, akcepti (u)nufoje, (s)kip"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(m)alakcepti, akcepti (u)nufoje"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Eliri "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Averto: Ne eblis skribi atestilon"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Atestilo skribita"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Malsukcesis kontrolo de gastiganta atestilo: %s"
+@@ -1529,15 +1763,15 @@ msgstr "Malsukcesis kontrolo de gastiganta atestilo: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "eraro ĉe legado aŭ skribado"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL malsukcesis: %s"
+@@ -1545,89 +1779,73 @@ msgstr "SSL malsukcesis: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Malsukcesis krei SSL-kuntekston"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Ne eblas akiri SSL-atestilon"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Eraro dum kontrolo de atestilo (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Atestilo ne estas X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Eraro dum starigo de gnutls-atestilo-datenoj"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Eraro dum traktado de atestilodatenoj"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "AVERTO: Atestilo de servilo ankoraŭ ne validas"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "AVERTO: Atestilo de servilo estas eksvalidiĝinta"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "AVERTO: Atestilo de servilo estas revokita"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "AVERTO: Nomo de serviloj ne kongruas kun atestilo"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "AVERTO: Subskribinto de servilo-atestilo ne estas CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Averto: servila atestilo estas subskribita kun malsekura algoritmo"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "mua"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "mu"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Ĉiuj disponeblaj protokoloj por TLS/SSL-konekto malŝaltitaj"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Rekta elekto de ĉifra algoritmo per $ssl_ciphers ne subtenatas"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-konekto per %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Eraro: neniu TLS-konekto malfermita"
+
+@@ -1646,38 +1864,18 @@ msgstr "Tuneleraro dum komunikado kun %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunelo al %s donis eraron %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "jes"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ne"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Ĉu eliri el NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Premu klavon por daŭrigi..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' por listo): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1699,7 +1897,7 @@ msgstr ""
+ "~M mesaĝoj same kiel ~m, sed inkluzivi ankaŭ la ĉapojn\n"
+ "~p presi la mesaĝon\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1721,20 +1919,20 @@ msgstr ""
+ "~? vidi ĉi tiun informon\n"
+ ". sola en linio finas la enigon\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: nevalida mesaĝnumero.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Finu mesaĝon per . sur propra linio)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Mankas poŝtfako.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Mesaĝo enhavas:\n"
+
+@@ -1742,19 +1940,19 @@ msgstr "Mesaĝo enhavas:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(daŭrigi)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "mankas dosieronomo.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Nul linioj en mesaĝo.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: nekonata redaktokomando (~? por helpo)\n"
+@@ -1801,19 +1999,73 @@ msgstr "Ne eblas aldoni al dosierujo: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Plurparta mesaĝo ne havas limparametron"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Fadenoj ne estas ŝaltitaj"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Ŝalti flagon"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Malŝalti flagon"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: terminalo ne kapablas je koloro"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: koloro ne ekzistas"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: objekto ne ekzistas"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: nekonata trajto"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "implicitaj koloroj ne funkcias"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Eraro: score: nevalida nombro"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "jes"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ne"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Ĉu eliri el NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Premu klavon por daŭrigi..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' por listo): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1834,23 +2086,23 @@ msgstr "[-- Aŭtomata vidigo per %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Alvokas aŭtomatan vidigon per: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Ne eblas krei filtrilon"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Ne eblas ruli %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Erareligo de %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Eraro: parto message/external ne havas parametro access-type --]\n"
+
+@@ -1869,7 +2121,7 @@ msgstr "[-- Eraro: parto message/external ne havas parametro access-type --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1898,7 +2150,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1912,7 +2164,7 @@ msgstr[1] "[-- Ĉi tiu %s/%s-parto (grando %s bitokoj) estas forviŝita --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1924,12 +2176,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Ĉi tiu %s/%s-parto estas forviŝita --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nomo: %s --]\n"
+@@ -1937,7 +2189,7 @@ msgstr "[-- nomo: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1952,7 +2204,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1961,94 +2213,94 @@ msgstr ""
+ "[-- Ĉi tiu %s/%s-parto ne estas inkluzivita, --]\n"
+ "[-- kaj NeoMutt ne kapablas je la indikita alirmaniero %s. --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Eraro: Neniu parto de Multipart/Alternative estis montrebla --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Parto #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Parto #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Unu aŭ pluraj partoj de ĉi tiu mesaĝo ne montriĝeblas"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Ne eblas malfermi dumtempan dosieron"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Ne eblas malfermi dumtempan dosieron"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Eraro: multipart/signed ne havas parametron 'protocol'!"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Ĉi tiu estas parto (uzu '%s' por vidigi ĉi tiun parton) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s ne estas konata (uzu '%s' por vidigi ĉi tiun parton) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Ĉi tiu estas parto (bezonas klavodifinon por 'view-attachments') --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s ne estas konata (bezonas klavodifinon por 'view-attachments') --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Ĉi tiu estas parto --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s ne estas konata --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERARO: bonvolu raporti ĉi tiun cimon"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<NEKONATA>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Ĝeneralaj klavodifinoj:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funkcioj kiuj ne havas klavodifinon:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Helpo por %s"
+@@ -2065,41 +2317,41 @@ msgstr "poŝtfaka fulmklavo malvolvis al vaka regulesprimo"
+ msgid "badly formatted command string"
+ msgstr "malbone aranĝita komandoĉeno"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Ne eblas fari unhook * de en hoko"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: nekonata speco de hook: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Ne eblas forviŝi %s de en %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: nekonata menuo"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: nekonata menuo"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: nekonata menuo"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Ne eblis krei dumtempan dosieron %s"
+@@ -2137,30 +2389,30 @@ msgstr "GSSAPI-rajtiĝo malsukcesis"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN estas malŝaltita ĉe ĉi tiu servilo"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Salutas..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Saluto malsukcesis"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Rajtiĝas (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-rajtiĝo malsukcesis"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Rajtiĝas (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-rajtiĝo malsukcesis"
+
+@@ -2207,90 +2459,80 @@ msgstr "Renomado malsukcesis: %s"
+ msgid "Mailbox renamed"
+ msgstr "Poŝtfako renomita"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Poŝtfako fermita"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Konekto al %s fermita"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Ĉi tiu IMAP-servilo estas antikva. NeoMutt ne funkcias kun ĝi."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Ĉaposerĉo sen ĉaponomo: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE malsukcesis: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Fermas la konekton al %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Ĉu sekura konekto per TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Ne eblis negoci TLS-konekton"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Ĉifrata konekto ne disponeblas"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Abonas %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Malabonas %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Abonas %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Malabonis %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopias %d mesaĝojn al %s..."
+ msgstr[1] "Kopias %d mesaĝojn al %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Ĉu krei %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Forviŝo malsukcesis"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2298,44 +2540,44 @@ msgstr[0] "Markas %d mesaĝojn kiel forviŝitajn..."
+ msgstr[1] "Markas %d mesaĝojn kiel forviŝitajn..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Skribas ŝanĝitajn mesaĝojn... [%d/%d]"
+ msgstr[1] "Skribas ŝanĝitajn mesaĝojn... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Eraro dum skribado de flagoj. Ĉu tamen fermi?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Eraro dum skribado de flagoj"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Forviŝas mesaĝojn de la servilo..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE malsukcesis"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Elektas %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Eraro dum malfermado de poŝtfako"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP-servilo ne akceptas rajtiĝon"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Nevalida "
+@@ -2346,7 +2588,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Mankas sufiĉa memoro"
+
+@@ -2366,7 +2608,7 @@ msgstr "Prenas mesaĝoĉapojn..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Ne eblas preni ĉapojn de ĉi tiu versio de IMAP-servilo"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Prenas mesaĝoĉapojn..."
+
+@@ -2379,156 +2621,156 @@ msgstr "Alŝutas mesaĝon..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopias mesaĝon %d al %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Prenas mesaĝon..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "La mesaĝindekso estas malĝusta. Provu remalfermi la poŝtfakon."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Ĉu daŭrigi?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Fini"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Skribi"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Nova mesaĝo"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Respondi"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Respondi al grupo"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Ĉu respondi grupe al %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Neniu poŝtfako estas malfermita"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Ne estas mesaĝoj"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Malestas videblaj mesaĝoj"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Poŝtfako estas nurlega"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funkcio nepermesata dum elektado de aldonoj"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: operacio ne permesiĝas de ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Ne eblas ŝanĝi skribostaton ĉe nurlega poŝtfako"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Ŝanĝoj al poŝtfako estos skribitaj ĉe eliro"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Ŝanĝoj al poŝtfako ne estos skribitaj"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s ne estas poŝtfako"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Poŝtfako estis modifita de ekstere. Flagoj povas esti malĝustaj."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Nova mesaĝo en ĉi tiu poŝtfako"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Poŝtfako estis modifita de ekstere"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Mankas markitaj mesaĝoj"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nenio farenda"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Donu keyID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Radika mesaĝo ne estas videbla en ĉi tiu limigita rigardo"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Forviŝas mesaĝojn de la servilo..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "forviŝi ĉiujn mesaĝojn en fadeno"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Salti al mesaĝo: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumento devas esti mesaĝnumero"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Nevalida mesaĝnumero"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Tiu mesaĝo ne estas videbla"
+
+@@ -2541,38 +2783,38 @@ msgstr "Tiu mesaĝo ne estas videbla"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Ne eblas forviŝi mesaĝon"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Forviŝi mesaĝojn laŭ la ŝablono: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Nenia ŝablono estas aktiva"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Ŝablono: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limigi al mesaĝoj laŭ la ŝablono: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Por vidi ĉiujn mesaĝojn, limigu al \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Ĉu eliri el NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marki mesaĝojn laŭ la ŝablono: "
+
+@@ -2580,204 +2822,204 @@ msgstr "Marki mesaĝojn laŭ la ŝablono: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Ne eblas malforviŝi mesaĝon"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Malforviŝi mesaĝojn laŭ la ŝablono: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Malmarki mesaĝojn laŭ la ŝablono: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Elsalutis el IMAP-serviloj"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Mankas temlinio; eliras"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP-servilo ne akceptas rajtiĝon"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Mankas temlinio; eliras"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Mankas temlinio; eliras"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Malfermi poŝtfakon nurlege"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Malfermi poŝtfakon"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Neniu poŝtfako havas novan poŝton."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Malfermi poŝtfakon nurlege"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Eliri el NeoMutt sen skribi?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Ne eblas ligi fadenojn"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Fadeno rompiĝis"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Ne eblas rompi fadenon; mesaĝo ne estas parto de fadeno"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Ne eblas ligi fadenojn"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Neniu 'Message-ID:'-ĉapaĵo disponeblas por ligi fadenon"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Unue, bonvolu marki mesaĝon por ligi ĝin ĉi tie"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Fadenoj ligitaj"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Neniu fadeno ligita"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Vi estas ĉe la lasta mesaĝo"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Malestas malforviŝitaj mesaĝoj"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Vi estas ĉe la unua mesaĝo"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Malestas novaj mesaĝoj en ĉi tiu limigita rigardo"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Malestas novaj mesaĝoj"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Malestas nelegitaj mesaĝoj en ĉi tiu limigita rigardo"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Malestas nelegitaj mesaĝoj"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Serĉo rekomencis ĉe la komenco"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Serĉo rekomencis ĉe la fino"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Ne eblas flagi mesaĝon"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Ne eblas (mal)ŝalti \"nova\""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Ne restas fadenoj"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Vi estas ĉe la unua fadeno"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Fadeno enhavas nelegitajn mesaĝojn"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Ne eblas forviŝi mesaĝon"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Ne eblas redakti mesaĝon"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2787,7 +3029,7 @@ msgstr[1] "%d etikedoj ŝanĝiĝis"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Neniu etikedo ŝanĝiĝis"
+
+@@ -2795,7 +3037,7 @@ msgstr "Neniu etikedo ŝanĝiĝis"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Ne eblas marki mesaĝo(j)n kiel legita(j)n"
+@@ -2803,270 +3045,133 @@ msgstr "Ne eblas marki mesaĝo(j)n kiel legita(j)n"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Tajpu makroan klavon: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "fulmklavo por mesaĝo"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Mesaĝo ligiĝis al %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Mesaĝa ID mankas en indekso"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Ne eblas malforviŝi mesaĝon"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Eraro en komandlinio: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Eraro en komandlinio: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "ne eblas eltrovi la komputilretnomo per 'uname()'"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: mankas gruponomo"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "nesufiĉe da argumentoj"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Eraro en %s, linio %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Eraro en %s, linio %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: eraroj en %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: legado ĉesis pro tro da eraroj en %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: eraroj en %s"
+-msgstr[1] "source: eraroj en %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "adresaro: mankas adreso"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Averto: Malbona IDN '%s' en adreso '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: mankas dispozicio"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "redakti priskribon de parto"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: nevalida dispozicio"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%s-grupo: mankas -rx aŭ -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%s-grupo: averto: malbona IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "nevalida ĉaplinio"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: nekonata variablo"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s estas malŝaltita"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: eraro ĉe %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Ne eblis presi mesaĝojn"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: neniu ŝablono kongruas"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: neniu ŝablono kongruas"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Abonas %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Temlinio ne specifita."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: mankas dispozicio"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: nevalida dispozicio"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Malabonis %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: nekonata komando"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Nevalida valoro por opcio %s: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funkcio nepermesata dum elektado de aldonoj."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Cirkla makroo trovita"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klavo ne estas difinita"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klavo ne estas difinita. Premu '%s' por helpo."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: malplena klavoserio"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: malplena klavoserio"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: mankas argumentoj"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: funkcio ne ekzistas"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Donu ŝlosilojn (^G por nuligi): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Signo = %s, Okume = %o, Dekume = %d"
+@@ -3090,7 +3195,7 @@ msgstr "mailcap-regulo por speco %s ne trovita"
+ msgid "Scanning %s..."
+ msgstr "Traserĉas %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Legiĝas %s..."
+@@ -3105,13 +3210,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): ne eblas ŝanĝi tempon de dosiero"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Skribiĝas %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3134,7 +3239,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3177,54 +3282,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Eraro dum startigo de la terminalo"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ne eblas eltrovi la uzantonomo"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ne eblas eltrovi la hejmdosierujon"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Eraro: valoro '%s' ne validas por '-d'"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Malsukcesis analizi 'mailto:'-ligon"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nenia ricevonto specifita"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Ne eblas uzi opcio '-E' kun ĉefenigujo"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Ne eblas malfermi mesaĝodosieron: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: ne eblas aldoni dosieron"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Mankas poŝtfako kun nova poŝto"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Neniu enir-poŝtfako estas difinita"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Poŝtfako estas malplena"
+
+@@ -3266,52 +3371,52 @@ msgstr "Ne eblis remalfermi poŝtfakon"
+ msgid "Can't write message"
+ msgstr "Ne eblas skribi mesaĝon"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Salti al: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Nevalida indeksnumero"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Neniaj registroj"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Ne eblas rulumi pli malsupren"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Ne eblas rulumi pli supren"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Ĉi tiu estas la unua paĝo"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Ĉi tiu estas la lasta paĝo"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Ĉi tiu estas la lasta elemento"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Ĉi tiu estas la unua elemento"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Serĉi pri: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Inversa serĉo pri: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ne trovita"
+
+@@ -3354,20 +3459,20 @@ msgstr "Atendas flock-ŝloson... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Malbona strukturo de histori-dosiero (linio %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Ne eblas krei dumtempan dosieron"
+
+@@ -3386,7 +3491,7 @@ msgstr "Sencimigo ĉe la nivelo %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Sencimigo ĉe la nivelo %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Eraro dum konektiĝo al servilo: %s"
+@@ -3410,17 +3515,17 @@ msgstr "Ricevis signalon %d (%s) ... Eliras.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Ricevis signalon %d ... Eliras.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3428,148 +3533,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Dosiero estas dosierujo; ĉu skribi sub ĝi? (j)es, (n)e, ĉ(i)uj"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "jni"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Tio estas dosierujo; ĉu skribi dosieron en ĝi?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Dosiero en dosierujo: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Dosiero ekzistas; ĉu (s)urskribi, (a)ldoni, aŭ (n)uligi?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "san"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Ne eblas skribi mesaĝon al POP-poŝtfako"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Ĉu aldoni mesaĝojn al %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Ne eblas lasi mesaĝojn ĉe la servilo"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Uzantonomo ĉe %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Pasvorto por %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Demandokomando ne difinita"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Nomŝablono ne estas plenumebla. Ĉu daŭrigi?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "\"compose\" en Mailcap-dosiero postulas %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Malsukcesis malfermi dosieron por analizi ĉapaĵojn"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Malsukcesis malfermi dosieron por forigi ĉapaĵojn"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Malsukcesis renomi dosieron"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "En la Mailcap-dosiero mankas \"compose\" por %s; malplena dosiero estas kreita"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "\"edit\" en Mailcap-dosiero postulas %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "En la Mailcap-dosiero mankas \"edit\" por %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Neniu Mailcap-regulo kongruas. Traktas kiel tekston."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-speco ne difinita. Ne eblas vidigi parton."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Komando: %-20.20s Priskribo: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Komando: %-30.30s Parto: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Parto: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Parto: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Skriberaro"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Mi ne scias presi tion"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Serĉi"
+
+@@ -3578,21 +3655,21 @@ msgstr "Serĉi"
+ msgid "History '%s'"
+ msgstr "Demando '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Nevalida valoro por opcio %s: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Ne eblis ŝlosi %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nova mesaĝo en "
+
+@@ -3613,20 +3690,20 @@ msgstr "Radika mesaĝo ne estas videbla en ĉi tiu limigita rigardo"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Patra mesaĝo ne estas videbla en ĉi tiu limigita rigardo"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Serĉo interrompita."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Ne eblas aldoni %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3637,69 +3714,69 @@ msgstr[1] "mesaĝo(j) ne forviŝiĝis"
+ msgid "Can't open trash folder"
+ msgstr "Ne eblas malfermi rubujon"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Ĉu movi legitajn mesaĝojn al %s?"
+ msgstr[1] "Ĉu movi legitajn mesaĝojn al %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Ĉu forpurigi %d forviŝitan mesaĝon?"
+ msgstr[1] "Ĉu forpurigi %d forviŝitajn mesaĝojn?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Movas legitajn mesaĝojn al %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Poŝtfako estas neŝanĝita"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d retenite, %d movite, %d forviŝite"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d retenite, %d forviŝite"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Premu '%s' por (mal)ŝalti skribon"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Uzu 'toggle-write' por reebligi skribon"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Poŝtfako estas markita kiel neskribebla. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Poŝtfako sinkronigita"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (nuna horo: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s eligo sekvas%s --]\n"
+@@ -3708,55 +3785,55 @@ msgstr "[-- %s eligo sekvas%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Pasfrazo(j) forgesita(j)"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Ne eblas uzi PGP kun aldonaĵoj. Ĉu refali al PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Mesaĝo ne sendita: ne eblas uzi enteksta PGP kun aldonaĵoj"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Ne eblas uzi PGP kun aldonaĵoj. Ĉu refali al PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ #, fuzzy
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Mesaĝo ne sendita: ne eblas uzi enteksta PGP kun aldonaĵoj"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Alvokas PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Ne eblas sendi mesaĝon entekste. Ĉu refali al PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Mesaĝo ne sendita"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-mesaĝoj sen informoj pri enhavo ne funkcias"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Provas eltiri PGP-ŝlosilojn...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Provas eltiri S/MIME-atestilojn..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3765,7 +3842,7 @@ msgstr ""
+ "[-- Eraro: nekonata multipart/signed-protokolo %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3774,7 +3851,7 @@ msgstr ""
+ "[-- Eraro: malĝusta strukturo de multipart/signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3783,7 +3860,7 @@ msgstr ""
+ "[-- Averto: ne eblas kontroli %s/%s-subskribojn. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3791,7 +3868,7 @@ msgstr ""
+ "[-- La sekvaj datenoj estas subskribitaj --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3799,7 +3876,7 @@ msgstr ""
+ "[-- Averto: ne eblas trovi subskribon. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3818,237 +3895,237 @@ msgstr "Alvokas S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Nomo ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alinome: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Valida de .: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Valida ĝis : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Ŝlosiluzado: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Ŝlosiluzado: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingrospuro: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Seri-numero: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Eldonita de: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Subŝlosilo : 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "eraro en funkciigo de CMS-protokolo: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "eraro en kreado de gpgme-datenobjekto: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "eraro en asignado por datenobjekto: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "eraro en rebobenado de datenobjekto: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "eraro en legado de datenobjekto: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "eraro en aldonado de ricevonto '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "sekreta ŝlosilo '%s' ne trovita: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "plursenca specifo de sekreta ŝlosilo '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "eraro en elekto de sekreta ŝlosilo '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "eraro en elektado de PKA-subskribo-notacio: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "eraro en ĉifrado de datenoj: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "eraro en subskribado de datenoj: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as estas malŝaltita kaj neniu defaŭlta ŝlosilo indikatas en ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Averto: Unu el la ŝlosiloj estas revokita\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Averto: La ŝlosilo uzita por krei la subskribon eksvalidiĝis je: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Averto: Almenaŭ unu atestila ŝlosilo eksvalidiĝis\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Averto: La subskribo eksvalidiĝis je: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Ne eblas kontroli pro mankanta ŝlosilo aŭ atestilo\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL ne disponeblas\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Disponebla CRL estas tro malnova\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Politika postulo ne estis plenumita\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Sistemeraro okazis"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "AVERTO: PKA-registro ne kongruas kun adreso de subskribinto: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA-kontrolita adreso de subskribinto estas: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "AVERTO: Ni havas NENIAN indikon, ĉu la ŝlosilo apartenas al la persono nomita supre\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "AVERTO: La ŝlosilo NE APARTENAS al la persono nomita supre\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "AVERTO: NE estas certe ke la ŝlosilo apartenas al la persono nomita supre\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "Ŝlosil-ID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "kreita: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Eraro en akirado de ŝlosilinformo por ŝlosil-ID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Bona subskribo de:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*MALBONA* subskribo de:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problema subskribo de:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " senvalidiĝas: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Komenco de subskribinformo --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Eraro: kontrolado fiaskis: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Komenco de notacio (subskribo de: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Fino de notacio ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4056,38 +4133,43 @@ msgstr ""
+ "[-- Fino de subskribo-informoj --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Eraro: malĉifrado fiaskis: %s --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Eraro dum eksportado de ŝlosilo: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Eraro: malĉifrado/kontrolado fiaskis: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-mesaĝo estis sukcese malĉifrita"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Eraro: datenkopiado fiaskis\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+ msgstr "[-- KOMENCO DE PGP-MESAĜO --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- KOMENCO DE PUBLIKA PGP-ŜLOSILO --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4095,19 +4177,19 @@ msgstr ""
+ "[-- KOMENCO DE PGP-SUBSKRIBITA MESAĜO --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- FINO DE PGP-MESAĜO --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FINO DE PUBLIKA PGP-ŜLOSILO --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- FINO DE PGP-SUBSKRIBITA MESAĜO --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4115,11 +4197,11 @@ msgstr ""
+ "[-- Eraro: ne eblas trovi komencon de PGP-mesaĝo --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Eraro: ne eblas krei dumtempan dosieron --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4127,7 +4209,7 @@ msgstr ""
+ "[-- La sekvaj datenoj estas PGP/MIME-subskribitaj kaj -ĉifritaj --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4135,24 +4217,20 @@ msgstr ""
+ "[-- La sekvaj datenoj estas PGP/MIME-ĉifritaj --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Fino de PGP/MIME-subskribitaj kaj -ĉifritaj datenoj --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Fino de PGP/MIME-ĉifritaj datenoj --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-mesaĝo estis sukcese malĉifrita"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Ne eblis malĉifri PGP-mesaĝon"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4160,7 +4238,7 @@ msgstr ""
+ "[-- La sekvaj datenoj estas S/MIME-subskribitaj --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4168,34 +4246,34 @@ msgstr ""
+ "[-- La sekvaj datenoj estas S/MIME-ĉifritaj --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Fino de S/MIME-subskribitaj datenoj --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Fino de S/MIME-ĉifritaj datenoj --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Ne eblas montri ĉi tiun ID (nekonata kodado)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Ne eblas montri ĉi tiun ID (nevalida kodado)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Ne eblas montri ĉi tiun ID (nevalida DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Nevalida]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4203,94 +4281,94 @@ msgstr[0] "Ŝlosilspeco: %s, %lu-bita %s\n"
+ msgstr[1] "Ŝlosilspeco: %s, %lu-bita %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "ĉifrado"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "subskribo"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "atestado"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revokite]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Eksvalidiĝinte]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Malŝaltita]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Kolektas datenojn..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Eraro dum trovado de eldoninto-ŝlosilo: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Eraro: atestado-ĉeno tro longas -- haltas ĉi tie\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start() malsukcesis: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next() malsukcesis: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Ĉiuj kongruaj ŝlosiloj estas eksvalidiĝintaj/revokitaj"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Elekti "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Kontroli ŝlosilon "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP- kaj S/MIME-ŝlosiloj kongruaj"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-ŝlosiloj kongruaj"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-ŝlosiloj kongruaj"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "ŝlosiloj kongruaj"
+
+@@ -4298,59 +4376,59 @@ msgstr "ŝlosiloj kongruaj"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Ĉi tiu ŝlosilo ne estas uzebla: eksvalidiĝinta/malŝaltita/revokita"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID estas eksvalidiĝinta/malŝaltita/revokita. Ĉu vi vere volas uzi la ŝlosilon?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID ne estas valida. Ĉu vi vere volas uzi la ŝlosilon?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID estas nur iomete valida. Ĉu vi vere volas uzi la ŝlosilon?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID havas nedifinitan validecon. Ĉu vi vere volas uzi la ŝlosilon?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Serĉas ŝlosilojn kiuj kongruas kun \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Ĉu uzi keyID = \"%s\" por %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Donu keyID por %s: "
+@@ -4359,16 +4437,16 @@ msgstr "Donu keyID por %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "sekreta ŝlosilo '%s' ne trovita: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Bonvolu doni la ŝlosilidentigilon: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Eraro dum eksportado de ŝlosilo: %s"
+@@ -4376,95 +4454,95 @@ msgstr "Eraro dum eksportado de ŝlosilo: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-ŝlosilo 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP-protokolo ne disponeblas"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS-protokolo ne disponeblas"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ubskribi, subskribi (k)iel, (p)gp, (f)orgesi, aŭ ne (o)ppenc-moduso?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "skpfo"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ubskribi, subskribi (k)iel, s/(m)ime, (f)orgesi, aŭ ne (o)ppenc-moduso?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "skmfo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME ĉ(i)fri, (s)ubskribi, (k)iel, (a)mbaŭ, (p)gp, (f)or, aŭ (o)ppenc-moduso?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "iskapfo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, (k)iel, (a)mbaŭ, s/(m)ime, (f)or, aŭ (o)ppenc-moduso?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "iskamfo"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME ĉ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaŭ, \"(p)gp\", aŭ (f)orgesi?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "iskapf"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaŭ, \"s/(m)ime\", aŭ (f)orgesi?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "iskamf"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Malsukcesis kontroli sendinton"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Malsukcesis eltrovi sendinton"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Donu PGP-pasfrazon:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Eraro: ne eblas krei PGP-subprocezon --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4475,16 +4553,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-mesaĝo estis sukcese malĉifrita"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "*Programeraro*. Bonvolu raporti."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4492,127 +4570,127 @@ msgstr ""
+ "[-- Eraro: ne eblas krei PGP-subprocezon --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Malĉifro malsukcesis"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Ne eblas malfermi PGP-subprocezon"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Ne eblas alvoki PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/MIM(e)"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(e)nteksta"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ubskribi, subskribi (k)iel, %s, (f)orgesi, aŭ ne (o)ppenc-moduso?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "skifo"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)ubskribi, subskribi (k)iel, (f)orgesi, aŭ ne (o)ppenc-moduso?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "skfo"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, (k)iel, (a)mbaŭ, %s, (f)or, aŭ (o)ppenc-moduso?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "iskaifo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaŭ, (f)or, aŭ (o)ppenc-moduso?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "iskafo"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaŭ, %s, aŭ (f)orgesi?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "iskaif"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP ĉ(i)fri, (s)ubskribi, subskribi (k)iel, (a)mbaŭ, aŭ (f)orgesi?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "iskaf"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Prenas PGP-ŝlosilon..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Ĉiuj kongruaj ŝlosiloj estas eksvalidiĝintaj, revokitaj, aŭ malŝaltitaj"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-ŝlosiloj kiuj kongruas kun <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-ŝlosiloj kiuj kongruas kun \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Ne eblas malfermi /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-ŝlosilo %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Donu S/MIME-pasfrazon:"
+
+@@ -4621,7 +4699,7 @@ msgstr "Donu S/MIME-pasfrazon:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Eksvalidiĝinte"
+
+@@ -4630,7 +4708,7 @@ msgstr "Eksvalidiĝinte"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Nevalida "
+
+@@ -4639,7 +4717,7 @@ msgstr "Nevalida "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Revokite "
+
+@@ -4648,7 +4726,7 @@ msgstr "Revokite "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Fidate "
+
+@@ -4657,7 +4735,7 @@ msgstr "Fidate "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Nekontrolite "
+
+@@ -4666,7 +4744,7 @@ msgstr "Nekontrolite "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Kontrolite "
+
+@@ -4675,59 +4753,59 @@ msgstr "Kontrolite "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Nekonate "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-atestiloj kiuj kongruas kun \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID ne fidatas. Ĉu vi vere volas uzi la ŝlosilon?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Donu keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Nenia (valida) atestilo trovita por %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Eraro: ne povis krei OpenSSL-subprocezon"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Etikedo por atestilo: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "mankas 'certfile'"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "mankas poŝtfako"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Nenia eliro de OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Ne eblas subskribi: neniu ŝlosilo specifita. Uzu \"subskribi kiel\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Ne eblas malfermi OpenSSL-subprocezon"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4735,19 +4813,19 @@ msgstr ""
+ "[-- Fino de OpenSSL-eligo --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Eraro: ne eblas krei OpenSSL-subprocezon --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- La sekvaj datenoj estas S/MIME-ĉifritaj --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- La sekvaj datenoj estas S/MIME-subskribitaj --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4755,7 +4833,7 @@ msgstr ""
+ "\n"
+ "[-- Fino de S/MIME-ĉifritaj datenoj. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4765,167 +4843,167 @@ msgstr ""
+
+ # Atentu -- mi ŝanĝis la ordon, sed la literoj devas sekvi la originalan.
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)ubskribi, (k)iel, ĉifri (p)er, (f)orgesi, aŭ ne (o)ppenc-moduso?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "skpfo"
+
+ # Atentu -- mi ŝanĝis la ordon, sed la literoj devas sekvi la originalan.
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME ĉ(i)fri, (p)er, (s)ubskribi, (k)iel, (a)mbaŭ, (f)or, aŭ (o)ppenc-moduso?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "ipskafo"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME ĉ(i)fri, (s)ubskribi, ĉifri (p)er, subskribi (k)iel, (a)mbaŭ, aŭ (f)orgesi?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "ispkaf"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Elekti algoritmofamilion: (1) DES, (2) RC2, (3) AES, aŭ (f)orgesi?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123f"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triobla-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s ne estas valida POP-vojo"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Servilo fermis la konekton"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP-servilo ne akceptas rajtiĝon"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Nenia rajtiĝilo disponeblas"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL-rajtiĝo malsukcesis"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Konekto al %s fermita"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Prenas liston de mesaĝoj..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Kontrolas pri novaj mesaĝoj..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "Ne eblis skribi al dumtempa poŝtfako: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Konektiĝas al %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Nenio farenda"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Ne eblas ekzameni la dosieron %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Forviŝas mesaĝojn de la servilo..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Salutas..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Kontrolas pri novaj mesaĝoj..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s ne estas valida POP-vojo"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4937,7 +5015,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Malsukcesis analizi 'mailto:'-ligon\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6070,187 +6148,187 @@ msgstr "kaŝi/malkaŝi la flankan strion"
+ msgid "show S/MIME options"
+ msgstr "montri S/MIME-funkciojn"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Ne disponeblas en ĉi tiu menuo"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "AntPĝ"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "SekvPĝ"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Vidi Partojn"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Sekva"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Fino de mesaĝo estas montrita"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Vi estas ĉe la komenco de la mesaĝo"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Helpo estas nun montrata"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Ne plu da citita teksto"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Ne plu da necitita teksto post citita teksto"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Eraro en esprimo: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Malplena esprimo"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Demandokomando ne difinita"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Alvokas aŭtomatan vidigon per: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Nevalida tago de monato: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Nevalida monato: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Nevalida relativa dato: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Malestas nelegitaj mesaĝoj."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Eraro dum malfermado de poŝtfako"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Eraro dum malfermado de poŝtfako"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Ne eblas malfermi /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "eraro en ŝablono ĉe: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "mankas ŝablono: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "krampoj ne kongruas: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: nevalida ŝablona modifilo"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: ne funkcias en ĉi tiu reĝimo"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "parametro mankas"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "malplena ŝablono"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "eraro: nekonata funkcio %d (raportu ĉi tiun cimon)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Tradukiĝas serĉŝablono..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Ruliĝas komando je trafataj mesaĝoj..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Mankas mesaĝoj kiuj plenumas la kondiĉojn"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Serĉas..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Serĉo atingis la finon sen trovi trafon"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Serĉo atingis la komencon sen trovi trafon"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Serĉo interrompita"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Servilo ne havas la komandon TOP"
+
+@@ -6258,7 +6336,7 @@ msgstr "Servilo ne havas la komandon TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "Ne eblas skribi la ĉapaĵon al dumtempa dosiero"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Servilo ne havas la komandon UIDL"
+
+@@ -6273,7 +6351,7 @@ msgstr[1] "%d mesaĝoj perdiĝis. Provu remalfermi la poŝtfakon."
+ msgid "POP host is not defined"
+ msgstr "POP-servilo ne estas difinita"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s ne estas valida POP-vojo"
+@@ -6306,153 +6384,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d el %d mesaĝoj legitaj]"
+ msgstr[1] "%s [%d el %d mesaĝoj legitaj]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Prenas liston de mesaĝoj..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Markas mesaĝojn kiel forviŝitajn..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Ne eblas skribi mesaĝon al dumtempa dosiero"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Rajtiĝas (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP-horstampo malvalidas"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Rajtiĝas (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP-rajtiĝo malsukcesis"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Servilo ne havas la komandon USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL-rajtiĝo malsukcesis"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Nevalida POP-adreso: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Ne eblas lasi mesaĝojn ĉe la servilo"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Eraro dum konektiĝo al servilo: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Fermas la konekton al POP-servilo..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Kontrolas mesaĝindeksojn..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Konekto perdita. Ĉu rekonekti al POP-servilo?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Prokrastitaj Mesaĝoj"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Malestas prokrastitaj mesaĝoj"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Nevalida S/MIME-ĉapo"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Nevalida kripto-ĉapo"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Malĉifras mesaĝon..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nova Demando"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Aldoni Nomon"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Atendas respondon..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Demando: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Demando '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Demandokomando ne difinita"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Tubo"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Presi"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Skribas..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Parto skribita"
+ msgstr[1] "Parto skribita"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "AVERTO! Vi estas surskribonta %s; ĉu daŭrigi?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Parto filtrita"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtri tra: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Trakti per: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Mi ne scias kiel presi %s-partojn"
+@@ -6460,56 +6538,56 @@ msgstr "Mi ne scias kiel presi %s-partojn"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Ĉu presi markitajn partojn?"
+ msgstr[1] "Ĉu presi markitajn partojn?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Ĉu presi parton?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Ne eblas malĉifri ĉifritan mesaĝon"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Partoj"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Mankas subpartoj por montri"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Ne eblas forviŝi parton de POP-servilo"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Ne eblas forviŝi parton de POP-servilo"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "NeoMutt ne kapablas forviŝi partojn el ĉifrita mesaĝo"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Forviŝi partojn el ĉifrita mesaĝo eble malvalidigas la subskribon"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "NeoMutt kapablas forviŝi nur multipart-partojn"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Vi povas redirekti nur message/rfc822-partojn"
+
+@@ -6546,7 +6624,7 @@ msgstr "Ne eblas krei %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Ne eblas trovi markitajn mesaĝojn"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Neniu dissendolisto trovita"
+
+@@ -6561,67 +6639,67 @@ msgstr "Ne eblas malkodi ĉiujn markitajn partojn. Ĉu MIME-paki la aliajn?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Vi povas redirekti nur message/rfc822-partojn"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Aldoni"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Enŝovi"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Bone"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Ne eblas preni type2.list de mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Elekti plusendiloĉenon"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Eraro: %s ne estas uzebla kiel la fina plusendilo de ĉeno"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster-ĉenoj estas limigitaj al %d elementoj"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "La plusendiloĉeno estas jam malplena"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Vi jam elektis la unuan elementon de la ĉeno"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Vi jam elektis la lastan elementon de la ĉeno"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster ne akceptas la kampon Cc aŭ Bcc en la ĉapo"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Bonvolu doni ĝustan valoron al \"hostname\" kiam vi uzas mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Eraro dum sendado de mesaĝo; ido finis per %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Eraro dum sendado de mesaĝo"
+
+@@ -6652,42 +6730,42 @@ msgstr "Ĉu plusendi kiel kunsendaĵojn?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Ĉu respondi al %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Ĉu respondi grupe al %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Ĉu inkluzivi mesaĝon en respondo?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Inkluzivas cititan mesaĝon..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Ne eblis inkluzivi ĉiujn petitajn mesaĝojn"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Ĉu plusendi kiel kunsendaĵon?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Pretigas plusenditan mesaĝon..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: ne funkcias en ĉi tiu reĝimo"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Ĉu konservi parton en Fcc?"
+
+@@ -6695,196 +6773,196 @@ msgstr "Ĉu konservi parton en Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Mankas poŝtfako.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Ĉu revoki prokrastitan mesaĝon?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Ĉu redakti plusendatan mesaĝon?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Ĉu nuligi nemodifitan mesaĝon?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Nemodifita mesaĝon nuligita"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Mesaĝo ne sendita"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Mesaĝo prokrastita"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Mankas temlinio; ĉu haltigi sendon?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Temlinio ne specifita"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Temlinio ne specifita"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "redakti kodadon de parto"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Sendas mesaĝon..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Ne eblis sendi la mesaĝon"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Sendas en fono"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mesaĝo sendita"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nenia limparametro trovita (Raportu ĉi tiun cimon.)"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s ne plu ekzistas"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s ne estas normala dosiero"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Ne eblis sendi la mesaĝon."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Ne eblas malfermi %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "Necesas difini $sendmail por povi sendi retpoŝton"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Eraro dum sendado de mesaĝo; ido finis per %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Eligo de la liverprocezo"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Malbona IDN %s dum kreado de resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-konekto malsukcesis: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-konekto malsukcesis: ne povis malfermi %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Nevalida SMTP-adreso: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s-rajtiĝo malsukcesis; provante sekvan metodon"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI-rajtiĝo malsukcesis"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-servilo ne akceptas rajtiĝon"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Neniu 'de'-adreso indikatas"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-konekto malsukcesis: legeraro"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-konekto malsukcesis: skriberaro"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Nevalida respondo de servilo"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Ordigas poŝtfakon..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Ne eblis trovi ordigfunkcion (Raportu ĉi tiun cimon.)"
+
+@@ -6952,11 +7030,11 @@ msgstr ""
+ "NeoMutt estas libera programo, kaj vi rajtas pludoni kopiojn\n"
+ "sub difinitaj kondiĉoj; tajpu 'neomutt -vv' por detaloj.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Parametroj de la tradukaĵo:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Parametroj de la tradukaĵo:"
+diff --git a/po/es.po b/po/es.po
+index d99a5c2eb..fc8161185 100644
+--- a/po/es.po
++++ b/po/es.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: \n"
+ "Last-Translator: \n"
+ "Language-Team: \n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+ "X-Generator: Poedit 2.2.1\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)echazar, aceptar (u)na vez, (a)ceptar siempre, (i)gnorar"
++
++msgid "roas"
++msgstr "ruai"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)echazar, aceptar (u)na vez, (a)ceptar siempre"
++
++msgid "roa"
++msgstr "rua"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)echazar, aceptar (u)na vez, (i)gnorar"
++
++msgid "ros"
++msgstr "rui"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)echazar, aceptar (u)na vez"
++
++msgid "ro"
++msgstr "ru"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Salir"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Bor"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Recuperar"
+
+@@ -38,18 +62,18 @@ msgstr "Recuperar"
+ msgid "Select"
+ msgstr "Seleccionar"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Ayuda"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "No hay alias en la libreta"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Libreta"
+
+@@ -58,51 +82,51 @@ msgstr "Libreta"
+ msgid "Alias as: "
+ msgstr "Nombre corto: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Ya hay un alias definido con ese nombre en la libreta"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Aviso: Este alias podría no funcionar adecuadamente. ¿Desea arreglarlo?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Dirección: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "IDN incorrecto: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nombre: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] ¿Aceptar?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Guardar en archivo: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Error al leer el archivo de aliases"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Ocurrió un error al intentar añadir el alias"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Se agregó el alias"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Error al buscar en la libreta de alias"
+
+@@ -111,7 +135,7 @@ msgstr "Error al buscar en la libreta de alias"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s no existe. ¿Crearlo?"
+@@ -120,8 +144,8 @@ msgstr "%s no existe. ¿Crearlo?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "No se pudo crear %s: %s"
+@@ -131,7 +155,7 @@ msgstr "No se pudo crear %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -140,7 +164,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -149,7 +173,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -158,7 +182,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -170,7 +194,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Cifrar"
+@@ -178,7 +202,7 @@ msgstr "Cifrar"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -186,7 +210,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -195,7 +219,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "No se ha encontrado ningún certificado (válido) para %s"
+@@ -207,12 +231,12 @@ msgstr "No se ha encontrado ningún certificado (válido) para %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "No hay buzón.\n"
+@@ -224,14 +248,14 @@ msgstr "No hay buzón.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "¿Crear %s?"
+@@ -239,7 +263,7 @@ msgstr "¿Crear %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Suprimir"
+
+@@ -247,9 +271,9 @@ msgstr "Suprimir"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -257,17 +281,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -276,7 +300,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -284,7 +308,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -292,12 +316,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -305,13 +329,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Error al escanear el directorio"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "¿Estás sequro que quieres borrar el buzón \"%s\"?"
+@@ -329,7 +353,7 @@ msgstr "¿Estás sequro que quieres borrar el buzón \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Incapaz de abrir el buzón %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "error al crear el contexto gpgme: %s"
+@@ -402,478 +426,595 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "El caché de mensajes %s no es un directorio"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Cambiar directorio"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Ir a"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Patrón"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Lista"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Inscribirse a"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Anular inscripción a"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Actualizar"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s no es un directorio"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Inscripciones a grupos de noticias"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Grupos de noticias en el servidor [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Buzones [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Suscrito [%s], patrón de archivos: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Directorio [%s], patrón de archivos: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "No se puede adjuntar un directorio"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Ningún archivo coincide con el patrón"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Sólo se pueden crear buzones de IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Sólo se pueden renombrar buzones de IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Sólo se pueden borrar buzones de IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "No es posible borrar el buzón seleccionado"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "¿Estás sequro que quieres borrar el buzón \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "El buzón se borró"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Falló el intento de borrar el buzón"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "El buzón no se borró"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Cambiar directorio a: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Error al escanear el directorio"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Patrón de archivos: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "¿Ordenar al reverso por (f)echa, (t)amaño, d(e)scripción, (a)lfabéticamente o (s)in órden?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "¿Ordenar por (f)echa, (t)amaño, (d)escripción, (n)úmero, n(o)vedad, (a)lfabéticamente o (s)in órden?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "fatdnos"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nombre del nuevo archivo: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "No se puede mostrar el directorio"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Error al tratar de ver el archivo"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Patrón de inscripción: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Patrón de anular inscripción: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Ningún grupo de noticias coinciden con el patrón"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: tu terminal no puede mostrar este color"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: color desconocido"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: objeto desconocido"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: parámetros insuficientes"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: atributo desconocido"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: Demasiados parámetros"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "No hay soporte para colores estándar"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: número de mensaje erróneo.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "¿Comprobar la firma?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "No se pudo crear el archivo temporáneo"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "No se pudo crear el filtro de muestra"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "No se pudo copiar el mensaje"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "La firma S/MIME se comprobó exitosamente"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "El propietario del certificado S/MIME no coincide con el remitente"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Aviso: Partes de este mensaje no tienen firma digital"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Firma S/MIME NO se pudo comprobar"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "La firma PGP se verificó exitosamente"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Firma PGP NO pudo ser verificada"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "¡Error al ejecutar \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Comando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Aviso: El mensaje no contiene ninguna cabecera From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Rebotar mensaje a: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Rebotar mensajes seleccionados a: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "¡Dirección errónea!"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Rebotar mensaje a %s?"
+ msgstr[1] "Rebotar mensajes a %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "El mensaje no se rebotó"
+ msgstr[1] "Los mensajes no se rebotaron"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Mensaje rebotado"
+ msgstr[1] "Mensajes rebotados"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "No se pudo crear el proceso del filtro"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Redirigir el mensaje al comando:"
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "No ha sido definida la órden de impresión"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "¿Imprimir el mensaje?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "¿Imprimir mensajes marcados?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Mensaje impreso"
+ msgstr[1] "Mensajes impresos"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "El mensaje no se pudo imprimir"
+ msgstr[1] "Los mensajes no pudieron ser imprimidos"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordenar al revés por fech(a)/d(e)/(r)ece/a(s)nto/(p)ara/(h)ilo/(n)ada/ta(m)añ/punta(j)?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordenar por fech(a)/d(e)/(r)ecep/a(s)unto/(p)ara/(h)ilo/(n)ada/ta(m)año/punta(j)e?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "aersphnmj"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Comando de shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Decodificar y guardar en el buzón"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decodificar y guardar correos seleccionados en el buzón"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Descifrar y guardar al buzón"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Descifrar y guardar correos seleccionados al buzón"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Guardar al buzón"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Guardar correos seleccionados al buzón"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Decodificar y copiar al buzón"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decodificar y copiar mensajes marcados al buzón"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Descifrar y copiar al buzón"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Descifrar y copiar mensajes marcados al buzón"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Copiar al buzón"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Copiar los correos seleccionados al buzón"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copiando a %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type cambiado a %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "¿Convertir a %s al mandar?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type cambiado a %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "El mapa de caracteres se ha cambiado a %s; sin convertir"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "El mapa de caracteres se ha cambiado a %s; convirtiendo"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: parámetros insuficientes"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "Faltan parámetros"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Error en %s, renglón %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Error en %s, renglón %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: errores en %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "fuente: lectura se abortó por haber demasiados errores en %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "fuente: %d error en %s"
++msgstr[1] "fuente: %d errores en %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: sin dirección"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Aviso: IDN '%s' inválido en alias '%s'"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "editar la descripción del archivo adjunto"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Ajustes de adjuntos:"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "editar la descripción del archivo adjunto"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: Demasiados parámetros"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: falta -rx o -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: aviso: IDN inválido '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "encabezado erróneo"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: variable desconocida"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s no está activada"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: errores en %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "fuente: el archivo %s no se pudo encontrar"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: no hay patrón que coincida"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "quitar marca de los mensajes que coincidan con un patrón"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Inscribiéndose a %s..."
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr ""
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr ""
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "editar la descripción del archivo adjunto"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Desuscribiendo de %s..."
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr ""
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "No hay adjuntos"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "De: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Para: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Asunto: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Responder a:"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -884,77 +1025,77 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Firmar como: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Grupos de noticias:"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "¿Responder a %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "editar el campo Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Enviar"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Cancelar"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Para"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Tema"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Adjuntar archivo"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descrip"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Grupos de noticias"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Ninguna"
+@@ -963,7 +1104,7 @@ msgstr "Ninguna"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -971,14 +1112,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "sí"
+@@ -989,7 +1130,7 @@ msgstr "sí"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -997,51 +1138,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "No disponible"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Firmar, cifrar"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Cifrar"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Firmar"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Ninguna"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr "(PGP en línea)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (Modo OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<predeterminado>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Cifrar con: "
+
+@@ -1050,12 +1191,12 @@ msgstr "Cifrar con: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "editar el campo Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<ninguna cadena definida>"
+
+@@ -1066,7 +1207,7 @@ msgstr "<ninguna cadena definida>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "¡%s [#%d] ya no existe!"
+@@ -1078,233 +1219,353 @@ msgstr "¡%s [#%d] ya no existe!"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] modificado. ¿Rehacer codificación?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Adjuntos"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "No se puede borrar el único adjunto"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "IDN inválido en '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "El adjunto ya está al principio"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Lo fundamental no se puede mover"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "El adjunto ya está al fin"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Agrupar como alternativo requiere por lo menos 2 mensajes seleccionados"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Agrupar como multilingüe requiere por lo menos 2 mensajes seleccionados:"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "No se envía este mensaje"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Adjuntando el archivo seleccionado..."
+ msgstr[1] "Adjuntando los archivos seleccionados..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "¡Imposible adjuntar %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Abrir buzón para adjuntar mensaje de"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Abrir buzón para adjuntar mensaje desde"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Incapaz de abrir el buzón %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "No hay mensajes en esa carpeta"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Marque los mensaje que quieres adjuntar."
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "¡Imposible adjuntar!"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Recodificar sólo afecta adjuntos en formato de texto"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "El archivo adjunto actual no será convertido"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "El archivo adjunto actual será convertido"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "La codificación no es válida"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "¿Guardar una copia de este mensaje?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Enviar adjuntos con nombre: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Renombrar a: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "No se pudo hacer `stat` en %s:%s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Archivo nuevo: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type es de la forma base/subtipo"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Content-Type %s desconocido"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "No se pudo creal el archivo %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Lo que tenemos aquí es un fallo al producir el archivo a adjuntar"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "¿Guardar (posponer) borrador?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Guardar mensaje en el buzón"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Escribiendo mensaje en %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Mensaje escrito"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME ya ha sido seleccionado. ¿Limpiar y continuar?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP ya ha sido seleccionado. ¿Limpiar y continuar?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "No se puede concatenar sin un append-hook o close-hook: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "¡Imposible bloquear buzón"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Descomprimiendo %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "El contenido del archivo comprimido no puede ser identificado"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "No se encuentran operaciones para la bandeja de email de tipo %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Comando de compresión falló: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Este tipo de buzón no puede adjuntar archivos"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "No se puede sincronizar un archivo comprimido sin un close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Comprimiendo %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Comprimiendo y adjuntando a %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Error. Preservando el archivo temporal: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Fecha relativa incorrecta: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Fecha relativa incorrecta: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: número de mensaje erróneo.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Valor inválido para el campo %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mes inválido: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "No se puede usar la opción %s cuando estás en el modo de adjuntar mensajes"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: número de mensaje erróneo.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: número de mensaje erróneo.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Fecha relativa incorrecta: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Valor inválido para el campo %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Error: valor '%s' es inválido para -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: variable desconocida"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Fecha relativa incorrecta: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Fecha relativa incorrecta: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nombre de usuario en %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Contraseña para %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "El comando de indagación no fue definido"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1325,7 +1586,7 @@ msgstr "Conectando a %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "No se pudo conectar a %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "error desconocido"
+
+@@ -1339,23 +1600,23 @@ msgstr "Error al hablar con %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Se ha anulado la conexión a %s"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Perfil SASL desconocido"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Error al iniciar la conexión SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Error al configurar las propiedades de seguridad SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Error al configurar el nombre de usuario externo SASL"
+
+@@ -1368,133 +1629,109 @@ msgstr "La órden anterior a la conexión falló"
+ msgid "Connection to %s closed"
+ msgstr "Conexión a %s cerrada"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Llenando repositorio de entropía: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "¡%s tiene derechos inseguros"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL se desactivó debido a la falta de entropía"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Desconocido"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[imposible calcular]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[fecha inválida]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Certificado del servidor todavía no es válido"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Certificado del servidor se ha vencido"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "No se pudo encontrar suficiente entropía en su sistema"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "Imposible recoger el certificado del tema"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Imposible recoger el certificado de la contraparte"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "el propietario del certificado no coincide con el nombre del equipo %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Este certificado pertenece a:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Este certificado fue producido por:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Este certificado es válido"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " para %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "Huella SHA1: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-msgid "SHA256 Fingerprint: "
+-msgstr "Huella SHA256: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "ruai"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)echazar, aceptar (u)na vez, (a)ceptar siempre, (i)gnorar"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)echazar, aceptar (u)na vez, (a)ceptar siempre"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "Huella SHA1: %s"
+
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)echazar, aceptar (u)na vez, (i)gnorar"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++msgid "SHA256 Fingerprint: "
++msgstr "Huella SHA256: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)echazar, aceptar (u)na vez"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Salir "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Aviso: no se pudo guardar el certificado"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "El certificado se guardó"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Verificación del servidor falló: %s"
+@@ -1502,15 +1739,15 @@ msgstr "Verificación del servidor falló: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Error de Entrada/Salida"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL falló: %s"
+@@ -1518,89 +1755,73 @@ msgstr "SSL falló: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "¡Error: imposible crear subproceso OpenSSL!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Aviso: error al habilitar ssl_comprobar_cadenas_incompletas"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Imposible recoger el certificado de la contraparte"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Error de verificación de certificado (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "El certificado no es X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Error al inicializar la certificación de gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Error al procesar los datos del certificado"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ADVERTENCIA: El certificado del servidor todavía no se ha comprobado"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ADVERTENCIA: El certificado del servidor se ha vencido"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ADVERTENCIA: El certificado del servidor se ha revocado"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "AVISO: El nombre del servidor no coincide con el certificado"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "ADVERTENCIA: La firma del servidor no es del tipo «CA»"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Aviso: el certificado del servidor ha sido firmado usando un algoritmo inseguro"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "rua"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ru"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Todos los protocolos para conexiones TLS/SSL deshabilitados"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Conectando por SSL/TLS con %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Error: no hay un socket TLS abierto"
+
+@@ -1619,38 +1840,18 @@ msgstr "Error al hablar con %s (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "El túnel a %s devolvió el error %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "No existe un motor de descifrado disponible para el mensaje"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "sí"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "¿Salir de NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Presione una tecla para continuar..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' para lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1681,7 +1882,7 @@ msgstr ""
+ "~? este mensaje.\n"
+ ". sólo en un renglón finaliza la entrada.\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1713,20 +1914,20 @@ msgstr ""
+ "~? este mensaje.\n"
+ ". sólo en un renglón finaliza la entrada.\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: número de mensaje erróneo.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Termine el mensaje con un . sólo en un renglón)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "No hay buzón.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Mensaje contiene:\n"
+
+@@ -1734,19 +1935,19 @@ msgstr "Mensaje contiene:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continuar)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "falta el nombre del archivo.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "No hay renglones en el mensaje.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: comando de editor deconocido (~? para ayuda)\n"
+@@ -1793,19 +1994,73 @@ msgstr "No se pudo agregar a la carpeta: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "¡mensaje multiparte no tiene parámetro boundary"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "La muestra por hilos no está activada"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Poner indicador"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Quitar indicador"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: tu terminal no puede mostrar este color"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: color desconocido"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: objeto desconocido"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: atributo desconocido"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "No hay soporte para colores estándar"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: número de mensaje erróneo.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "sí"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "¿Salir de NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Presione una tecla para continuar..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' para lista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1826,23 +2081,23 @@ msgstr "[-- Automuestra usando %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Invocando comando de automuestra: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "No se pudo crear filtro"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- No se puede ejecutar %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Error al ejecutar %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Error: Contenido message/external no tiene parámetro acces-type --]\n"
+
+@@ -1861,7 +2116,7 @@ msgstr "[-- Error: Contenido message/external no tiene parámetro acces-type --]
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1890,7 +2145,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1904,7 +2159,7 @@ msgstr[1] "[-- Este archivo adjunto %s/%s (tamaño %s bytes) ha sido suprimido -
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1916,12 +2171,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Este archivo adjunto %s/%s ha sido suprimido --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nombre: %s --]\n"
+@@ -1929,7 +2184,7 @@ msgstr "[-- nombre: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1944,7 +2199,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1953,95 +2208,95 @@ msgstr ""
+ "[-- Este archivo adjunto %s/%s [-- Este archivo adjunto %s/%s no está incluido --]\n"
+ "[-- y el tipo de acceso indicado %s no está soportado --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- ¡Error: no se pudo mostrar ninguna parte de multipart/alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Archivo adjunto #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Archivo adjunto #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Una o más partes de este mensaje no han podido ser mostradas"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "¡Imposible abrir archivo temporal"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "¡Imposible abrir archivo temporal"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "¡Imposible abrir archivo temporal"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Error: multipart/signed no tiene protocolo"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Este archivo adjunto %s/%s (use '%s' para ver esta parte) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s no está soportado (use '%s' para ver esta parte) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Este archivo adjunto %s/%s (necesita 'view-attachments' enlazado a una tecla) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s no está soportado (necesita 'view-attachments' enlazado a una tecla) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Esto es un adjunto --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s no está soportado --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERROR: por favor reporte este fallo"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<DESCONOCIDO>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Enlaces genéricos:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funciones sin enlazar:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Ayuda para %s"
+@@ -2058,41 +2313,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr "línea de orden formateada de manera incorrecta"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: No se puede desenganchar * desde dentro de un gancho"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tipo de gancho desconocido: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: No se puede suprimir un %s desde dentro de un %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: menú desconocido"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: menú desconocido"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: menú desconocido"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "No se pudo crear el archivo temporáneo %s"
+@@ -2129,28 +2384,28 @@ msgstr "Falló la autenticación GSSAPI"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN desactivado en este servidor"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Entrando..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "El login falló"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Comprobando autenticidad (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Falló la autenticación OAUTHBEARER"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Comprobando autentidad (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Verificación de autentidad SASL falló"
+
+@@ -2197,91 +2452,81 @@ msgstr "Falló al renombrar %s"
+ msgid "Mailbox renamed"
+ msgstr "Se renombró el buzón"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Se cerro el buzón %s@%s"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Se venció la conexión a %s"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Este servidor IMAP es anticuado. No funciona con neomutt."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Falló el CREAR: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Cerrando conexión a %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "¿Iniciar conexión segura con TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "No se pudo negociar una conexión TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Conexión cifrada no disponible"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Suscribiendo a %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Anulando la inscripción a %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Inscribiéndose a %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Desuscribiendo de %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Copiando %d mensajes a %s..."
+ msgstr[1] "Copiando %d mensajes a %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "¿Crear %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ #, fuzzy
+ msgid "Expunge failed"
+ msgstr "Falló al borrar"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2289,44 +2534,44 @@ msgstr[0] "Marcando %d mensajes como suprimidos..."
+ msgstr[1] "Marcando %d mensajes como suprimidos..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Guardando indicadores de estado de mensajes... [%d/%d]"
+ msgstr[1] "Guardando indicadores de estado de mensajes... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Error al guardar las marcas. ¿Cerrar igualmente?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "¡Dirección errónea!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Eliminando mensajes del servidor..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr ""
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Seleccionando %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "¡Error al abrir el buzón!"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr ""
+
+@@ -2336,7 +2581,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "¡Sin memoria"
+
+@@ -2356,7 +2601,7 @@ msgstr "Consiguiendo cabeceras de mensajes... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "No se pueden recoger cabeceras de mensajes de esta versión de servidor IMAP"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Consiguiendo cabeceras de mensajes... [%d/%d]"
+@@ -2371,154 +2616,154 @@ msgstr "Subiendo mensaje ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copiando mensaje %d a %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Consiguiendo mensaje..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "El índice de mensajes es incorrecto. Intente reabrir el buzón."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "¿Continuar?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Salir"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Guardar"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Nuevo"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Responder"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupo"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "¿Responder a %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Ningún buzón está abierto"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "No hay nuevos mensajes"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "No hay mensajes visibles"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "El buzón es de sólo lectura"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Función no permitida en el modo de adjuntar mensaje"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "ACL no permite la función %s"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "¡No se puede cambiar a escritura un buzón de sólo lectura"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Los cambios al buzón seran escritos al salir del mismo"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Los cambios al buzón no serán escritos"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "¡%s no es un buzón"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Buzón fue modificado. Los indicadores pueden estar mal."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Correo nuevo en este buzón"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Buzón fue modificado externamente"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "No hay mensajes marcados"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "No hay qué hacer"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Ingresar la identificación del mensaje: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Al articulo no tiene referencia"
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "El mensaje anterior no es visible en vista limitada"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Eliminando mensajes del servidor..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Artículo %s no encontrado en el servidor"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Sin Message-Id. No se puede realizar la operación."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Ningún mensaje borrado se encuentra en el hilo"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Saltar a mensaje: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumento tiene que ser un número de mensaje"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Número de mensaje erróneo"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Ese mensaje no es visible"
+
+@@ -2531,37 +2776,37 @@ msgstr "Ese mensaje no es visible"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "No se han podido borrar los mensajes"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Suprimir mensajes que coincidan con: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "No hay patrón limitante activo"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Límite: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limitar a mensajes que coincidan con: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Para ver todos los mensajes, limite a \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "¿Salir de NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marcar mensajes que coincidan con: "
+
+@@ -2569,198 +2814,198 @@ msgstr "Marcar mensajes que coincidan con: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "No se puede recuperar mensajes borrados"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "No suprimir mensajes que coincidan con: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Desmarcar mensajes que coincidan con: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Se cerró la conexión a los servidores IMAP.."
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "No hubo carpeta temporaria ni identificación de mensaje, abortando"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Fallo al crear petición, abortando"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Fallo al leer el hilo, abortando"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr ""
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Sin asunto, cancelando"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Abrir buzón en modo de sólo lectura"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Abrir buzón"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Ningún buzón tiene mensajes nuevos."
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Abrir grupo de noticia en modo de sólo lectura"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Abrir grupo de noticias"
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "¿Salir de NeoMutt sin guardar?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "No se puede detener el hilo"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Hilo roto"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "El hilo no puede romperse, el mensaje no es parte de un hilo"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "No se pueden vincular los hilos"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Primeramente, marcar un mensaje para enviar un enlace aquí"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Hilos enlazados"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Ningún hilo enlazado"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Está en el último mensaje"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "No hay mensajes sin suprimir"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Está en el primer mensaje"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "El mensaje anterior no es visible en la pestaña"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "No hay mensajes nuevos"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "No hay ningún mensaje no leído en esta pestaña"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "No hay mensajes no leídos"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "La búsqueda volvió a empezar desde arriba"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "La búsqueda volvió a empezar desde abajo"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "No se pudo marcar el mensaje"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "No se puede alternar nuevo"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "No hay mas hilos"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Ya está en el primer hilo"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "El hilo contiene mensajes marcados o no leídos"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "No se puede borrar este mensaje"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "No se puede editar este mensaje"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2770,7 +3015,7 @@ msgstr[1] "Se modificaron %d etiquetas"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "No se modificó ninguna etiqueta"
+
+@@ -2778,21 +3023,21 @@ msgstr "No se modificó ninguna etiqueta"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "No se pueden marcar estos mensajes como leídos"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Entre keyID para %s: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Mensaje pospuesto."
+@@ -2800,264 +3045,124 @@ msgstr "Mensaje pospuesto."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "El mensaje se rebotó a %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "No hay mensajes en esa carpeta"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "¿Responder mediante email tal y como el autor del mensaje prefiere?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Enviar un mensaje a este grupo no está permitido, puede ser un grupo moderado. ¿Continuar?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "No se puede recuperar el mensaje borrado"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Error en línea de comando: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Error en línea de comando: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "imposible determinar nombre del usuario"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "Faltan parámetros"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Error en %s, renglón %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Error en %s, renglón %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: errores en %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "fuente: lectura se abortó por haber demasiados errores en %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "fuente: %d error en %s"
+-msgstr[1] "fuente: %d errores en %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: sin dirección"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Aviso: IDN '%s' inválido en alias '%s'"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "editar la descripción del archivo adjunto"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Ajustes de adjuntos:"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "editar la descripción del archivo adjunto"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: falta -rx o -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: aviso: IDN inválido '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "encabezado erróneo"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: variable desconocida"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s no está activada"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: errores en %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "fuente: el archivo %s no se pudo encontrar"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: no hay patrón que coincida"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "quitar marca de los mensajes que coincidan con un patrón"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr ""
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr ""
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "editar la descripción del archivo adjunto"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr ""
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: comando desconocido"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Valor no válido para la opción %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "No se puede usar la opción %s cuando estás en el modo de adjuntar mensajes"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Bucle de macros detectado"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "La tecla no tiene enlace a una función"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tecla sin enlace. Presione '%s' para obtener ayuda."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: sequencia de teclas vacía"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, fuzzy, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "No existe un motor de descifrado disponible para el mensaje"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: sequencia de teclas vacía"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ #, fuzzy
+ msgid "exec: no arguments"
+ msgstr "exec: faltan parámetros"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: función desconocida"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ #, fuzzy
+ msgid "Enter keys (^G to abort): "
+ msgstr "Entre keyID para %s: "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr ""
+@@ -3081,7 +3186,7 @@ msgstr "Entrada mailcap para tipo %s no encontrada"
+ msgid "Scanning %s..."
+ msgstr "Escaneando %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Leyendo %s..."
+@@ -3095,13 +3200,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr ""
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Escribiendo %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3124,7 +3229,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3167,54 +3272,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Error al inicializar la terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "imposible determinar nombre del usuario"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "imposible determinar el directorio del usuario"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Error: valor '%s' es inválido para -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Fallo al interpretar enlace mailto:"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "No hay destinatario"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "No se puede usar -E con la salida estándar"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "No se puedo analizar la plantilla de mensaje : %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: imposible adjuntar archivo"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Ningún buzón con correo nuevo"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Ningún buzón de entrada fue definido"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "El buzón está vacío"
+
+@@ -3256,52 +3361,52 @@ msgstr "¡Imposible reabrir buzón"
+ msgid "Can't write message"
+ msgstr "No se pudo escribir el mensaje"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Saltar a: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Número de índice inválido"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "No hay entradas"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Ya no puede bajar más"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Ya no puede subir más"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Está en la primera página"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Está en la última página"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Está en la última entrada"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Está en la primera entrada"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Buscar por: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Buscar en sentido opuesto: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "No fue encontrado"
+
+@@ -3344,20 +3449,20 @@ msgstr "Esperando bloqueo flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Formato de archivo de historial inválido (línea %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "No se pudo crear archivo temporal"
+
+@@ -3376,7 +3481,7 @@ msgstr "Modo debug a nivel %d al archivo '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Modo debug a nivel %d al archivo '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Error: convertir la ruta relativa del fichero a una ruta absoluta"
+
+@@ -3400,17 +3505,17 @@ msgstr "Recibió señal %d (%s) ... Saliendo.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Señal %d recibida... Saliendo.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "abrir /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "leer /dev/urandom: %s"
+@@ -3418,148 +3523,120 @@ msgstr "leer /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Este archivo es un directorio, ¿guardar en él? (s)í, (n)o, (t)odos"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "snt"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Archivo es un directorio, ¿guardar en él?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Archivo bajo directorio: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "El archivo existe, ¿(s)obreescribir, (a)gregar o (c)ancelar?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "sac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "No se puede guardar un mensaje en un buzón POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "¿Agregar mensajes a %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "No se pueden editar mensajes en el servidor POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nombre de usuario en %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Contraseña para %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "El comando de indagación no fue definido"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "No se pudo encontrar el nombre, ¿continuar?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "La entrada \"compose\" en el archivo Mailcap requiere %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Error al abrir el archivo para leer las cabeceras"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Error al abrir el archivo para quitar las cabeceras"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Falló el renombrar el archivo"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Falta la entrada \"compose\" de mailcap para %s, creando archivo vacío"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "La entrada \"edit\" en el archivo Mailcap requiere %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Falta la entrada \"edit\" para %s en el archivo Mailcap"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "No hay una entrada correspondiente en el archivo mailcap. Viendo como texto."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Tipo MIME no definido. No se puede mostrar el archivo adjunto."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Orden: %-20.20s Descripción: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Orden: %-30.30s Adjunto: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Adjuntos: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Adjunto: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "¡Error de escritura"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "¡No sé cómo se imprime eso"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Buscar"
+
+@@ -3568,21 +3645,21 @@ msgstr "Buscar"
+ msgid "History '%s'"
+ msgstr ""
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Valor inválido para el campo %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "No pudo encontrar fuente lua: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Correo nuevo en"
+
+@@ -3605,20 +3682,20 @@ msgstr "El mensaje anterior no es visible en vista limitada"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "El mensaje anterior no es visible en vista limitada"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Búsqueda interrumpida."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "No se puede guardar %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "Sin borrar el mensaje"
+@@ -3628,69 +3705,69 @@ msgstr[1] "Sin borrar los mensajes"
+ msgid "Can't open trash folder"
+ msgstr "No se puede abrir la carpeta de basura"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "¿Marcar todos los artículos como leídos?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "¿Mover %d mensaje leído a %s?"
+ msgstr[1] "¿Mover %d mensajes leídos a %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "¿Borrar por completo %d mensaje eliminado?"
+ msgstr[1] "¿Borrar por completo %d mensajes eliminados?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Moviendo mensajes leídos a %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Buzón sin cambios"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "quedan %d, %d movidos, %d suprimidos"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "quedan %d, %d suprimidos"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Presione '%s' para cambiar escritura"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "¡Use 'toggle-write' para activar escritura"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Buzón está marcado inescribible. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "El buzón fue marcado"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (fecha actual: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, fuzzy, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Salida de PGP a continuación (tiempo actual: %c) --]\n"
+@@ -3699,55 +3776,55 @@ msgstr "[-- Salida de PGP a continuación (tiempo actual: %c) --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Contraseña PGP olvidada"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "PGP Inline no puede ser utilizado con adjuntos. ¿Cambiar a PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Email no enviado: PGP inline no puede utilizarse con adjuntos"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "PGP Inline no puede ser utilizado con adjuntos. ¿Cambiar a PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ #, fuzzy
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Email no enviado: PGP inline no puede utilizarse con adjuntos"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Invocando PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "El mensaje no puede enviarse en modo inline. ¿Cambiar a PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Mensaje no enviado"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Los mensajes S/MIME sin pistas sobre el contenido no están soportados"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Intentando extraer las claces PGP... \n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Intentando extraer los certificados S/MIME... "
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3756,7 +3833,7 @@ msgstr ""
+ "[-- Error: ¡Protocolo multipart/signed %s desconocido --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3765,7 +3842,7 @@ msgstr ""
+ "[-- Error: ¡Estructura multipart/signed inconsistente --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3774,7 +3851,7 @@ msgstr ""
+ "[-- Advertencia: No se pudieron verificar %s/%s firmas. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ #, fuzzy
+ msgid ""
+ "[-- The following data is signed --]\n"
+@@ -3783,7 +3860,7 @@ msgstr ""
+ "[-- Los siguientes datos están firmados --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3791,7 +3868,7 @@ msgstr ""
+ "[-- Advertencia: No se pudieron encontrar firmas. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -3812,260 +3889,265 @@ msgstr "Invocando S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nombre: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Válido Desde:"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Válido Hasta:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Usos de la clave: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Usos de la clave: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Huella: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Número de serie: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Emitido por ....: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Key ID .........: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "error activando el protocolo CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "error al añadir recipiente '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "clave secreta '%s' no encontrada: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "Especificación ambigua de la clave secreta '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "error seleccionando la clave secreta '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "error al cifrar data en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as no está definido, y no hay clave por defecto especificada en ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Aviso: una de las claves ha sido revocada\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Aviso: la clave empleada para crear la firma caducó el: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Aviso: Por lo menos un certificado del servidor se ha vencido\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Aviso: la firma caducó el:"
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "No se puede verificar, debido a la ausencia de una clave o certificado\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL no está disponible.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "El CRL disponible es demasiado antigüo\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Ha ocurrido un error del sistema"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "AVISO: La entrada PKA no coincide con la dirección del firmante: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "La dirección del firmante con PKA verificada es: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "AVISO: NO hay evidencia de que la clave pertenezca a la persona indicada más arriba\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "AVISO: La clave NO PERTENECE a la persona indicada más arriba\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "AVISO: NO existe la seguridad de que la clave pertenezca a la persona indicada más arriba\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "Identificador de clave "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "creado: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Error al obtener información para el identificador de clave %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Firma válida de:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "Firma *INVÁLIDA* de:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Firma problemática de:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " caduca: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Inicio de la información de la firma --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Error: falló la verificación: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Comienzo del Comentario (firma de: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Fin del Comentario ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+ msgstr "[-- Fin de datos firmados --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- ¡Error: no se pudo cear archivo temporal! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "error en patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Error: descifrado/verificación fallida: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Se descifró el mensaje PGP con éxito"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Error: copia de datos fallida\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4073,11 +4155,11 @@ msgstr ""
+ "[-- PRINCIPIO DEL MENSAJE PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PRINCIPIO DEL BLOQUE DE CLAVES PÚBLICAS PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4085,7 +4167,7 @@ msgstr ""
+ "[-- PRINCIPIO DEL MENSAJE FIRMADO CON PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ #, fuzzy
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr ""
+@@ -4093,11 +4175,11 @@ msgstr ""
+ "[-- FIN DEL MENSAJE PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FIN DEL BLOQUE DE CLAVES PÚBLICAS PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ #, fuzzy
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr ""
+@@ -4105,7 +4187,7 @@ msgstr ""
+ "[-- FIN DEL MENSAJE FIRMADO CON PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4113,11 +4195,11 @@ msgstr ""
+ "[-- ¡Error: no se encontró el principio del mensaje PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- ¡Error: no se pudo cear archivo temporal --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4126,7 +4208,7 @@ msgstr ""
+ "[-- Lo siguiente está cifrado con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4134,30 +4216,26 @@ msgstr ""
+ "[-- Lo siguiente está cifrado con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin de datos cifrados con PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ #, fuzzy
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin de datos cifrados con PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Se descifró el mensaje PGP con éxito"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "No se pudo descifrar el mensaje PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+@@ -4166,7 +4244,7 @@ msgstr ""
+ "[-- Los siguientes datos están firmados --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+@@ -4175,40 +4253,40 @@ msgstr ""
+ "[-- Lo siguiente está cifrado con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin de datos firmados --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin de datos cifrados con S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[No se puede mostrar este identificador de usuario (codificación desconocida)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[No se puede mostrar este identificador de usuario (codificación inválida)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[No se puede mostrar este identificador de usuario (DN inválido)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Inválido]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4216,99 +4294,99 @@ msgstr[0] "Tipo de clave ..: %s, %lu bit %s\n"
+ msgstr[1] "Tipo de clave ..: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Cifrar"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "firmando"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "El certificado fue guardado"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revocada]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "Vencido"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Disactivada]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Recopilando datos..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Error al conectar al servidor: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Error: la cadena de certificación es demasiada larga - deteniendo ahora\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start falló: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next falló: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Todas las llaves que coinciden están marcadas expiradas/revocadas"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Seleccionar "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Verificar clave "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Las llaves PGP y S/MIME coinciden"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "Claves PGP que coinciden con \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "Claves S/MIME que coinciden con \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "Claves PGP que coinciden con \"%s\"."
+@@ -4317,55 +4395,55 @@ msgstr "Claves PGP que coinciden con \"%s\"."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, fuzzy, c-format
+ msgid "%s <%s>"
+ msgstr "%s [%s]\n"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, fuzzy, c-format
+ msgid "%s \"%s\""
+ msgstr "%s [%s]\n"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Esta clave no se puede usar: expirada/desactivada/revocada"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Esta clave está vencida/desactivada/revocada. ¿Estás seguro(a) que la quieres usar?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Esta ID no es confiable. ¿Estás seguro(a) que quieres utilizar la llave?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Esta ID es apenas confiable. ¿Estás seguro(a) que quieres utilizar la llave?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "No se sabe si el ID es válido ¿Estás seguro(a) que quieres usar la llave?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Buscando claves que coincidan con \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "¿Usar keyID = \"%s\" para %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Entre keyID para %s: "
+@@ -4374,16 +4452,16 @@ msgstr "Entre keyID para %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "clave secreta '%s' no encontrada: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Por favor entre la identificación de la clave: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "error en patrón en: %s"
+@@ -4391,93 +4469,93 @@ msgstr "error en patrón en: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Clave PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: protocolo OpenPGP no disponible"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: protocolo CMS no disponible"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME ¿(f)irmar, firmar (c)omo, (p)gp, ca(n)celar o (m)odo oppenc off?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "fcpnm"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP ¿(f)irmar, firmar (c)omo, s/m(i)me, ca(n)celar o (m)odo oppenc off?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "fcinm"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, (p)gp, ca(n)celar o (m)odo oppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "efcopnm"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, s/m(i)me, ca(n)celar o (m)odo oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "efcoinm"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, (p)gp o ca(n)celar?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "efcopn"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, s/m(i)me o ca(n)celar?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "efcoin"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Fallo al verificar el remitente"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Error al abrir el archivo para leer las cabeceras."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Entre contraseña PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- ¡Error: imposible crear subproceso PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4488,15 +4566,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "El mensaje PGP no está cifrado"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Error interno. Por favor, envíe un informe del fallo."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4504,126 +4582,126 @@ msgstr ""
+ "[-- ¡Error: imposible crear subproceso PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Falló al descifrar"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "¡No se pudo abrir subproceso PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "No se pudo invocar PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "en l(i)nea"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP ¿(f)irmar, firmar (c)omo, formato %s, ca(n)celar o (m)odo oppenc off?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "fcinm"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP ¿(f)irmar, firmar (c)omo, ca(n)celar o (m)odo oppenc off?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "fcnm"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, formato %s, ca(n)celar o (m)odo oppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "efcoinm"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, ca(n)celar o (m)odo oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "efconm"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s, formato %s o ca(n)celar?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "efcoin"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP ¿(e)ncriptar, (f)irmar, firmar (c)omo, amb(o)s o ca(n)celar?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "efcon"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Recogiendo clave PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ #, fuzzy
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Todas las llaves que coinciden están marcadas expiradas/revocadas"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Claves PGP que coinciden con <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Claves PGP que coinciden con \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "No se pudo abrir /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Clave PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ #, fuzzy
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Entre contraseña S/MIME:"
+@@ -4633,7 +4711,7 @@ msgstr "Entre contraseña S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Vencido"
+
+@@ -4642,7 +4720,7 @@ msgstr "Vencido"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ #, fuzzy
+ msgid "Invalid "
+ msgstr "Mes inválido: %s"
+@@ -4652,7 +4730,7 @@ msgstr "Mes inválido: %s"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr ""
+
+@@ -4661,7 +4739,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Confiable"
+
+@@ -4670,7 +4748,7 @@ msgstr "Confiable"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr ""
+
+@@ -4679,7 +4757,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr ""
+
+@@ -4688,65 +4766,65 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Desconocido "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, fuzzy, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Claves S/MIME que coinciden con \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Esta ID no es de confianza. ¿Realmente quiere utilizar la llave?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ #, fuzzy
+ msgid "Enter keyID: "
+ msgstr "Entre keyID para %s: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "No se ha encontrado ningún certificado (válido) para %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ #, fuzzy
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "[-- ¡Error: imposible crear subproceso OpenSSL --]\n"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Imposible recoger el certificado de la contraparte"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ #, fuzzy
+ msgid "no certfile"
+ msgstr "No se pudo crear el filtro"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ #, fuzzy
+ msgid "no mbox"
+ msgstr "(ningún buzón)"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Sin respuesta de OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "No se puede firmar: NO se ha especificado una clave. Utilice \"Firmar Como\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ #, fuzzy
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "¡No se pudo abrir subproceso OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ #, fuzzy
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+@@ -4755,26 +4833,26 @@ msgstr ""
+ "[-- Fin de salida OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ #, fuzzy
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- ¡Error: imposible crear subproceso OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ #, fuzzy
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- Lo siguiente está cifrado con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ #, fuzzy
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- Los siguientes datos están firmados --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4783,7 +4861,7 @@ msgstr ""
+ "\n"
+ "[-- Fin de datos cifrados con S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4793,162 +4871,162 @@ msgstr ""
+ "[-- Fin de datos firmados --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME ¿(f)irmar, enc(r)iptar con, firmar (c)omo, ca(n)celar o (m)odo oppenc off?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "frcnm"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME ¿(e)ncriptar, (f)irmar, enc(r)iptar con, firmar (c)omo, amb(o)s, ca(n)celar o (m)odo oppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "efrconm"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME ¿(e)ncriptar, (f)irmar, enc(r)iptar con, firmar (c)omo, amb(o)s o ca(n)celar?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "efrcon"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Cargando lista de grupos desde la cahé..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "¡NO hay servidor de noticias definido!"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "¡%s es una especificación de servidor de noticias inválida"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "¡El servidor cerró la conneción"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "El servidor no soporta modo lectura"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Falta un método de verificación de autentidad"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Verificación de autentidad SASL falló"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Se perdió la conexión a %s. Quieres intentar a inciarla de nuevo?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Consiguiendo la lista de mensajes..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Revisando si hay mensajes nuevos..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "no se pudo escribir la carpeta temporal: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Conectando a %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Está permitido hacer comentarios"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Está prohibido hacer comentarios"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "No se pudo publicar el artículo: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Descargando la lista de grupos desde el servidor %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Cargando las descripciones..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Revisando si hay nuevos grupos de noticia..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "No se pudo encontrar artículos relacionados porque el servidor no soporta la función XPAT"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "¡%s es un parámetro de grupo de noticias inválida!"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "El grupo de noticias %s no se encuentra en el servidor"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "El grupo de noticias %s se ha eliminado del servidor"
+@@ -4960,8 +5038,8 @@ msgstr "fallo al interpretar tipo de petición notmuch: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "fallo al interpretar uri nontmuch: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "fallo al interpretar url nontmuch: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -6113,189 +6191,189 @@ msgstr "hacer la barra lateral (in)visible"
+ msgid "show S/MIME options"
+ msgstr "mostrar opciones S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "No disponible en este menú"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PágAnt"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "PróxPág"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Adjuntos"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Sig."
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "El final del mensaje está siendo mostrado"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "El principio del mensaje está siendo mostrado"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "La ayuda está siendo mostrada"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "No hay mas texto citado"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "No hay mas texto sin citar bajo el texto citado"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Error en expresión: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "error en expresión"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "El comando de indagación no fue definido"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Invocando comando de automuestra: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Día inválido del mes: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mes inválido: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Fecha relativa incorrecta: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "No hay mensajes sin leer"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "¡Error al escribir el buzón!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "¡Error al escribir el buzón!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "No se pudo abrir /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "error en patrón en: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "falta un parámetro"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "paréntesis sin contraparte: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: comando inválido"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: no soportado en este modo"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "falta un parámetro"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "patrón vacío"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "error: op %d desconocida (reporte este error)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compilando patrón de búsqueda..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Ejecutando comando en mensajes que coinciden..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ningún mensaje responde al criterio dado"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Guardando..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "La búsqueda llegó al final sin encontrar nada."
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "La búsqueda llegó al principio sin encontrar nada."
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Búsqueda interrumpida"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "La órden TOP no es soportada por el servidor"
+
+@@ -6303,7 +6381,7 @@ msgstr "La órden TOP no es soportada por el servidor"
+ msgid "Can't write header to temporary file"
+ msgstr "¡No se pudo escribir la cabecera al archivo temporal"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "La órden UIDL no es soportada por el servidor"
+
+@@ -6318,7 +6396,7 @@ msgstr[1] "El índice de mensajes es incorrecto. Intente reabrir el buzón."
+ msgid "POP host is not defined"
+ msgstr "El servidor POP no fue definido"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s es una ruta POP inválida"
+@@ -6351,157 +6429,157 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d de %d mensajes leídos]"
+ msgstr[1] "%s [%d de %d mensajes leídos]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Consiguiendo la lista de mensajes..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Marcando %d mensajes como suprimidos..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "¡No se pudo escribir el mensaje al archivo temporal"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Verificando autentidad (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "¡Marca de tiempo POP inválida"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Verificando autentidad (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Verificación de autentidad APOP falló"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "La órden USER no es soportada por el servidor"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Verificación de autentidad SASL falló"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Mes inválido: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "No es posible dejar los mensajes en el servidor"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Error al conectar al servidor: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Cerrando conexión al servidor POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verificando índice de mensajes..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Conexión perdida. ¿Reconectar al servidor POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Mensajes pospuestos"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "No hay mensajes pospuestos"
+
+-#: postpone.c:480
++#: postpone.c:526
+ #, fuzzy
+ msgid "Illegal S/MIME header"
+ msgstr "Cabecera S/MIME illegal"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Cabecera PGP illegal"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Consiguiendo mensaje..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nueva indagación"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Producir nombre corto"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Esperando respuesta..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Indagar: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Indagar '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "El comando de indagación no fue definido"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Redirigir"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Imprimir"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Guardando..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Archivo adjunto guardado"
+ msgstr[1] "Archivo adjunto guardado"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "¡Atención! Está a punto de sobreescribir %s, ¿continuar?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Archivo adjunto filtrado"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrar a través de: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Redirigir a: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "¡No sé cómo imprimir archivos adjuntos %s"
+@@ -6509,58 +6587,58 @@ msgstr "¡No sé cómo imprimir archivos adjuntos %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "¿Imprimir archivo(s) adjunto(s) marcado(s)?"
+ msgstr[1] "¿Imprimir archivo(s) adjunto(s) marcado(s)?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "¿Imprimir archivo adjunto?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "No se puede decifrar un mensaje encriptado"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Archivos adjuntos"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "¡No hay subpartes para mostrar"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "No se puede suprimir un archivo adjunto del servidor POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "No se puede suprimir un archivo adjunto del servidor POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ #, fuzzy
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Suprimir archivos adjuntos de mensajes PGP no es soportado"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Suprimir archivos adjuntos de mensajes PGP no es soportado"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Suprimir sólo es soportado con archivos adjuntos tipo multiparte"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Solo puede rebotar partes tipo message/rfc822"
+
+@@ -6597,7 +6675,7 @@ msgstr "No se pudo crear %s"
+ msgid "Can't find any tagged messages"
+ msgstr "No fue encontrado ningún mensaje marcado"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "¡Ninguna lista de correo encontrada"
+
+@@ -6612,67 +6690,67 @@ msgstr "No se pudieron decodificar todos los archivos adjuntos marcados. ¿Enca
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Solo puede rebotar partes tipo message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Adjuntar"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Insertar"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Aceptar"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "¡No se pudo obtener el type2.list del mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Seleccionar una cadena de remailers"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Error: %s no puede ser usado como remailer final de una cadena"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Las cadenas mixmaster están limitadas a %d elementos"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "La cadena de remailers ya está vacía"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Ya tiene el primer elemento de la cadena seleccionado"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Ya tiene el último elemento de la cadena seleccionado"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster no acepta cabeceras Cc or Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "¡Por favor ajuste la variable hostname a un valor correcto si usa mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Error al enviar mensaje, proceso hijo terminó %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Error al enviar el mensaje"
+
+@@ -6703,42 +6781,42 @@ msgstr "¿Reenviar como archivos adjuntos?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "¿Responder a %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "¿Responder a %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "¿Incluir mensaje en respuesta?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Incluyendo mensaje citado..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "¡No se pudieron incluir todos los mensajes pedidos"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "¿Reenviar como archivo adjunto?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Preparando mensaje reenviado..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: no soportado en este modo"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "mostrar archivos adjuntos como texto"
+@@ -6747,197 +6825,197 @@ msgstr "mostrar archivos adjuntos como texto"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "No hay buzón.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "¿Continuar mensaje pospuesto?"
+
+-#: send.c:2228
++#: send.c:2239
+ #, fuzzy
+ msgid "Edit forwarded message?"
+ msgstr "Preparando mensaje reenviado..."
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "¿Cancelar mensaje sin cambios?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Mensaje sin cambios cancelado"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Mensaje no enviado"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Mensaje pospuesto"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Falta el asunto, ¿cancelar envío?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Asunto no fue especificado"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Asunto no fue especificado"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "editar la codificación del archivo adjunto"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "El mensaje contiene texto que coincide con \"$abort_noattach_regex\". No se envía."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Enviando mensaje..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "No se pudo enviar el mensaje"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Enviando en un proceso en segundo plano"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Artículo enviado"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mensaje enviado"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "El parámetro límite no fue encontrado. [reporte este error]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "¡%s ya no existe"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, fuzzy, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s no es un buzón"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "No se pudo enviar el mensaje."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "No se pudo abrir %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail debe ser definido para mandar emails"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Error al enviar mensaje, proceso hijo terminó %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Salida del proceso de repartición de correo"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "IDN %s inválido mientras se preparaba resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "CLOSE falló"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "CLOSE falló"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Mes inválido: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Autenticación %s falló, usando el método siguiente"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Verificación de autentidad GSSAPI falló"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "El servidor SMTP no soporta autentificación"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Sesión SMTP fallida: error de lectura"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Sesión SMTP fallida: error de escritura"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Respuesta del servidor inválida"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Ordenando buzón..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "¡No se pudo encontrar la función para ordenar [reporte este fallo]"
+
+@@ -6989,11 +7067,11 @@ msgstr ""
+ "teclee 'neomutt -vv'. NeoMutt es software libre, puede redistribuirlo\n"
+ "bajo ciertas condiciones; teclee 'neomutt -vv' para más detalles.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opciones especificadas al compilar:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opciones especificadas al compilar:"
+diff --git a/po/et.po b/po/et.po
+index bd73cc1b7..03b11b45b 100644
+--- a/po/et.po
++++ b/po/et.po
+@@ -9,7 +9,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2002-12-09 17:19+02:00\n"
+ "Last-Translator: Toomas Soome <tsoome@muhv.pri.ee>\n"
+ "Language-Team: Estonian <et@li.org>\n"
+@@ -19,16 +19,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(k)eeldu, (n)õustu korra, nõustu (a)alati"
++
++#, fuzzy
++msgid "roas"
++msgstr "kna"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(k)eeldu, (n)õustu korra, nõustu (a)alati"
++
++msgid "roa"
++msgstr "kna"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(k)eeldu, (n)õustu korra"
++
++#, fuzzy
++msgid "ros"
++msgstr "kn"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(k)eeldu, (n)õustu korra"
++
++msgid "ro"
++msgstr "kn"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Välju"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Kustuta"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Taasta"
+
+@@ -36,18 +64,18 @@ msgstr "Taasta"
+ msgid "Select"
+ msgstr "Vali"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Appi"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Tei pole hüüdnimesid"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Hüüdnimed"
+
+@@ -56,53 +84,53 @@ msgstr "Hüüdnimed"
+ msgid "Alias as: "
+ msgstr "Hüüdnimeks: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Teil on juba selle nimeline hüüdnimi"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Hoiatus: See hüüdnimi ei pruugi toimida. Parandan?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Aadress: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr ""
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Isiku nimi: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Nõus?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Salvestan faili: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Viga faili vaatamisel"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Viga faili vaatamisel"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Hüüdnimi on lisatud"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Viga faili vaatamisel"
+@@ -112,7 +140,7 @@ msgstr "Viga faili vaatamisel"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s ei ole. Loon selle?"
+@@ -121,8 +149,8 @@ msgstr "%s ei ole. Loon selle?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "%s ei saa luua: %s"
+@@ -132,7 +160,7 @@ msgstr "%s ei saa luua: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -141,7 +169,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -150,7 +178,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -159,7 +187,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -171,7 +199,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Krüpti"
+@@ -179,7 +207,7 @@ msgstr "Krüpti"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -187,7 +215,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -196,7 +224,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "%s jaoks puudub kehtiv sertifikaat"
+@@ -208,12 +236,12 @@ msgstr "%s jaoks puudub kehtiv sertifikaat"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Postkasti pole.\n"
+@@ -225,14 +253,14 @@ msgstr "Postkasti pole.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Loon %s?"
+@@ -240,7 +268,7 @@ msgstr "Loon %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Kustuta"
+
+@@ -248,9 +276,9 @@ msgstr "Kustuta"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -258,17 +286,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -277,7 +305,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -285,7 +313,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -293,12 +321,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -306,13 +334,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Viga kataloogi skaneerimisel"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Kas tõesti kustutada postkast \"%s\"?"
+@@ -330,7 +358,7 @@ msgstr "Kas tõesti kustutada postkast \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Postkasti ei saa lukustada!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "viga mustris: %s"
+@@ -403,336 +431,287 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s ei ole kataloog"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Chdir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Mask"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Tellin %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Loobun kaustast %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s ei ole kataloog"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Tellin %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Postkastid [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Tellitud [%s], faili mask: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Kataloog [%s], failimask: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Kataloogi ei saa lisada"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Maskile vastavaid faile ei ole"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Luua saab ainult IMAP postkaste"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Luua saab ainult IMAP postkaste"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Kustutada saab ainult IMAP postkaste"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "näita praegu valitud faili nime"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Kas tõesti kustutada postkast \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Postkast on kustutatud"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Postkast on kustutatud"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Postkasti ei kustutatud"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Mine kataloogi: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Viga kataloogi skaneerimisel"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Failimask: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Järjestan tagurpidi (k)uup., (t)ähest., (s)uuruse järgi või (e)i järjesta?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Järjestan (k)uup., (t)ähest., (s)uuruse järgi või (e)i järjesta?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Uus failinimi: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Kataloogi ei saa vaadata"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Viga faili vaatamisel"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Tellin %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Loobun kaustast %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Maskile vastavaid faile ei ole"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: terminal ei toeta värve"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s. sellist värvi ei ole"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: sellist objekti ei ole"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: liiga vähe argumente"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s. sellist atribuuti pole"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: liiga palju argumente"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "vaikimisi värve ei toetata"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: vigane teate number.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Kontrollin allkirja?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Ei õnnestu luua ajutist faili"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Filtri loomine ebaõnnestus"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Teadet ei õnnestu kopeerida."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME allkiri on edukalt kontrollitud"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME sertifikaadi omanik ei ole kirja saatja"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME allkirja EI ÕNNESTU kontrollida"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP allkiri on edukalt kontrollitud"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP allkirja EI ÕNNESTU kontrollida"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Viga \"%s\" käivitamisel"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Käsklus: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Peegelda teade aadressile: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Peegelda märgitud teated aadressile: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Viga aadressi analüüsimisel"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Peegelda teade aadressile %s?"
+ msgstr[1] "Peegelda teated aadressile %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Teade on peegeldatud"
+ msgstr[1] "Teated on peegeldatud"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Teade on peegeldatud"
+ msgstr[1] "Teated on peegeldatud"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Filterprotsessi loomine ebaõnnestus"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Toruga käsule: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Trükkimise käsklust ei ole defineeritud"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Trükin teate?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Trükin märgitud teated?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Teade on trükitud"
+ msgstr[1] "Teated on trükitud"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -740,165 +719,334 @@ msgstr[0] "Teadet ei saa trükkida"
+ msgstr[1] "Teateid ei saa trükkida"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzc"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Käsurea käsk: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Dekodeeri-salvesta postkasti"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekodeeri-salvesta märgitud postkasti"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dekrüpti-salvesta postkasti"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dekrüpti-salvesta märgitud postkasti"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Salvesta postkasti"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Salvesta märgitud postkasti"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekodeeri-kopeeri postkasti"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekodeeri-kopeeri märgitud postkasti"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dekrüpti-kopeeri postkasti"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dekrüpti-kopeeri märgitud postkasti"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Kopeeri postkasti"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopeeri märgitud postkasti"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopeerin kausta %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Sisu tüübiks on nüüd %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Teisendan saatmisel kooditabelisse %s?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Sisu tüübiks on nüüd %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Kooditabeliks on nüüd %s; ei teisenda"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Kooditabeliks on nüüd %s; teisendan"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: liiga vähe argumente"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "liiga vähe argumente"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Viga failis %s, real %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Viga failis %s, real %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: vead failis %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: lugemine katkestati, kuna %s on liialt vigane"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: vead failis %s"
++msgstr[1] "source: vead failis %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: aadress puudub"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr ""
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "toimeta lisa kirjeldust"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "toimeta lisa kirjeldust"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "toimeta lisa kirjeldust"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: liiga palju argumente"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr ""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "vigane päiseväli"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: tundmatu muutuja"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s ei ole seatud"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: viga kohal %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Teateid ei saa trükkida"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "märgi mustrile vastavad teated"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "eemalda märk mustrile vastavatelt teadetelt"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "Tellin %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Tellin %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Teema puudub."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "toimeta lisa kirjeldust"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Loobun kaustast %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Loobun kaustast %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Lisasid ei ole"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Vasta"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -909,78 +1057,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Allkirjasta kui: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Vastus aadressile %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "toimeta Reply-To välja"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Saada"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Katkesta"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Lisa fail"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Kirjeldus"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Teema puudub."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -988,7 +1136,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -996,14 +1144,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "jah"
+@@ -1014,7 +1162,7 @@ msgstr "jah"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1022,53 +1170,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Märkimist ei toetata."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Allkirjasta, krüpti"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Krüpti"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Allkirjasta"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(jätka)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<vaikimisi>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Krüpti kasutades: "
+
+@@ -1077,12 +1225,12 @@ msgstr "Krüpti kasutades: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "toimeta Reply-To välja"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1093,7 +1241,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] ei eksisteeri"
+@@ -1105,240 +1253,360 @@ msgstr "%s [#%d] ei eksisteeri"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] muudeti. Uuendan kodeerimist?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Lisad"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Ainukest lisa ei saa kustutada"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr ""
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Lisa on salvestatud"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Käesolevat lisa ei teisendata"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Lisa on filtreeritud"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Viga teate saatmisel"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Lisan valitud failid..."
+ msgstr[1] "Lisan valitud failid..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s ei õnnestu lisada"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Avage postkast, millest lisada teade"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Avage postkast, millest lisada teade"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Postkasti ei saa lukustada!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Selles kaustas ei ole teateid"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Märkige teada, mida soovite lisada"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Ei õnnestu lisada"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Ümberkodeerimine puudutab ainult tekstilisasid"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Käesolevat lisa ei teisendata"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Käesolev lisa teisendatakse"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Vigane kodeering"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Salvestan sellest teatest koopia?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "vaata lisa tekstina"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Uus nimi: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Ei saa lugeda %s atribuute: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Uus fail: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type on kujul baas/alam"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Tundmatu Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Faili %s ei saa luua"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "See mis siin nüüd on, on viga lisa loomisel"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Laen postitusootel teate?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Kirjuta teade postkasti"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Kirjutan teate faili %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Teade on kirjutatud"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME on juba valitud. Puhasta ja jätka?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP on juba valitud. Puhasta ja jätka?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Postkasti ei saa lukustada"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Preconnect käsklus ebaõnnestus"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Kopeerin kausta %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Kopeerin kausta %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Viga. Säilitan ajutise faili: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Vigane suhteline kuupäev: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Vigane suhteline kuupäev: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: vigane teate number.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Vigane kuupäev: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Vigane kuu: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funktsioon ei ole teate lisamise moodis lubatud."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: vigane teate number.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: vigane teate number.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Vigane suhteline kuupäev: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Vigane kuupäev: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr ""
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: tundmatu muutuja"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Vigane suhteline kuupäev: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Vigane suhteline kuupäev: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Kasutajanimi serveril %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s parool: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Päringukäsku ei ole defineeritud"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1359,7 +1627,7 @@ msgstr "Ühendus serverisse %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Serveriga %s ei õnnestu ühendust luua (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "tundmatu viga"
+
+@@ -1373,24 +1641,24 @@ msgstr "Viga serveriga %s suhtlemisel (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Ühendus serveriga %s suleti"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "viga mustris: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1403,138 +1671,112 @@ msgstr "Preconnect käsklus ebaõnnestus"
+ msgid "Connection to %s closed"
+ msgstr "Ühendus serveriga %s suleti"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Kogun entroopiat: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s omab ebaturvalisi õigusi"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Entroopia nappuse tõttu on SSL kasutamine blokeeritud"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Tundmatu"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[arvutamine ei õnnestu]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[vigane kuupäev]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Serveri sertifikaat ei ole veel kehtiv"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Serveri sertifikaat on aegunud"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Teie süsteemis ei ole piisavalt entroopiat"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Ei õnnestu saada partneri sertifikaati"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Ei õnnestu saada partneri sertifikaati"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "S/MIME sertifikaadi omanik ei ole kirja saatja."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Selle serveri omanik on:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Selle sertifikaadi väljastas:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "See sertifikaat on kehtiv"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " alates %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " kuni %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Sõrmejälg: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Sõrmejälg: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(k)eeldu, (n)õustu korra, nõustu (a)alati"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(k)eeldu, (n)õustu korra, nõustu (a)alati"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(k)eeldu, (n)õustu korra"
++msgid "SHA256 Fingerprint: "
++msgstr "Sõrmejälg: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(k)eeldu, (n)õustu korra"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Välju "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Hoiatus: Sertifikaati ei saa salvestada"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sertifikaat on salvestatud"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sertifikaat on salvestatud"
+@@ -1542,15 +1784,15 @@ msgstr "Sertifikaat on salvestatud"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "S/V viga"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL ebaõnnestus: %s"
+@@ -1558,96 +1800,80 @@ msgstr "SSL ebaõnnestus: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Viga: ei õnnestu luua OpenSSL alamprotsessi!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Ei õnnestu saada partneri sertifikaati"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "Sertifikaat on salvestatud"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Viga terminali initsialiseerimisel."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Serveri sertifikaat ei ole veel kehtiv"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Serveri sertifikaat on aegunud"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Serveri sertifikaat on aegunud"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Serveri sertifikaat ei ole veel kehtiv"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "kna"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "kn"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL ühendus kasutades %s (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1666,38 +1892,18 @@ msgstr "Viga serveriga %s suhtlemisel (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "jah"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ei"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Väljuda NeoMuttist?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Jätkamiseks vajutage klahvi..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' annab loendi): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1729,7 +1935,7 @@ msgstr ""
+ "~? see teade\n"
+ ". üksinda real lõpetab sisendi\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1761,20 +1967,20 @@ msgstr ""
+ "~? see teade\n"
+ ". üksinda real lõpetab sisendi\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: vigane teate number.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Teate lõpetab rida, milles on ainult .)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Postkasti pole.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Teade sisaldab:\n"
+
+@@ -1782,19 +1988,19 @@ msgstr "Teade sisaldab:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(jätka)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "failinimi puudub.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Teates pole ridu.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: tundmatu toimeti käsk (~? annab abiinfot)\n"
+@@ -1841,19 +2047,73 @@ msgstr "Kausta ei saa lisada: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "mitmeosalisel teatel puudub eraldaja"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Teemad ei ole lubatud"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Sea lipp"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Eemalda lipp"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: terminal ei toeta värve"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s. sellist värvi ei ole"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: sellist objekti ei ole"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s. sellist atribuuti pole"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "vaikimisi värve ei toetata"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: vigane teate number.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "jah"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ei"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Väljuda NeoMuttist?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Jätkamiseks vajutage klahvi..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' annab loendi): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1874,23 +2134,23 @@ msgstr "[-- Autovaade kasutades %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Käivitan autovaate käskluse: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Ei õnnestu luua filtrit"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- %s ei saa käivitada.--]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Autovaate %s stderr --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Viga: message/external-body juurdepääsu parameeter puudub --]\n"
+
+@@ -1909,7 +2169,7 @@ msgstr "[-- Viga: message/external-body juurdepääsu parameeter puudub --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1938,7 +2198,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1952,7 +2212,7 @@ msgstr[1] "[-- See %s/%s lisa (maht %s baiti) on kustutatud --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1964,12 +2224,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- See %s/%s lisa on kustutatud --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nimi: %s --]\n"
+@@ -1977,7 +2237,7 @@ msgstr "[-- nimi: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1992,7 +2252,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2001,95 +2261,95 @@ msgstr ""
+ "[-- Seda %s/%s lisa ei ole kaasatud, --]\n"
+ "[-- ja näidatud juurdepääsu tüüpi %s ei toetata --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Viga: Multipart/Alternative osasid ei saa näidata --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Lisa #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Lisa #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Ajutise faili avamine ebaõnnestus"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Ajutise faili avamine ebaõnnestus"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Ajutise faili avamine ebaõnnestus"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Viga: multipart/signed teatel puudub protokoll"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- See %s/%s lisa (selle osa vaatamiseks kasutage '%s') --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s ei toetata (selle osa vaatamiseks kasutage '%s') --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- See %s/%s lisa ('view-attachments' peab olema klahviga seotud) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s ei toetata ('view-attachments' peab olema klahviga seotud) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- See %s/%s lisa --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s ei toetata --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "VIGA: Palun teatage sellest veast"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<TUNDMATU>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Üldised seosed:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Sidumata funktsioonid:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s abiinfo"
+@@ -2106,41 +2366,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: seose sees ei saa unhook * kasutada"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tundmatu seose tüüp: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s ei saa %s seest kustutada"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: sellist menüüd ei ole"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: sellist menüüd ei ole"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: sellist menüüd ei ole"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Ajutise faili %s loomine ebaõnnestus"
+@@ -2178,30 +2438,30 @@ msgstr "GSSAPI autentimine ebaõnnestus"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN on sellel serveril blokeeritud"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Meldin..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Meldimine ebaõnnestus"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autentimine (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER autentimine ebaõnnestus"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, fuzzy, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autentimine (APOP)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL autentimine ebaõnnestus"
+
+@@ -2250,90 +2510,80 @@ msgstr "SSL ebaõnnestus: %s"
+ msgid "Mailbox renamed"
+ msgstr "Postkast on loodud"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Postkast on suletud"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Ühendus serveriga %s suleti"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "See IMAP server on iganenud. NeoMutt ei tööta sellega."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL ebaõnnestus: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Sulen ühendust serveriga %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Turvan ühenduse TLS protokolliga?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "TLS ühendust ei õnnestu kokku leppida"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr ""
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Tellin %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Loobun kaustast %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "Tellin %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Loobun kaustast %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopeerin %d teadet kausta %s..."
+ msgstr[1] "Kopeerin %d teadet kausta %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Loon %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Kustutamine ebaõnnestus."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2341,44 +2591,44 @@ msgstr[0] "märgin %d teadet kustutatuks..."
+ msgstr[1] "märgin %d teadet kustutatuks..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Salvestan teadete olekud... [%d/%d]"
+ msgstr[1] "Salvestan teadete olekud... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Viga aadressi analüüsimisel!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Kustutan serveril teateid..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE ebaõnnestus"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Valin %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Viga postkasti avamisel!"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Vigane "
+@@ -2389,7 +2639,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Mälu on otsas"
+
+@@ -2410,7 +2660,7 @@ msgstr "Laen teadete päiseid... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Sellest IMAP serverist ei saa päiseid laadida"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Laen teadete päiseid... [%d/%d]"
+@@ -2425,157 +2675,157 @@ msgstr "Saadan teadet ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopeerin teadet %d kausta %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Laen teadet..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Teadete indeks on vigane. Proovige postkasti uuesti avada."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Jätkan?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Välju"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Salvesta"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Kiri"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Vasta"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupp"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Vastus aadressile %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Avatud postkaste pole"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Teateid ei ole"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Nähtavaid teateid pole"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Postkast on ainult lugemiseks"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funktsioon ei ole teate lisamise moodis lubatud"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Ainult lugemiseks postkastil ei saa kirjutamist lülitada"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Muudatused kaustas salvestatakse kaustast väljumisel"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Muudatusi kaustas ei kirjutata"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s ei ole postkast"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Postkasti on väliselt muudetud. Lipud võivad olla valed."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Selles postkastis on uus kiri"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Postkasti on väliselt muudetud"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Märgitud teateid pole"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ #, fuzzy
+ msgid "Nothing to do"
+ msgstr "Ühendus serverisse %s.."
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Sisestage võtme ID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Vanem teade ei ole selles piiratud vaates nähtav"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Kustutan serveril teateid..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "kustuta kõik teated teemas"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Hüppa teatele: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argument peab olema teate number"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Vigane teate number"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "See teate ei ole nähtav"
+
+@@ -2588,38 +2838,38 @@ msgstr "See teate ei ole nähtav"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Kustutamata teateid pole."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Kustuta teated mustriga: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Kehtivat piirangumustrit ei ole"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Piirang: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Piirdu teadetega mustriga: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Väljun NeoMuttist?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Märgi teated mustriga: "
+
+@@ -2627,213 +2877,213 @@ msgstr "Märgi teated mustriga: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Kustutamata teateid pole."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Taasta teated mustriga: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Võta märk teadetelt mustriga: "
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "Sulen ühenduse IMAP serveriga.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Teema puudub, katkestan"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Teema puudub, katkestan"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Teema puudub, katkestan"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Avan postkasti ainult lugemiseks"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Avan postkasti"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Uute teadetega postkaste ei ole."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Avan postkasti ainult lugemiseks"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Väljun NeoMuttist salvestamata?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Filtri loomine ebaõnnestus"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "salvesta teade hilisemaks saatmiseks"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Te olete viimasel teatel"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Kustutamata teateid pole"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Te olete esimesel teatel"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Vanem teade ei ole selles piiratud vaates nähtav"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Uusi teateid pole"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Vanem teade ei ole selles piiratud vaates nähtav"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Lugemata teateid pole"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Otsing pööras algusest tagasi"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Otsing pööras lõpust tagasi"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "näita teadet"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Rohkem teemasid pole"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Te olete esimesel teemal"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Teema sisaldab lugemata teateid"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Kustutamata teateid pole."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Teadet ei õnnestu kirjutada"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2843,7 +3093,7 @@ msgstr[1] "Postkasti ei muudetud"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Postkasti ei muudetud"
+@@ -2852,7 +3102,7 @@ msgstr "Postkasti ei muudetud"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "hüppa teema vanemteatele"
+@@ -2860,14 +3110,14 @@ msgstr "hüppa teema vanemteatele"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Sisestage võtme ID: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Teade jäeti postitusootele."
+@@ -2875,267 +3125,124 @@ msgstr "Teade jäeti postitusootele."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Teade on peegeldatud"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Selles kaustas ei ole teateid"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Kustutamata teateid pole."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Viga käsureal: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Viga käsureal: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "ei suuda tuvastada kasutajanime"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "liiga vähe argumente"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Viga failis %s, real %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Viga failis %s, real %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: vead failis %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: lugemine katkestati, kuna %s on liialt vigane"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: vead failis %s"
+-msgstr[1] "source: vead failis %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: aadress puudub"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr ""
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "toimeta lisa kirjeldust"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "toimeta lisa kirjeldust"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "toimeta lisa kirjeldust"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr ""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "vigane päiseväli"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: tundmatu muutuja"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s ei ole seatud"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: viga kohal %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Teateid ei saa trükkida"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "märgi mustrile vastavad teated"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "eemalda märk mustrile vastavatelt teadetelt"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Tellin %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Teema puudub."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "toimeta lisa kirjeldust"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Loobun kaustast %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: tundmatu käsk"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Vigane kuupäev: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funktsioon ei ole teate lisamise moodis lubatud."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Tuvastasin makros tsükli"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klahv ei ole seotud"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klahv ei ole seotud. Abiinfo saamiseks vajutage '%s'."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: tühi klahvijärjend"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "makro: tühi klahvijärjend"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: argumente pole"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: sellist funktsiooni pole"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ #, fuzzy
+ msgid "Enter keys (^G to abort): "
+ msgstr "Sisestage kasutaja teatele %s: "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr ""
+@@ -3159,7 +3266,7 @@ msgstr "Tüübil %s puudub mailcap kirje"
+ msgid "Scanning %s..."
+ msgstr "Valin %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Loen %s..."
+@@ -3175,13 +3282,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): ei õnnestu seada faili aegu"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Kirjutan %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3204,7 +3311,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3247,54 +3354,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Viga terminali initsialiseerimisel"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ei suuda tuvastada kasutajanime"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ei leia kodukataloogi"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr ""
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Saajaid ei ole määratud"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Teate faili ei saa avada: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: faili lisamine ebaõnnestus"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Uute teadetega postkaste ei ole"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Sissetulevate kirjade postkaste ei ole määratud"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Postkast on tühi"
+
+@@ -3336,52 +3443,52 @@ msgstr "Postkasti ei õnnestu uuesti avada"
+ msgid "Can't write message"
+ msgstr "Teadet ei õnnestu kirjutada"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Hüppa: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Vigane indeksi number"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Kirjeid pole"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Enam allapoole ei saa kerida"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Enam ülespoole ei saa kerida"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Te olete esimesel lehel"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Te olete viimasel lehel"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Te olete viimasel kirjel"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Te olete esimesel kirjel"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Otsi: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Otsi tagurpidi: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ei leitud"
+
+@@ -3424,20 +3531,20 @@ msgstr "Ootan flock lukku... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Ei õnnestu avada ajutist faili"
+
+@@ -3456,7 +3563,7 @@ msgstr "Silumise tase %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Silumise tase %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Viga serveriga ühenduse loomisel: %s"
+@@ -3480,17 +3587,17 @@ msgstr "Sain signaali %d (%s) ... Väljun.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Sain signaali %d ... Väljun.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3498,150 +3605,122 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ #, fuzzy
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Fail on kataloog, salvestan sinna?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Fail on kataloog, salvestan sinna?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Fail kataloogis: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Fail on olemas, (k)irjutan üle, (l)isan või ka(t)kestan?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "klt"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Teadet ei saa POP postkasti salvestada"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Lisan teated kausta %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "POP serveril ei saa teadet toimetada"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Kasutajanimi serveril %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s parool: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Päringukäsku ei ole defineeritud"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Nimemuster ei sobi, jätkan?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap koostamise kirje nõuab %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Faili avamine päiste analüüsiks ebaõnnestus"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Faili avamine päiste eemaldamiseks ebaõnnestus"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "Faili avamine päiste analüüsiks ebaõnnestus"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Mailcap koostamise kirjet %s jaoks puudub, loon tühja faili"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap toimeta kirje nõuab %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Mailcap toimeta kirjet %s jaoks ei ole."
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Sobivat mailcap kirjet pole. Käsitlen tekstina."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME tüüp ei ole defineeritud. Lisa ei saa vaadata."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Lisad"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Lisad"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Viga kirjutamisel"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Ma ei tea, kuidas seda trükkida"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Otsi"
+
+@@ -3650,21 +3729,21 @@ msgstr "Otsi"
+ msgid "History '%s'"
+ msgstr "Päring '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Vigane kuupäev: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "%s ei saa lukustada\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Uus kiri kaustas "
+
+@@ -3686,20 +3765,20 @@ msgstr "Vanem teade ei ole selles piiratud vaates nähtav"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Vanem teade ei ole selles piiratud vaates nähtav"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Otsing katkestati."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "%s ei õnnestu lisada"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3711,69 +3790,69 @@ msgstr[1] "märgin %d teadet kustutatuks..."
+ msgid "Can't open trash folder"
+ msgstr "Kausta ei saa lisada: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Tõstan loetud teated postkasti %s?"
+ msgstr[1] "Tõstan loetud teated postkasti %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Eemaldan %d kustutatud teate?"
+ msgstr[1] "Eemaldan %d kustutatud teadet?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Tõstan loetud teated kausta %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Postkasti ei muudetud"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d säilitatud, %d tõstetud, %d kustutatud"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d säilitatud, %d kustutatud"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Kirjutamise lülitamiseks vajutage '%s'"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Kirjutamise uuesti lubamiseks kasutage 'toggle-write'"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Postkast on märgitud mittekirjutatavaks. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Postkast on kontrollitud"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (praegune aeg: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- järgneb %s väljund%s --]\n"
+@@ -3782,53 +3861,53 @@ msgstr "[-- järgneb %s väljund%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Parool(id) on unustatud"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Käivitan PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Kirja ei saadetud"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Sisu vihjeta S/MIME teateid ei toetata"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Proovin eraldada PGP võtmed...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Proovin eraldada S/MIME sertifikaadid..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3837,7 +3916,7 @@ msgstr ""
+ "[-- Viga: Tundmatu multipart/signed protokoll %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3846,7 +3925,7 @@ msgstr ""
+ "[-- Viga: Vigane multipart/signed struktuur --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3855,7 +3934,7 @@ msgstr ""
+ "[-- Hoiatus: Me ai saa kontrollida %s/%s allkirju. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3863,7 +3942,7 @@ msgstr ""
+ "[-- Järgnev info on allkirjastatud --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3871,7 +3950,7 @@ msgstr ""
+ "[-- Hoiatus: Ei leia ühtegi allkirja. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3891,236 +3970,236 @@ msgstr "Käivitan S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Vigane kuu: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Vigane kuu: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Sõrmejälg: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Võtme ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Serveri sertifikaat on aegunud"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "SSL ei ole kasutatav."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Loon %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Viga käsureal: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4129,28 +4208,34 @@ msgstr ""
+ "\n"
+ "[-- Allkirjastatud info lõpp --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Viga: ajutise faili loomine ebaõnnestus! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "viga mustris: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "PGP allkiri on edukalt kontrollitud"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4158,11 +4243,11 @@ msgstr ""
+ "[-- PGP TEATE ALGUS --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP AVALIKU VÕTME BLOKI ALGUS --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4170,19 +4255,19 @@ msgstr ""
+ "[-- PGP ALLKIRJASTATUD TEATE ALGUS --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP TEATE LÕPP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP AVALIKU VÕTME BLOKI LÕPP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP ALLKIRJASTATUD TEATE LÕPP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4190,11 +4275,11 @@ msgstr ""
+ "[-- Viga: ei suuda leida PGP teate algust --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Viga: ajutise faili loomine ebaõnnestus --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4203,7 +4288,7 @@ msgstr ""
+ "[-- Järgneb PGP/MIME krüptitud info --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4211,75 +4296,70 @@ msgstr ""
+ "[-- Järgneb PGP/MIME krüptitud info --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME krüptitud info lõpp --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME krüptitud info lõpp --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP allkiri on edukalt kontrollitud"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "Teadet ei õnnestu kopeerida."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+ msgstr "[-- Järgneb S/MIME allkirjastatud info --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+ msgstr "[-- Järgneb S/MIME krüptitud info --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME Allkirjastatud info lõpp --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME krüptitud info lõpp --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "Vigane "
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4287,104 +4367,104 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Krüpti"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "Sertifikaat on salvestatud"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ #, fuzzy
+ msgid "[Revoked]"
+ msgstr "Tühistatud "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "Aegunud "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "Ühendus serverisse %s..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Viga serveriga ühenduse loomisel: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Viga käsureal: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Võtme ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Kõik sobivad võtmed on märgitud aegunuks/tühistatuks"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Vali "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Võtme kontroll "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP võtmed, mis sisaldavad \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "PGP võtmed, mis sisaldavad \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME sertifikaadid, mis sisaldavad \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "PGP võtmed, mis sisaldavad \"%s\"."
+@@ -4393,59 +4473,59 @@ msgstr "PGP võtmed, mis sisaldavad \"%s\"."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr ""
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Seda võtit ei saa kasutada: aegunud/blokeeritud/tühistatud"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID on aegunud/blokeeritud/tühistatud. Kas te soovite seda võtit tõesti kasutada?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID ei ole kehtiv. Kas te soovite seda võtit tõesti kasutada?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID on ainult osaliselt kehtiv. Kas te soovite seda võtit tõesti kasutada?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID kehtivuse väärtus ei ole defineeritud. Kas te soovite seda võtit tõesti kasutada?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Otsin võtmeid, mis sisaldavad \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Kasutan kasutajat = \"%s\" teatel %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Sisestage kasutaja teatele %s: "
+@@ -4454,16 +4534,16 @@ msgstr "Sisestage kasutaja teatele %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Ei leitud"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Palun sisestage võtme ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "viga mustris: %s"
+@@ -4471,99 +4551,99 @@ msgstr "viga mustris: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP Võti %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "kaimeu"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "kaimeu"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "kaimeu"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "kaimeu"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "kaimeu"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Faili avamine päiste analüüsiks ebaõnnestus."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Sisestage PGP parool:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Viga: ei õnnestu luua PGP alamprotsessi --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4574,16 +4654,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP allkiri on edukalt kontrollitud"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4591,129 +4671,129 @@ msgstr ""
+ "[-- Viga: PGP alamprotsessi loomine ei õnnestu --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Dekrüptimine ebaõnnestus"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP protsessi loomine ebaõnnestus"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP käivitamine ei õnnestu"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "kaimeu"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad, k(e)hasse, või (u)nusta?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "kaimeu"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Laen PGP võtit..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ #, fuzzy
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Kõik sobivad võtmed on märgitud aegunuks/tühistatuks"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP võtmed, mis sisaldavad <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP võtmed, mis sisaldavad \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "/dev/null ei saa avada"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP Võti %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Sisestage S/MIME parool:"
+
+@@ -4722,7 +4802,7 @@ msgstr "Sisestage S/MIME parool:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Aegunud "
+
+@@ -4731,7 +4811,7 @@ msgstr "Aegunud "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Vigane "
+
+@@ -4740,7 +4820,7 @@ msgstr "Vigane "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Tühistatud "
+
+@@ -4749,7 +4829,7 @@ msgstr "Tühistatud "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Usaldatud "
+
+@@ -4758,7 +4838,7 @@ msgstr "Usaldatud "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Kontrollimata"
+
+@@ -4767,7 +4847,7 @@ msgstr "Kontrollimata"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Kontrollitud "
+
+@@ -4776,60 +4856,60 @@ msgstr "Kontrollitud "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Tundmatu "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME sertifikaadid, mis sisaldavad \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID ei ole kehtiv. Kas te soovite seda võtit tõesti kasutada?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Sisestage võtme ID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "%s jaoks puudub kehtiv sertifikaat"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Viga: ei õnnestu luua OpenSSL alamprotsessi"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Ei õnnestu saada partneri sertifikaati"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "sertifikaadi faili pole"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "pole postkast"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL väljundit pole..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL protsessi avamine ebaõnnestus"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4837,19 +4917,19 @@ msgstr ""
+ "[-- OpenSSL väljundi lõpp --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Viga: ei õnnestu luua OpenSSL alamprotsessi --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Järgneb S/MIME krüptitud info --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Järgneb S/MIME allkirjastatud info --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4857,7 +4937,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME krüptitud info lõpp --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4866,168 +4946,168 @@ msgstr ""
+ "[-- S/MIME Allkirjastatud info lõpp --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad või (u)nusta?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "kaimu"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad või (u)nusta?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "kaimu"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (k)rüpti, (a)llkiri, allk. ku(i), (m)õlemad või (u)nusta?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "kaimu"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s on vigane POP tee"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server sulges ühenduse"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Autentikaatoreid pole"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL autentimine ebaõnnestus"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Ühendus serveriga %s suleti"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Laen teadete nimekirja..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Kontrollin, kas on uusi teateid..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "ei õnnestu kirjutada ajutisse kausta: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Ühendus serverisse %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Ühendus serverisse %s.."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Ei saa lugeda %s atribuute: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Kustutan serveril teateid..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Meldin..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Kontrollin, kas on uusi teateid..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s on vigane POP tee"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5039,7 +5119,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6193,189 +6273,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "näita S/MIME võtmeid"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Ei ole selles menüüs kasutatav"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "EelmLk"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "JärgmLm"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Vaata lisa"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Järgm."
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Teate lõpp on näidatud"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Teate algus on näidatud"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Te loete praegu abiinfot"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Rohkem tsiteetitud teksti pole"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Tsiteeritud teksiti järel rohkem teksti ei ole"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Viga avaldises: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "viga avaldises"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Päringukäsku ei ole defineeritud"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Käivitan autovaate käskluse: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Vigane kuupäev: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Vigane kuu: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Vigane suhteline kuupäev: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Lugemata teateid pole"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Viga postkasti avamisel!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Viga postkasti avamisel!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "/dev/null ei saa avada"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "viga mustris: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "parameeter puudub"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "sulud ei klapi: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: vigane käsklus"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: ei toetata selles moodis"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "parameeter puudub"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "tühi muster"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "viga: tundmatu op %d (teatage sellest veast)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompileerin otsingumustrit..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Käivitan leitud teadetel käsu..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ühtegi mustrile vastavat teadet ei leitud"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Salvestan..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Otsing jõudis midagi leidmata lõppu"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Otsing jõudis midagi leidmata algusse"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Otsing katkestati"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Server ei toeta käsklust TOP"
+
+@@ -6383,7 +6463,7 @@ msgstr "Server ei toeta käsklust TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "Päist ei õnnestu ajutissse faili kirjutada"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Server ei toeta UIDL käsklust"
+
+@@ -6398,7 +6478,7 @@ msgstr[1] "Teadete indeks on vigane. Proovige postkasti uuesti avada."
+ msgid "POP host is not defined"
+ msgstr "POP serverit ei ole määratud"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s on vigane POP tee"
+@@ -6431,156 +6511,156 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d/%d teadet loetud]"
+ msgstr[1] "%s [%d/%d teadet loetud]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Laen teadete nimekirja..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "märgin %d teadet kustutatuks..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Teadet ei õnnestu ajutisse faili kirjutada"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autentimine (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autentimine (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP autentimine ebaõnnestus"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Server ei toeta käsklust USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL autentimine ebaõnnestus"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Vigane "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Teateid ei õnnestu sererile jätta"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Viga serveriga ühenduse loomisel: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Sulen ühenduse POP serveriga..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Kontrollin teadete indekseid ..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Ühendus katkes. Taastan ühenduse POP serveriga?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Postitusootel teated"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Postitusootel teateid pole"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Vigane S/MIME päis"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Vigane PGP päis"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Laen teadet..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Uus päring"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Loo alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Ootan vastust..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Päring: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Päring '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Päringukäsku ei ole defineeritud"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Toru"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Trüki"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Salvestan..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Lisa on salvestatud"
+ msgstr[1] "Lisa on salvestatud"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "HOIATUS: Te olete üle kirjutamas faili %s, jätkan?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Lisa on filtreeritud"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtreeri läbi: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Toru käsule: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Ma ei tea, kuidas trükkida %s lisasid"
+@@ -6588,57 +6668,57 @@ msgstr "Ma ei tea, kuidas trükkida %s lisasid"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Trükin märgitud lisa(d)?"
+ msgstr[1] "Trükin märgitud lisa(d)?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Trükin lisa?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Krüpteeritud teadet ei õnnestu lahti krüpteerida"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Lisad"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Osasid, mida näidata, ei ole"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Lisasid ei saa POP serverilt kustutada"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Lisasid ei saa POP serverilt kustutada"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Krüpteeritud teadetest ei saa lisasid eemaldada"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Krüpteeritud teadetest ei saa lisasid eemaldada"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Kustutada saab ainult mitmeosalise teate lisasid"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Peegeldada saab ainult message/rfc822 osi"
+
+@@ -6675,7 +6755,7 @@ msgstr "%s loomine ebaõnnestus"
+ msgid "Can't find any tagged messages"
+ msgstr "Ei leia ühtegi märgitud teadet"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Postiloendeid pole"
+
+@@ -6690,67 +6770,67 @@ msgstr "Kõiki märgitud lisasid ei saa dekodeerida. Kapseldan ülejäänud MIME
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Peegeldada saab ainult message/rfc822 osi"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Lõppu"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Lisa"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Mixmaster type2.list laadimine ei õnnestu"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Valige vahendajate ahel"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Viga: %s ei saa ahela viimase vahendajana kasutada"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster ahelad on piiratud %d lüliga"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Vahendajate ahel on juba tühi"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Te olete ahela esimese lüli juba valinud"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Te olete ahela viimase lüli juba valinud"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster ei toeta Cc või Bcc päiseid"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Mixmaster kasutamisel omistage palun hostname muutujale korrektne väärtus"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Viga teate saatmisel, alamprotsess lõpetas koodiga %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Viga teate saatmisel"
+
+@@ -6781,42 +6861,42 @@ msgstr "Edasta lisadena?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Vastan aadressile %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Vastus aadressile %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Kaasan vastuses teate?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Tsiteerin teadet..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Kõiki soovitud teateid ei õnnestu kaasata"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Edasta lisadena?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Valmistan edastatavat teadet..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: ei toetata selles moodis"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "vaata lisa tekstina"
+@@ -6825,196 +6905,196 @@ msgstr "vaata lisa tekstina"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Postkasti pole.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Laen postitusootel teate?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Toimetan edastatavat teadet?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Katkestan muutmata teate?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Katkestasin muutmata teate saatmise"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Kirja ei saadetud"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Teade jäeti postitusootele"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Teema puudub, katkestan saatmise?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Teema puudub"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Teema puudub"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "toimeta lisa kodeeringut"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Saadan teadet..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Teadet ei õnnestu saata"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Saadan taustal"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Teade on saadetud"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Eraldaja puudub [teatage sellest veast]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s ei ole enam"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s ei ole tavaline fail"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Teadet ei õnnestu saata."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s ei saa avada"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Viga teate saatmisel, alamprotsess lõpetas %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Väljund saatmise protsessist"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr ""
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SSL ebaõnnestus: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SSL ebaõnnestus: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Vigane "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL autentimine ebaõnnestus."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI autentimine ebaõnnestus"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Järjestan teateid..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Ei leia järjestamisfunktsiooni [teatage sellest veast]"
+
+@@ -7066,11 +7146,11 @@ msgstr ""
+ "NeoMutt on vaba tarkvara ja te võite seda teatud tingimustel levitada;\n"
+ "detailsemat infot saate käsuga 'neomutt -vv'.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Kompileerimise võtmed:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Kompileerimise võtmed:"
+diff --git a/po/eu.po b/po/eu.po
+index e4a72abbd..b8d82d1ca 100644
+--- a/po/eu.po
++++ b/po/eu.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2008-05-20 22:39+0200\n"
+ "Last-Translator: Piarres Beobide <pi@beobide.net>\n"
+ "Language-Team: Euskara <debian-l10n-basque@lists.debian.org>\n"
+@@ -20,16 +20,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(u)katu, behin (o)nartu, (b)etirko onartu"
++
++#, fuzzy
++msgid "roas"
++msgstr "uob"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(u)katu, behin (o)nartu, (b)etirko onartu"
++
++msgid "roa"
++msgstr "uob"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(u)katu, behin (o)nartu"
++
++#, fuzzy
++msgid "ros"
++msgstr "uo"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(u)katu, behin (o)nartu"
++
++msgid "ro"
++msgstr "uo"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Irten"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Ezab"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Desezabatu"
+
+@@ -37,18 +65,18 @@ msgstr "Desezabatu"
+ msgid "Select"
+ msgstr "Hautatu"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Laguntza"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Ez duzu aliasik"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliasak"
+
+@@ -57,52 +85,52 @@ msgstr "Aliasak"
+ msgid "Alias as: "
+ msgstr "Aliasa sortu: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Izen honekin baduzu ezarritako ezizena bat"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Kontuz: ezizena izen honek ez du funtzionatuko. Konpondu?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Helbidea: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "IDN Okerra: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Pertsona izena: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Onartu?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Gorde fitxategian: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Errorea ezizen fitxategia irakurtzean"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Errorea ezizen fitxategia irakurtzean"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Ezizena gehiturik"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Errorea ezizen fitxategian bilatzean"
+
+@@ -111,7 +139,7 @@ msgstr "Errorea ezizen fitxategian bilatzean"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s ez da existitzen. Sortu?"
+@@ -120,8 +148,8 @@ msgstr "%s ez da existitzen. Sortu?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Ezin da %s sortu: %s"
+@@ -131,7 +159,7 @@ msgstr "Ezin da %s sortu: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -140,7 +168,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -149,7 +177,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -158,7 +186,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -170,7 +198,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "enkriptazioa"
+@@ -178,7 +206,7 @@ msgstr "enkriptazioa"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -186,7 +214,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -195,7 +223,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Ez da (baliozko) ziurtagiririk aurkitu %s-rentzat"
+@@ -207,12 +235,12 @@ msgstr "Ez da (baliozko) ziurtagiririk aurkitu %s-rentzat"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Ez dago postakutxarik.\n"
+@@ -224,14 +252,14 @@ msgstr "Ez dago postakutxarik.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Sortu %s?"
+@@ -239,7 +267,7 @@ msgstr "Sortu %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Ezabatu"
+
+@@ -247,9 +275,9 @@ msgstr "Ezabatu"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -257,17 +285,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -276,7 +304,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -284,7 +312,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -292,12 +320,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -305,13 +333,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Errorea karpeta arakatzerakoan"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Benetan \"%s\" postakutxa ezabatu?"
+@@ -329,7 +357,7 @@ msgstr "Benetan \"%s\" postakutxa ezabatu?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Ezin da postakutxa blokeatu!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "errorea gpgme ingurunea sortzean: %s"
+@@ -402,335 +430,286 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s ez da karpeta bat"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Karpetara joan: "
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maskara"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "%s-ra harpideturik"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "%s-ra harpidetzaz ezabaturik"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s ez da karpeta bat"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "%s-ra harpideturik"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Postakutxak [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Harpidedun [%s], Fitxategi maskara: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Karpeta [%s], Fitxategi maskara: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Ezin da karpeta bat gehitu"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Ez da fitxategi maskara araberako fitxategirik aurkitu"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "\"Create\" IMAP posta kutxek bakarrik onartzen dute"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Berrizendaketa IMAP postakutxentzat bakarrik onartzen da"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "\"Delete\" IMAP posta kutxek bakarrik onartzen dute"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "une honetan aukeratutako fitxategi izena erakutsi"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Benetan \"%s\" postakutxa ezabatu?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Postakutxa ezabatua"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Postakutxa ezabatua"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Postakutxa ez da ezabatu"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Karpetara joan: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Errorea karpeta arakatzerakoan"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Fitxategi maskara: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Atzekoz aurrera (d)ataz, (a)lphaz, tamaina(z) edo ez orde(n)atu?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "(d)ataz, (a)lpha, tamaina(z) edo ez orde(n)atu?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Fitxategi izen berria: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Ezin da karpeta ikusi"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Errorea fitxategia ikusten saiatzerakoan"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "%s-ra harpideturik"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "%s-ra harpidetzaz ezabaturik"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Ez da fitxategi maskara araberako fitxategirik aurkitu"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: kolorea ez du terminalak onartzen"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: ez da kolorea aurkitu"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: ez da objektua aurkitu"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: argumentu gutxiegi"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: ez da atributua aurkitu"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: argumentu gehiegi"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "lehenetsitako kolorea ez da onartzen"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: mezu zenbaki okerra.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Sinadura egiaztatu?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Ezin da behin-behineko fitxategia sortu"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Ezin da bistaratze iragazkia sortu"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Ezin da mezurik kopiatu"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME sinadura arrakastatsuki egiaztaturik"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME ziurtagiriaren jabea ez da mezua bidali duena"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Abisua -.Mezu honen zati bat ezin izan da sinatu"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME sinadura EZIN da egiaztatu"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP sinadura arrakastatsuki egiaztaturik"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP sinadura EZIN da egiaztatu"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Errorea \"%s\" abiarazten"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Komandoa: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Mezuak hona errebotatu: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Markatutako mezuak hona errebotatu: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Errorea helbidea analizatzean"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Mezua %s-ra errebotatu"
+ msgstr[1] "Mezuak %s-ra errebotatu"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Mezua ez da errebotatu"
+ msgstr[1] "Mezuak ez dira errebotatu"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Mezua errebotaturik"
+ msgstr[1] "Mezuak errebotaturik"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Ezin da iragazki prozesua sortu"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Komandora hodia egin: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Ez da inprimatze komandorik ezarri"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Mezua inprimatu?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Markatutako mezuak inprimatu?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Mezua inprimaturik"
+ msgstr[1] "Mezuak inprimaturik"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -738,165 +717,328 @@ msgstr[0] "Ezin da mezua inprimatu"
+ msgstr[1] "Ezin dira mezuak inprimatu"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Alderantziz-Ordenatu (d)ata/(j)at/ja(s)/(g)aia/(n)ori/(h)aria/(e)z-ordenatu/(t)amaina/(p)untuak/(z)abor-posta?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordenatu (d)ata/(j)at/ja(s)/(g)aia/(n)ori/(h)aria/(e)z-ordenatu/(t)amaina/(p)untuak/(z)abor-posta? "
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "djsgnhetpz"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell komandoa: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Deskodifikatu-gorde postakutxan"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Deskodifikatu-gorde markatua postakutxan"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Desenkriptatu-gorde postakutxan"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Desenkriptatu-gorde markatua postakutxan"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr " posta-kutxan gorde"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr " markatua posta-kutxan gorde"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Deskodifikatu-kopiatu postakutxan"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Deskodifikatu-kopiatu markatua postakutxan"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Desenkriptatu-kopiatu postakutxan"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Desenkriptatu-kopiatu markatua postakutxan"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr " posta-kutxan kopiatu"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr " markatua posta-kutxan kopiatu"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Hona kopiatzen %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Eduki mota %s-ra aldatzen"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Bidali aurretik %s-ra bihurtu?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Eduki mota %s-ra aldatzen"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Karaktere ezarpena %s-ra aldaturik: ez da bihurtzen"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Karaktere ezarpena %s-ra aldaturik: bihurtzen"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: argumentu gutxiegi"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: ez dago talde izenik"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "argumentu gehiegi"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Errorea %s-n, %d lerroan: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Errorea %s-n, %d lerroan: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "jatorria: erroreak %s-n"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "jatorria: %s-n akats gehiegiengatik irakurketa ezeztatua"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "jatorria: erroreak %s-n"
++msgstr[1] "jatorria: erroreak %s-n"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "ezizena: helbide gabea"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Kontuz: '%s' IDN okerra '%s' ezizenean"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "eranskinak: disposiziorik ez"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "gehigarri deskribapena editatu"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "eranskinak: disposizio okerra"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: argumentu gehiegi"
++
++#: command_parse.c:801
++#, fuzzy, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "-rx edo -helb falta da"
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Kontuz: '%s' IDN okerra"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "baliogabeko mezu burua"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: aldagai ezezaguna"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s ezarri gabe dago"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "jatorria: %s-n errorea"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Ezin dira mezuak inprimatu"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "zabor-posta: ez da patroia aurkitu"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "ez zabor-posta: ez da patroia aurkitu"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "%s-ra harpideturik"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "%s-ra harpideturik"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Ez da gairik ezarri."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "deseranskinak: disposiziorik ez"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "deseranskinak: disposizio okerra"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s-ra harpidetzaz ezabaturik"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "%s-ra harpidetzaz ezabaturik"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Ez dago gehigarririk"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Erantzun"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -907,78 +1049,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Honela sinatu: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Jarraitu %s%s-ra?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "erantzun-honi eremua aldatu"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Bidali"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Ezeztatu"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Fitxategia gehitu"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Deskrib"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Ez da gairik ezarri."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -986,7 +1128,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -994,14 +1136,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "bai"
+@@ -1012,7 +1154,7 @@ msgstr "bai"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1020,54 +1162,54 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Markatzea ez da onartzen."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Sinatu, Enkriptatu"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Enkriptatu"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Sinatu"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr " (barruan)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ #, fuzzy
+ msgid " (S/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<lehenetsia>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Honekin enkriptatu: "
+
+@@ -1076,12 +1218,12 @@ msgstr "Honekin enkriptatu: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "erantzun-honi eremua aldatu"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1092,7 +1234,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] ez da gehiago existitzen"
+@@ -1104,240 +1246,360 @@ msgstr "%s [#%d] ez da gehiago existitzen"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] aldaturik. Kodeketea eguneratu?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Gehigarriak"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Ezin duzu gehigarri bakarra ezabatu"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "IDN okerra '%s'-n: '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Gehigarria gordea"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Gehigarri hau ezin da bihurtu"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Gehigarria iragazirik"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Errorea mezua bidaltzerakoan"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Aukeratutako fitxategia gehitzen..."
+ msgstr[1] "Aukeratutako fitxategia gehitzen..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Ezin da %s gehitu"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Bertatik mezu bat gehitzeko postakutxa ireki"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Bertatik mezu bat gehitzeko postakutxa ireki"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Ezin da postakutxa blokeatu!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Ez dago mezurik karpeta honetan"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Gehitu nahi dituzun mezuak markatu"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Ezin da gehitu"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Gordetzeak mezu gehigarriei bakarrik eragiten die"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Gehigarri hau ezin da bihurtu"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Gehigarri hau bihurtua izango da"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Kodifikazio baliogabea"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Mezu honen kopia gorde?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "gehigarriak testua balira ikusi"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Honetara berrizendatu: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Ezin egiaztatu %s egoera: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Fitxategi berria: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Eduki-mota base/sub modukoa da"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "%s eduki mota ezezaguna"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Ezin da %s fitxategia sortu"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Hemen duguna gehigarria sortzerakoan huts bat da"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Atzeraturiko mezuak hartu?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Mezuak postakutxan gorde"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Mezuak %s-n gordetzen ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Mezua idazten"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME dagoeneko aukeraturik. Garbitu era jarraitu ?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP dagoeneko aukeraturik. Garbitu eta jarraitu?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Ezin da postakutxa blokeatu"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Aurrekonexio komandoak huts egin du."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Hona kopiatzen %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Hona kopiatzen %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Errorea. Behin behineko fitxategi gordetzen: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Data erlatibo baliogabea: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Data erlatibo baliogabea: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: mezu zenbaki okerra.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Baliogabeko hilabete eguna: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Baliogabeko hilabetea: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Mezu-gehitze moduan baimenik gabeko funtzioa."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: mezu zenbaki okerra.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: mezu zenbaki okerra.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Data erlatibo baliogabea: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Baliogabeko hilabete eguna: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Errorea: '%s' IDN okerra da"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: aldagai ezezaguna"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Data erlatibo baliogabea: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Data erlatibo baliogabea: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "%s -n erabiltzaile izena: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s-ren pasahitza: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Bilaketa komadoa ezarri gabea"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1358,7 +1620,7 @@ msgstr "%s-ra konektatzen..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Ezin da %s (%s)-ra konektatu"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "errore ezezaguna"
+
+@@ -1372,23 +1634,23 @@ msgstr "Errorea %s (%s) komunikatzerakoan"
+ msgid "Connection to %s has been aborted"
+ msgstr "%s-rekiko konexioa itxia"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "SASL profil ezezaguna"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Errorea SASL konexioa esleitzerakoan"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Errorea SASL segurtasun propietateak ezartzean"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Errorea SASL kanpo segurtasun maila ezartzean"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Errorea SASL kanpo erabiltzaile izena ezartzean"
+
+@@ -1401,138 +1663,112 @@ msgstr "Aurrekonexio komandoak huts egin du"
+ msgid "Connection to %s closed"
+ msgstr "%s-rekiko konexioa itxia"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Entropia elkarbiltzea betetzen: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s ziurtasun gabeko biamenak ditu"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Entropia gabezia dela eta SSL ezgaitu egin da"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Ezezaguna"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[ezin da kalkulatu]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[baliogabeko data]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Jadanik zerbitzari ziurtagiria ez da baliozkoa"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Zerbitzariaren ziurtagiria denboraz kanpo dago"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Huts zure sisteman entropia nahikoak bidaltzerakoan"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Auzolagunengatik ezin da ziurtagiria jaso"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Auzolagunengatik ezin da ziurtagiria jaso"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "S/MIME ziurtagiriaren jabea ez da mezua bidali duena."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Ziurtagiriaren jabea:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Honek emandako ziurtagiria:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Ziurtagiria hau baliozkoa da"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " %s-tik"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+-msgstr " %s-ra"
+-
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "SHA1 Hatz-marka: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "SHA1 Hatz-marka: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(u)katu, behin (o)nartu, (b)etirko onartu"
++msgstr " %s-ra"
+
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(u)katu, behin (o)nartu, (b)etirko onartu"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "SHA1 Hatz-marka: %s"
+
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(u)katu, behin (o)nartu"
++msgid "SHA256 Fingerprint: "
++msgstr "SHA1 Hatz-marka: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(u)katu, behin (o)nartu"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Irten "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Kontuz: Ezin da ziurtagiria gorde"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Ziurtagiria gordea"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Ziurtagiria gordea"
+@@ -1540,15 +1776,15 @@ msgstr "Ziurtagiria gordea"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "S/I errorea"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL hutsa: %s"
+@@ -1556,90 +1792,74 @@ msgstr "SSL hutsa: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Errorea: Ezin da OpenSSL azpiprozesua sortu!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Auzolagunengatik ezin da ziurtagiria jaso"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Ziurtagiria egiaztapen errorea (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Ziurtagiria ez da X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Errorea gnutls ziurtagiri datuak abiaraztean"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Errorea ziurtagiri datuak prozesatzerakoan"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ABISUA Zerbitzari ziurtagiria ez baliozkoa dagoeneko"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ABISUA Zerbitzaria ziurtagiria iraungi egin da"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ABISUA Zerbitzariaziurtagiria errebokatu egin da"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ABISUA Zerbitzari ostalari izena ez da ziurtagiriko berdina"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "KONTUZ:: Zerbitzari ziurtagiri sinatzailea ez da CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "uob"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "uo"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "TLS/SSL bidezko protokolo erabilgarri guztiak ezgaiturik"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS konexioa hau erabiliaz: %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Errorea ez da TLS socket-ik ireki"
+
+@@ -1658,38 +1878,18 @@ msgstr "Tunel errorea %s-rekiko konexioan: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "%s-rako tunelak %d errorea itzuli du (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "bai"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ez"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt utzi?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Edozein tekla jo jarraitzeko..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (? zerrendarako): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1712,7 +1912,7 @@ msgstr ""
+ "~M mezuak ~m-ren berdina, baina buruak ere txertatuaz\n"
+ "~p inprimatu mezua\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1734,20 +1934,20 @@ msgstr ""
+ "~? mezu hau\n"
+ ". bakarrik lerro batetan sarrera amaitzen du\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: mezu zenbaki okerra.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Mezua . bakarreko lerro batekin amaitu)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Ez dago postakutxarik.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Mezuaren edukia:\n"
+
+@@ -1755,19 +1955,19 @@ msgstr "Mezuaren edukia:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(jarraitu)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "fitxategi izena ez da aurkitu.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Ez dago lerrorik mezuan.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: editore komando ezezaguna (~? laguntzarako)\n"
+@@ -1815,19 +2015,73 @@ msgstr "Ezin karpetan gehitu: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "zati anitzeko mezuak ez du errebote parametrorik"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Hari bihurketa ez dago gaiturik"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Bandera ezarri"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Bandera ezabatu"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: kolorea ez du terminalak onartzen"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: ez da kolorea aurkitu"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: ez da objektua aurkitu"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: ez da atributua aurkitu"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "lehenetsitako kolorea ez da onartzen"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: mezu zenbaki okerra.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "bai"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ez"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt utzi?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Edozein tekla jo jarraitzeko..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (? zerrendarako): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1848,23 +2102,23 @@ msgstr "[-- Autoerkutsi %s erabiliaz --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Autoikusketarako komandoa deitzen: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Ezin da iragazkia sortu"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Ezin da %s abiarazi. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Aurreikusi %s-eko stderr --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Erroreak: mezu/kanpoko edukiak ez du access-type parametrorik --]\n"
+
+@@ -1883,7 +2137,7 @@ msgstr "[-- Erroreak: mezu/kanpoko edukiak ez du access-type parametrorik --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1912,7 +2166,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1926,7 +2180,7 @@ msgstr[1] "[-- %s/%s gehigarri hau (tamaina %s byte) ezabatua izan da --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1938,12 +2192,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- %s/%s gehigarri hau ezabatua izan da --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- izena: %s --]\n"
+@@ -1951,7 +2205,7 @@ msgstr "[-- izena: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1967,7 +2221,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1976,96 +2230,96 @@ msgstr ""
+ "[-- %s/%s gehigarria ez dago gehiturik, --]\n"
+ "[-- eta ezarritako access type %s ez da onartzen --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Errorea: Ezin da Multipart/Alternative zatirik bistarazi --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Gehigarria #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Gehigarria #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Abisua -.Mezu honen zati bat ezin izan da sinatu."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Ezin da behin-behineko fitxategia ireki"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Ezin da behin-behineko fitxategia ireki"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Ezin da behin-behineko fitxategia ireki"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Errorea: zati anitzeko sinadurak ez du protokolorik"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s gehigarri hau ('%s' erabili zati hau ikusteko) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s ez da onartzen ('%s' erabili zati hau ikusteko) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s gehigarri hau (lotu 'view-attachments' tekla bati) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s ez da onartzen (lotu 'view-attachments' tekla bati) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- %s/%s gehigarri hau --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s ez da onartzen --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERROREA: Mesedez zorri honetaz berri eman"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<EZEZAGUNA>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Lotura orokorrak:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Loturagabeko funtzioak:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s-rako laguntza"
+@@ -2082,41 +2336,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Ezin da gantxoaren barnekaldetik desengatxatu"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: gantxo mota ezezaguna: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Ezin da %s bat ezabatu %s baten barnetik"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: ez da menurik"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: ez da menurik"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: ez da menurik"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Ezin da %s fitxategi tenporala sortu"
+@@ -2154,30 +2408,30 @@ msgstr "GSSAPI autentifikazioak huts egin du"
+ msgid "LOGIN disabled on this server"
+ msgstr "Zerbitzari honetan saio astea ezgaiturik"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Saio asten..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Huts saioa hasterakoan"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autentifikatzen (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER egiaztapenak huts egin du"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autentifikazioa (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL egiaztapenak huts egin du"
+
+@@ -2225,90 +2479,80 @@ msgstr "Berrizendaketak huts egin du: %s"
+ msgid "Mailbox renamed"
+ msgstr "Postakutxa berrizendaturik"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Postakutxa itxia"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "%s-rekiko konexioa itxia"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "IMAP zerbitzaria aspaldikoa da. NeoMutt-ek ezin du berarekin lan egin."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Goiburu bilaketa goiburu izen gabe: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL hutsa: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "%s-ra konexioak ixten..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "TLS-duen konexio ziurra?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Ezin da TLS konexioa negoziatu"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Enkriptaturiko konexioa ez da erabilgarria"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "%s-ra harpidetzen..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "%s-ra harpidetzaz ezabatzen..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s-ra harpideturik"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s-ra harpidetzaz ezabaturik"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "%d mezuak %s-ra kopiatzen..."
+ msgstr[1] "%d mezuak %s-ra kopiatzen..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Sortu %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Ezabatzea huts"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2316,44 +2560,44 @@ msgstr[0] "%d mezu ezabatuak markatzen..."
+ msgstr[1] "%d mezu ezabatuak markatzen..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Aldaturiko mezuak gordetzen... [%d/%d]"
+ msgstr[1] "Aldaturiko mezuak gordetzen... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Erroreak banderak gordetzean. Itxi hala ere?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Errorea banderak gordetzean"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Mezuak zerbitzaritik ezabatzen..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE huts egin du"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Aukeratzen %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Postakutxa irekitzean errorea"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP zerbitzariak ez du autentifikazioa onartzen"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Baliogabea "
+@@ -2364,7 +2608,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Memoriaz kanpo"
+
+@@ -2384,7 +2628,7 @@ msgstr "Mezu burukoak eskuratzen..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "IMAP zerbitzari bertsio honetatik ezin dira mezuak eskuratu"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Mezu burukoak eskuratzen..."
+
+@@ -2397,156 +2641,156 @@ msgstr "Mezua igotzen..."
+ msgid "Copying message %d to %s..."
+ msgstr "%d mezua %s-ra kopiatzen..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Mezua eskuratzen..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Mezu sarrera baliogabekoa. Saia zaitez postakutxa berrirekitzen."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Jarraitu?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Irten"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Gorde"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Posta"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Erantzun"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Taldea"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Jarraitu %s%s-ra?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Ez da postakutxarik irekirik"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Ez daude mezurik"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Ez dago ikus daitekeen mezurik"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Irakurketa soileko posta-kutxa"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Mezu-gehitze moduan baimenik gabeko funtzioa"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, fuzzy, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "Ezin da %s: ACL-ak ez du ekintza onartzen"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Ezin da idazgarritasuna aldatu idaztezina den postakutxa batetan"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Posta-kutxaren aldaketa bertatik irtetean gordeak izango dira"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Karpetako aldaketak ezin dira gorde"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s ez da postakutxa bat"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Posta-kutxa kanpoaldetik aldaturik. Banderak gaizki egon litezke."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Eposta berria posta-kutxa honetan"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Postakutxa kanpokoaldetik aldatua"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Ez dago mezu markaturik"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Ez dago ezer egiterik"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "IDgakoa sartu: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Jatorrizko mezua ez da ikusgarria bistaratze mugatu honetan"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Mezuak zerbitzaritik ezabatzen..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "hari honetako mezu guztiak ezabatu"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Mezura salto egin: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumentua mezu zenbaki bat izan behar da"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Mezu zenbaki okerra"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Mezu hau ez da ikusgarria"
+
+@@ -2559,38 +2803,38 @@ msgstr "Mezu hau ez da ikusgarria"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "desezabatu mezua"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Horrelako mezuak ezabatu: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Ez da muga patroirik funtzionamenduan"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Muga: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Hau duten mezuetara mugatu: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Mezu guztiak ikusteko, \"dena\" bezala mugatu"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt Itxi?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Horrelako mezuak markatu: "
+
+@@ -2598,213 +2842,213 @@ msgstr "Horrelako mezuak markatu: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "desezabatu mezua"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Hau betetzen duten mezua desezabatu: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Horrelako mezuen marka ezabatzen: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr ""
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Ez du gairik, ezeztatzen"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP zerbitzariak ez du autentifikazioa onartzen"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Ez du gairik, ezeztatzen"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Ez du gairik, ezeztatzen"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Postakutxa irakurtzeko bakarrik ireki"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Postakutxa ireki"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Ez dago posta berririk duen postakutxarik"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Postakutxa irakurtzeko bakarrik ireki"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "NeoMutt gorde gabe itxi?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "hariak lotu"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Haria apurturik"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ #, fuzzy
+ msgid "Can't link threads"
+ msgstr "hariak lotu"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Ez da Mezu-ID burua jaso harira lotzeko"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Lehenengo, markatu mezu bat hemen lotzeko"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Hariak loturik"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Hariak ez dira lotu"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Azkenengo mezuan zaude"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Ez dago desezabatutako mezurik"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Lehenengo mezuan zaude"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Jatorrizko mezua ez da ikusgarria bistaratze mugatu honetan"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Ez dago mezu berririk"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Jatorrizko mezua ez da ikusgarria bistaratze mugatu honetan"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Ez dago irakurgabeko mezurik"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Bilaketa berriz hasieratik hasi da"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Bilaketa berriz amaieratik hasi da"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "markatu mezua"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ #, fuzzy
+ msgid "Can't toggle new"
+ msgstr "txandakatu berria"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Ez dago hari gehiagorik"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Lehenengo harian zaude"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Irakurgabeko mezuak dituen haria"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "desezabatu mezua"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Ezin da mezua idatzi"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2814,7 +3058,7 @@ msgstr[1] "Postakutxak ez du aldaketarik"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Postakutxak ez du aldaketarik"
+@@ -2823,7 +3067,7 @@ msgstr "Postakutxak ez du aldaketarik"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "markatu mezua(k) irakurri gisa"
+@@ -2831,14 +3075,14 @@ msgstr "markatu mezua(k) irakurri gisa"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "IDgakoa sartu: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Mezua atzeraturik."
+@@ -2846,260 +3090,123 @@ msgstr "Mezua atzeraturik."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Mezua errebotaturik"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Ez dago mezurik karpeta honetan"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "desezabatu mezua"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Komando lerroan errorea: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Komando lerroan errorea: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "ezinda erabiltzaile izena aurkitu"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: ez dago talde izenik"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "argumentu gehiegi"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Errorea %s-n, %d lerroan: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Errorea %s-n, %d lerroan: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "jatorria: erroreak %s-n"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "jatorria: %s-n akats gehiegiengatik irakurketa ezeztatua"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "jatorria: erroreak %s-n"
+-msgstr[1] "jatorria: erroreak %s-n"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "ezizena: helbide gabea"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Kontuz: '%s' IDN okerra '%s' ezizenean"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "eranskinak: disposiziorik ez"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "gehigarri deskribapena editatu"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "eranskinak: disposizio okerra"
+-
+-#: init.c:1160
+-#, fuzzy, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "-rx edo -helb falta da"
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Kontuz: '%s' IDN okerra"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "baliogabeko mezu burua"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: aldagai ezezaguna"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s ezarri gabe dago"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "jatorria: %s-n errorea"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Ezin dira mezuak inprimatu"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "zabor-posta: ez da patroia aurkitu"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "ez zabor-posta: ez da patroia aurkitu"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "%s-ra harpideturik"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Ez da gairik ezarri."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "deseranskinak: disposiziorik ez"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "deseranskinak: disposizio okerra"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "%s-ra harpidetzaz ezabaturik"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: komando ezezaguna"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Baliogabeko hilabete eguna: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Mezu-gehitze moduan baimenik gabeko funtzioa."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Makro begizta aurkitua"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Letra ez dago mugaturik"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Letra ez dago mugaturik. %s jo laguntzarako."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: baloigabeko sekuentzi gakoa"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: sekuentzi gako hutsa"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: ez da argumenturik"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: ez da funtziorik"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Sartu gakoak (^G uzteko): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Kar = %s, Zortziko = %o, hamarreko = %d"
+@@ -3123,7 +3230,7 @@ msgstr "ez da aurkitu %s motako mailcap sarrerarik"
+ msgid "Scanning %s..."
+ msgstr "Arakatzen %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s irakurtzen..."
+@@ -3139,13 +3246,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): fitxategian ezin da data ezarri"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s idazten..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3168,7 +3275,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3211,54 +3318,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Errorea terminala abiaraztekoan"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ezinda erabiltzaile izena aurkitu"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ezin da \"home\" karpeta aukeratu"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Errorea: '%s' IDN okerra da"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Huts maito: lotura analizatzean"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Ez da jasotzailerik eman"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Ezin da mezu fitxategia ireki: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: ezin gehigarria gehitu"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Ez dago posta berririk duen postakutxarik"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Ez da sarrera postakutxarik ezarri"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Postakutxa hutsik dago"
+
+@@ -3300,52 +3407,52 @@ msgstr "Ezin da postakutxa berrireki"
+ msgid "Can't write message"
+ msgstr "Ezin da mezua idatzi"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Joan hona: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Baliogabeko sarrera zenbakia"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Ez dago sarrerarik"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Ezin duzu hurrunago jaitsi"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Ezin duzu hurrunago igo"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Lehenengo orrialdean zaude"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Azkenengo orrialdean zaude"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Azkenengo sarreran zaude"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Lehenengo sarreran zaude"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Bilatu hau: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Bilatu hau atzetik-aurrera: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ez da aurkitu"
+
+@@ -3388,20 +3495,20 @@ msgstr "flock eskuratzea itxaroten... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Okerreko historia fitxategi formatua (%d lerroa)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Ezin da behin-behineko fitxategia sortu"
+
+@@ -3420,7 +3527,7 @@ msgstr "%d. mailan arazten.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "%d. mailan arazten.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Errorea zerbitzariarekin konektatzerakoan: %s"
+@@ -3445,17 +3552,17 @@ msgstr "Mozte seinalea %d (%s) ... Irteten.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Mozte seinalea %d ... Irteten.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3463,148 +3570,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Fitxategia direktorioa bat da, honen barnean gorde?(b)ai, (e)z, d(a)na"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "bea"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Fitxategia direktorio bat da, honen barnean gorde?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Direktorio barneko fitxategiak: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Fitxategia existitzen da (b)erridatzi, (g)ehitu edo (e)zeztatu?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "bge"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Ezin da mezua POP postakutxan gorde"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Mezuak %s-ra gehitu?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Ezin dira mezuak zerbitzarian utzi"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "%s -n erabiltzaile izena: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s-ren pasahitza: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Bilaketa komadoa ezarri gabea"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Ezin da txantiloi izena aurkitu, jarraitu?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap konposaketa sarrerak hau behar du %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Huts buruak analizatzeko fitxategia irekitzerakoan"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Huts buruak kentzeko fitxategia irekitzerakoan"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Huts fitxategia berrizendatzerakoan"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "%s-rentza ez dago mailcap sorrera sarrerarik, fitxategi hutsa sortzen"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap edizio sarrerak %%s behar du"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Ez dago mailcap edizio sarrerarik %s-rentzat"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Ez da pareko mailcap sarrerarik aurkitu. Testu bezala bistarazten."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME mota ezarri gabe. Ezin da gehigarria erakutsi."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Gehigarriak"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Gehigarriak"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Idaztean huts"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Ez dakit non inprimatu hau"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Bilatu"
+
+@@ -3613,21 +3692,21 @@ msgstr "Bilatu"
+ msgid "History '%s'"
+ msgstr "Bilaketa '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Baliogabeko hilabete eguna: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Ezin da %s blokeatu\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Posta berria "
+
+@@ -3649,20 +3728,20 @@ msgstr "Jatorrizko mezua ez da ikusgarria bistaratze mugatu honetan"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Jatorrizko mezua ez da ikusgarria bistaratze mugatu honetan"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Bilaketa geldiarazirik."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Ezin da %s gehitu"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3674,69 +3753,69 @@ msgstr[1] "Mezu ezabatuak markatzen..."
+ msgid "Can't open trash folder"
+ msgstr "Ezin karpetan gehitu: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Irakurritako mezuak %s-ra mugitu?"
+ msgstr[1] "Irakurritako mezuak %s-ra mugitu?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Ezabatutako %d mezua betirako ezabatu?"
+ msgstr[1] "Ezabatutako %d mezuak betirako ezabatu?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Irakurritako mezuak %s-ra mugitzen..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Postakutxak ez du aldaketarik"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d utzi, %d mugiturik, %d ezabaturik"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d utzi, %d ezabaturik"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " %s sakatu idatzitarikoa aldatzeko"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "'toogle-write' erabili idazketa berriz gaitzeko"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Postakutxa idaztezin bezala markatuta. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Postakutxa markaturik"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (uneko ordua:%c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s irteera jarraian%s --]\n"
+@@ -3745,55 +3824,55 @@ msgstr "[-- %s irteera jarraian%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Pasahitza(k) ahazturik"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Mezua ezin da erantsia bidali. PGP/MIME erabiltzea itzuli?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Mezua ezin da erantsia bidali. PGP/MIME erabiltzea itzuli?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP deitzen..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Mezua ezin da erantsia bidali. PGP/MIME erabiltzea itzuli?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Eposta ez da bidali"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME mezuak ez dira onartzen edukian gomendiorik ez badute"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP-gakoak ateratzen saiatzen...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME ziurtagiria ateratzen saiatzen..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3802,7 +3881,7 @@ msgstr ""
+ "[-- Errorea: zatianitz/sinatutako protokolo ezezaguna %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3811,7 +3890,7 @@ msgstr ""
+ "[-- Errorea: konsistentzi gabeko zatianitz/sinaturiko estruktura --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3820,7 +3899,7 @@ msgstr ""
+ "[-- Kontuz: Ezin dira %s/%s sinadurak egiaztatu. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3828,7 +3907,7 @@ msgstr ""
+ "[-- Hurrengo datuak sinaturik daude --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3836,7 +3915,7 @@ msgstr ""
+ "[-- Kontuz: Ez da sinadurarik aurkitu. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3855,242 +3934,242 @@ msgstr "S/MIME deitzen..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Izena ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Baliozko Nork: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Baliozko Nori ..: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Tekla Erabilera .: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Tekla Erabilera .: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Hatz-marka: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Serial-Zb .: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Emana : "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Azpigakoa ....: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "errorea CMS protokoloa gaitzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "errorea gpgme datu objektua sortzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "errorea datu objektua esleitzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "errorea datu objektua atzera eraman: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "errorea datu objektua irakurtzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "errorea '%s' hartzailea gehitzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "ez da '%s' gako sekretua aurkitu: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "'%s' gako sekretu espezifikazio anbiguoa"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "errorea'%s' gako sekretua ezartzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "errorea PKA sinadura notazioa ezartzean: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "errorea datuak enkriptatzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "errorea datuak sinatzerakoan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Abisua: Gakoetako bat errebokatua izan da\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Abisua: sinadura sortzeko erabilitako gakoa iraungitze data: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Abisua: Ziurtagiri bat behintzat iraungi egin da\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Abisua: Sinadura iraungitze data: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Ezin da egiaztatu gakoa edo ziurtagiria falta delako\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL ez da erabilgarri\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "CRL erabilgarria zaharregia da\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Politika behar bat ez da aurkitu\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Sistema errore bat gertatu da"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "KONTUAZ: PKA sarrera ez da sinatzaile helbidearen berdina: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA egiaztaturiko sinatzaile helbidea: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "KONTUZ: EZ dugu ezagutzarik gakoa behean agertzen den pertsonarena dela frogatzen duenik\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ABISUA: Gakoa ez da aurrerantzean behean agertzen den pertsonarena\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ABISUA: Ez da egia gakoa aurrerantzean behean agertzen den pertsonarena dela\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Sortu %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Errorea gako argibideak eskuratzen: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ #, fuzzy
+ msgid "Good signature from:"
+ msgstr "Hemendik ondo sinaturik: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ #, fuzzy
+ msgid "*BAD* signature from:"
+ msgstr "Hemendik ondo sinaturik: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ #, fuzzy
+ msgid "Problem signature from:"
+ msgstr "Hemendik ondo sinaturik: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ #, fuzzy
+ msgid " expires: "
+ msgstr " ezizena: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Sinadura argibide hasiera --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Errorea: huts egiaztatzerakoan: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Hasiera idazkera (sinadura: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Amaiera idazkera ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4098,7 +4177,7 @@ msgstr ""
+ "[-- Sinadura argibide amaiera --] \n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4107,21 +4186,26 @@ msgstr ""
+ "[-- Errorea: desenkriptatzerakoan huts: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Errorea gako argibideak eskuratzen: "
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Errorea: desenkriptazio/egiaztapenak huts egin du: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP mezua arrakastatsuki desenkriptatu da"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Errorea: huts datuak kopiatzerakoan\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4129,11 +4213,11 @@ msgstr ""
+ "[-- PGP MEZU HASIERA --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP PUBLIKO GAKO BLOKE HASIERA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4141,19 +4225,19 @@ msgstr ""
+ "[-- PGP SINATUTAKO MEZUAREN HASIERA --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP MEZU BUKAERA--]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP PUBLIKO GAKO BLOKE AMAIERA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP SINATUTAKO MEZU BUKAERA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4161,11 +4245,11 @@ msgstr ""
+ "[-- Errorea: ezin da PGP mezuaren hasiera aurkitu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Errorea: ezin da behin-behineko fitxategi sortu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4173,7 +4257,7 @@ msgstr ""
+ "[-- Hurrengo datuak PGP/MIME bidez sinatu eta enkriptaturik daude --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4181,24 +4265,20 @@ msgstr ""
+ "[-- Hurrengo datuak PGP/MIME bidez enkriptaturik daude --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME bidez sinatu eta enkriptaturiko datuen amaiera --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME bidez enkriptaturiko datuen amaiera --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP mezua arrakastatsuki desenkriptatu da"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Ezin da PGP mezua desenkriptatu"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4206,7 +4286,7 @@ msgstr ""
+ "[-- hurrengo datuak S/MIME bidez sinaturik daude --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4214,34 +4294,34 @@ msgstr ""
+ "[-- hurrengo datuak S/MIME bidez enkriptaturik daude --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME bidez sinaturiko datuen amaiera --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME bidez enkriptaturiko datuen amaiera --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Ezin da erabiltzaile ID hau bistarazi (kodeketa ezezaguna)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Ezin da erabiltzaile ID hau bistarazi (kodeketa baliogabea)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Ezin da erabiltzaile ID hau bistarazi (DN baliogabea)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Baliogabea]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4249,95 +4329,95 @@ msgstr[0] "Gako mota ..: %s, %lu bit %s\n"
+ msgstr[1] "Gako mota ..: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "enkriptazioa"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "sinatzen"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "ziurtapena"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Indargabetua]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Iraungia]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Desgaitua]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Datuak batzen..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Errorea jaulkitzaile gakoa bilatzean: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Errorea: ziurtagiri kate luzeegia - hemen gelditzen\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Gako IDa: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start hutsa: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next hutsa: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Pareko gako guztiak iraungita/errebokatua bezala markaturik daude"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Aukeratu "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Gakoa egiaztatu "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP eta S/MIME gako parekatzea"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP gako parekatzea"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME gako parekatzea"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "gako parekatzea"
+
+@@ -4345,59 +4425,59 @@ msgstr "gako parekatzea"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Gako hau ezin da erabili: iraungita/desgaitua/errebokatuta"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID-a denboraz kanpo/ezgaitua/ukatua dago. Zihur zaude gakoa erabili nahi duzula?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID-a ez da baliozkoa. Zihur zaude gakoa erabili nahi duzula?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID bakarrik marginalki erabilgarria da. Zihur zaude gakoa erabili nahi duzula?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID-ak mugagabeko balioa du. Zihur zaude gakoa erabili nahi duzula?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "\"%s\" duten gakoen bila..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "ID-gakoa=\"%s\" %s-rako erabili?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "%s-rako ID-gakoa sartu: "
+@@ -4406,16 +4486,16 @@ msgstr "%s-rako ID-gakoa sartu: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "ez da '%s' gako sekretua aurkitu: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Mesedez sar ezazu gako-ID-a: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Errorea gako argibideak eskuratzen: "
+@@ -4423,102 +4503,102 @@ msgstr "Errorea gako argibideak eskuratzen: "
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP Gakoa %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkript, (s)ina, sin (a) honela, (b)iak, (p)gp or (g)arbitu?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "esabpg"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)nkrippt, (s)ina, sin(a)tu hola, (b)iak, s/(m)ime edo (g)abitu?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "esabmg"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkript, (s)ina, sin (a) honela, (b)iak, (p)gp or (g)arbitu?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "esabpg"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)nkrippt, (s)ina, sin(a)tu hola, (b)iak, s/(m)ime edo (g)abitu?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "esabmg"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)nkript, (s)ina, sin (a) honela, (b)iak, (p)gp or (g)arbitu?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "esabpg"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)nkrippt, (s)ina, sin(a)tu hola, (b)iak, s/(m)ime edo (g)abitu?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "esabmg"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Huts bidaltzailea egiaztatzerakoan"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Ezin izan da biltzailea atzeman"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Sar PGP pasahitza:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Errorea: Ezin da PGP azpiprozesua sortu --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4529,16 +4609,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP mezua arrakastatsuki desenkriptatu da"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4546,132 +4626,132 @@ msgstr ""
+ "[-- Errorea: ezin da PGP azpiprozesua sortu --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Deskribapenak huts egin du"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Ezin da PGP azpiprozesua ireki"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Ezin da PGP deitu"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)barnean"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "esabg"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "esabg"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabg"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabg"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabig"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)nkript, (s)ina, sign (a)tu hola, (b)iak, %s, edo (g)arbitu?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabg"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP gakoa eskuratzen..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Aurkitutako gako guztiak denboraz kanpo, errebokatutarik edo ezgaiturik daude"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "aurkitutako PGP gakoak <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "\"%s\" duten PGP gakoak"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Ezin da /dev/null ireki"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP Gakoa %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Sartu S/MIME pasahitza:"
+
+@@ -4680,7 +4760,7 @@ msgstr "Sartu S/MIME pasahitza:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Denboraz kanpo "
+
+@@ -4689,7 +4769,7 @@ msgstr "Denboraz kanpo "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Baliogabea "
+
+@@ -4698,7 +4778,7 @@ msgstr "Baliogabea "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Errebokaturik "
+
+@@ -4707,7 +4787,7 @@ msgstr "Errebokaturik "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Fidagarria "
+
+@@ -4716,7 +4796,7 @@ msgstr "Fidagarria "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Egiaztatu gabea"
+
+@@ -4725,7 +4805,7 @@ msgstr "Egiaztatu gabea"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Egiaztaturik "
+
+@@ -4734,60 +4814,60 @@ msgstr "Egiaztaturik "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Ezezaguna "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME ziurtagiria aurkiturik \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID-a ez da baliozkoa. Zihur zaude gakoa erabili nahi duzula?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "IDgakoa sartu: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Ez da (baliozko) ziurtagiririk aurkitu %s-rentzat"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Errorea: Ezin da OpenSSL azpiprozesua sortu"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Auzolagunengatik ezin da ziurtagiria jaso"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "ziurtagiri gabea"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "ez dago postakutxarik"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Ez dago irteerarik OpenSSL-tik..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Ezin da sinatu. Ez da gakorik ezarri. Honela sinatu erabili."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Ezin da OpenSSL azpiprozesua ireki"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4795,19 +4875,19 @@ msgstr ""
+ "[-- OpenSSL irteeraren bukaera --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Errorea: Ezin da OpenSSL azpiprozesua sortu--]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Honako datu hauek S/MIME enkriptatutik daude --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Hurrengo datu hauek S/MIME sinaturik daude --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4815,7 +4895,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME enkriptaturiko duen amaiera --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4824,170 +4904,170 @@ msgstr ""
+ "[-- S/MIME sinatutako datuen amaiera. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkrip, (s)inatu, enript (h)onez, sinatu hol(a), (b)iak) edo (g)arbitu?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eshabg"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkrip, (s)inatu, enript (h)onez, sinatu hol(a), (b)iak) edo (g)arbitu?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "eshabg"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)nkrip, (s)inatu, enript (h)onez, sinatu hol(a), (b)iak) edo (g)arbitu?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "eshabg"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Hautatu algoritmo familia: (1) DES, (2) RC2, (3) AES, edo (g)arbitu?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123g"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) DES-Hirukoitza?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s ez da baliozko datu-bidea"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Zerbitzariak konexioa itxi du"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP zerbitzariak ez du autentifikazioa onartzen"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Ez da autentifikatzailerik aukeran"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL egiaztapenak huts egin du"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "%s-rekiko konexioa itxia"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Mezuen zerrenda eskuratzen..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Mezu berriak bilatzen..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "ezin da posta behin-behineko karpetan idatzi: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "%s-ra konektatzen..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Ez dago ezer egiterik"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Ezin egiaztatu %s egoera: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Mezuak zerbitzaritik ezabatzen..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Saio asten..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Mezu berriak bilatzen..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s ez da baliozko datu-bidea"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4999,7 +5079,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Huts maito: lotura analizatzean\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6146,187 +6226,187 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "S/MIME aukerak ikusi"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Menu honetan ezin da egin"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "AurrekoOrria"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "HurrengoOrria"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Ikusi gehigar."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Hurrengoa"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Mezuaren bukaera erakutsita dago"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Mezuaren hasiera erakutsita dago"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Laguntza erakutsirik dago"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Ez dago gakoarteko testu gehiago"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Ez dago gakogabeko testu gehiago gakoarteko testuaren ondoren"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Espresioan errorea: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Espresio hutsa"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Bilaketa komadoa ezarri gabea"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Autoikusketarako komandoa deitzen: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Baliogabeko hilabete eguna: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Baliogabeko hilabetea: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Data erlatibo baliogabea: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Ez dago irakurgabeko mezurik"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Postakutxa irekitzean errorea"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Postakutxa irekitzean errorea"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Ezin da /dev/null ireki"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "patroiean akatsa: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "galdutako parametroa"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "parentesiak ez datoz bat: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: patroi eraldatzaile baliogabea"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: ez da onartzen modu honetan"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "galdutako parametroa"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "patroi hutsa"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "errorea:%d aukera ezezaguna (errore honen berri eman)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Bilaketa patroia konpilatzen..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Markaturiko mezuetan komandoa abiarazten..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ez eskatutako parametroetako mezurik aurkitu"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Bilatzen..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Bilaketa bukaeraraino iritsi da parekorik aurkitu gabe"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Bilaketa hasieraraino iritsi da parekorik aurkitu gabe"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Bilaketa geldiarazirik"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "TOP komandoa ez du zerbitzariak onartzen"
+
+@@ -6334,7 +6414,7 @@ msgstr "TOP komandoa ez du zerbitzariak onartzen"
+ msgid "Can't write header to temporary file"
+ msgstr "Ezin da burua fitxategi tenporalean gorde"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "UIDL komandoa ez du zerbitzariak onartzen"
+
+@@ -6349,7 +6429,7 @@ msgstr[1] "Mezu sarrera baliogabekoa. Saia zaitez postakutxa berrirekitzen."
+ msgid "POP host is not defined"
+ msgstr "POP ostalaria ez dago ezarririk"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s ez da baliozko datu-bidea"
+@@ -6382,153 +6462,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d-tik %d mezu irakurririk]"
+ msgstr[1] "%s [%d-tik %d mezu irakurririk]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Mezuen zerrenda eskuratzen..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Mezu ezabatuak markatzen..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Ezin da mezua fitxategi tenporalean gorde"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autentifikatzen (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP data-marka baliogabea"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autentifikatzen (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP autentifikazioak huts egin du"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "USER komandoa ez du zerbitzariak onartzen"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL egiaztapenak huts egin du"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Okerreko SMTP URLa: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Ezin dira mezuak zerbitzarian utzi"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Errorea zerbitzariarekin konektatzerakoan: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "POP Zerbitzariarekiko konexioa ixten..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Mezu indizea egiaztatzen..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Konexioa galdua. POP zerbitzariarekiko konexio berrasi?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Atzeratutako mezuak"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Ez da atzeraturiko mezurik"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Baliogabeko S/MIME burukoa"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Kriptografia baliogabeko burukoa"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Mezua desenkriptatzen..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Bilaketa berria"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Aliasa egin"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Erantzunaren zai..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Bilaketa: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Bilaketa '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Bilaketa komadoa ezarri gabea"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Hodia"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Inprimatu"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Gordetzen..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Gehigarria gordea"
+ msgstr[1] "Gehigarria gordea"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "KONTUZ! %s gainetik idaztera zoaz, Jarraitu ?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Gehigarria iragazirik"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Iragazi honen arabera: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Komandora hodia egin: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Ez dakit nola inprimatu %s gehigarriak"
+@@ -6536,57 +6616,57 @@ msgstr "Ez dakit nola inprimatu %s gehigarriak"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Markaturiko mezua(k) inprimatu?"
+ msgstr[1] "Markaturiko mezua(k) inprimatu?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Gehigarria inprimatu?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Ezin da enkriptaturiko mezua desenkriptratu"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Gehigarriak"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Hemen ez dago erakusteko azpizatirik"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Ezi da gehigarria POP zerbitzaritik ezabatu"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Ezi da gehigarria POP zerbitzaritik ezabatu"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Enkriptaturiko mezuetatik gehigarriak ezabatzea ez da onartzen"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Enkriptaturiko mezuetatik gehigarriak ezabatzea ez da onartzen"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Zati anitzetako gehigarrien ezabaketa bakarrik onartzen da"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Bakarrik message/rfc822 motako zatiak errebota ditzakezu"
+
+@@ -6623,7 +6703,7 @@ msgstr "Ezin da %s sortu"
+ msgid "Can't find any tagged messages"
+ msgstr "Ezin da markaturiko mezurik aurkitu"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Ez da eposta zerrendarik aurkitu"
+
+@@ -6638,67 +6718,67 @@ msgstr "Ezin dira markaturiko mezu guztiak deskodifikatu. MIME enkapsulatu best
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Bakarrik message/rfc822 motako zatiak errebota ditzakezu"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Gehitu"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Txertatu"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Ados"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Mixmaster-en type2.zerrenda ezin da eskuratu"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Berbidaltze katea aukeratu"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Errorea: %s ezin da katearen azken berbidaltze bezala erabili"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster kateak %d elementuetara mugaturik daude"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Berbidaltzaile katea dagoeneko betea dago"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Zuk dagoeneko kateko lehenengo elementua aukeraturik duzu"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Zuk dagoeneko kateko azkenengo elementua aukeraturik duzu"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Miixmasterrek ez du Cc eta Bcc burukorik onartzen"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Mesedez ezarri mixmaster erabiltzen denerako ostalari izen egokia"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Errorea mezua bidaltzerakoan, azpiprozesua uzten %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Errorea mezua bidaltzerakoan"
+
+@@ -6729,42 +6809,42 @@ msgstr "Gehigarri bezala berbidali?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "%s%s-ra erantzun?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Jarraitu %s%s-ra?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Erantzunean mezua gehitu?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Markaturiko mezua gehitzen..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Ezin dira eskaturiko mezu guztiak gehitu"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Gehigarri gisa berbidali?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Berbidalketa mezua prestatzen..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: ez da onartzen modu honetan"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "gehigarriak testua balira ikusi"
+@@ -6773,196 +6853,196 @@ msgstr "gehigarriak testua balira ikusi"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Ez dago postakutxarik.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Atzeraturiko mezuak hartu?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Berbidalitako mezua editatu?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Aldatugabeko mezua ezeztatu?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Aldatugabeko mezua ezeztatuta"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Eposta ez da bidali"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Mezua atzeraturik"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Ez dago gairik, bidalketa ezeztatzen?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Ez da gairik ezarri"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Ez da gairik ezarri"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "gehigarriaren transferentzi kodifikazioa editatu"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Mezua bidaltzen..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Ezin da mezua bidali"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Bigarren planoan bidaltzen"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mezua bidalirik"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Ez da birbidalketa parametroa aurkitu [errore honen berri eman]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s ez da gehiago existitzen"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s ez da fitxategi erregularra"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Ezin da mezua bidali."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Ezin da %s ireki"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Errorea mezua bidaltzerakoan, azpiprozesua irteten %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Postaketa prozesuaren irteera"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "%s berbidalketa inprimakia prestatzerakoan IDN okerra"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP saioak huts egin du: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP saioak huts egin du: ezin da %s ireki"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Okerreko SMTP URLa: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL egiaztapenak huts egin du"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI autentifikazioak huts egin du"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP zerbitzariak ez du autentifikazioa onartzen"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP saioak huts egin du: irakurketa errorea"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP saioak huts egin du: idazketa errorea"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Postakutxa ordenatzen..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Ezin da ordenatze funtzioa aurkitu [zorri honen berri eman]"
+
+@@ -7012,11 +7092,11 @@ msgid ""
+ "under certain conditions; type 'neomutt -vv' for details.\n"
+ msgstr ""
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Konpilazio aukerak:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Konpilazio aukerak:"
+diff --git a/po/fi.po b/po/fi.po
+index d0654498c..80670249d 100644
+--- a/po/fi.po
++++ b/po/fi.po
+@@ -17,7 +17,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2018-09-19 03:36+0200\n"
+ "Last-Translator: Flammie A Pirinen <flammie@iki.fi>\n"
+ "Language-Team: Finnish\n"
+@@ -27,16 +27,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(h)ylkää, hyväksy (k)erran, hyväksy (a)ina, (s)kippaa"
++
++msgid "roas"
++msgstr "hkas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(h)ylkää, hyväksy (k)erran, hyväksy (a)ina"
++
++msgid "roa"
++msgstr "hka"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(h)ylkää, hyväksy (k)erran, (s)kippaa"
++
++msgid "ros"
++msgstr "hks"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(h)ylkää, hyväksy (k)erran"
++
++msgid "ro"
++msgstr "hk"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Poistu"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Poista"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Palauta"
+
+@@ -44,18 +68,18 @@ msgstr "Palauta"
+ msgid "Select"
+ msgstr "Valitse"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Ohje"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Aliaksia ei ole"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliakset"
+
+@@ -64,51 +88,51 @@ msgstr "Aliakset"
+ msgid "Alias as: "
+ msgstr "Aliakseksi: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Tällä nimellä on jo alias"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Varoitus: Tämä alias ei ehkä toimi, korjataanko?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Osoite: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Viallinen IDN: %s"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Henkilönnimi: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Hyväksytäänkö?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Tallenna tiedostoon: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Virhe luettaessa aliastiedostoa"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Virhe lisättäessä aliasta"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias lisätty"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Virhe haettaessa aliastiedostosta"
+
+@@ -117,7 +141,7 @@ msgstr "Virhe haettaessa aliastiedostosta"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s puuttuu, luodaanko se?"
+@@ -126,8 +150,8 @@ msgstr "%s puuttuu, luodaanko se?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Ei voitu luoda kohdetta %s: %s"
+@@ -137,7 +161,7 @@ msgstr "Ei voitu luoda kohdetta %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -146,7 +170,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -155,7 +179,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -164,7 +188,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -176,7 +200,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "salaus"
+@@ -184,7 +208,7 @@ msgstr "salaus"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -192,7 +216,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -201,7 +225,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Ei toimivaa sertifikaattia kohteelle %s"
+@@ -213,12 +237,12 @@ msgstr "Ei toimivaa sertifikaattia kohteelle %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Avaa postilaatikko"
+@@ -230,14 +254,14 @@ msgstr "Avaa postilaatikko"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Luodaanko %s?"
+@@ -245,7 +269,7 @@ msgstr "Luodaanko %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Poista"
+
+@@ -253,9 +277,9 @@ msgstr "Poista"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -263,17 +287,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -282,7 +306,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -290,7 +314,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -298,12 +322,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -311,13 +335,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Virhe skannatessa hakemistoa"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Poistetaanko %s?"
+@@ -335,7 +359,7 @@ msgstr "Poistetaanko %s?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Ei voitu avata postilaatikkoa %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "virhe gpgme-kontekstin luonnissa: %s"
+@@ -408,471 +432,583 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Viestivälimuisti ei ole hakemisto: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Chdir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Siirry"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maski"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Lista"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Tilaa"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Poista tilaus"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Ota kiinni"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s ei ole hakemisto"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Tilatut uutisryhmät"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Uutisryhmät palvelimella [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Postilaatikot [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Tilattu [%s], Tiedostomaski: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Hakemisto [%s], Tiedostomaski: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Ei voida liittää hakemistoa"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Ei tiedostoja jotka täsmäävät maskiin"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Luonti toimii vain IMAP-postille"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Uudellennimeys toimii vain IMAP-laatikoille"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Poisto toimii vain IMAP-laatikoille"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "näytä nykyisen valitun tiedoston nimi"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Poistetaanko %s?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Laatikko poistettu"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Laatikon poisto ei onnistunut"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Laatikkoa ei poistettu"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Vaihda hakemistoa: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Virhe skannatessa hakemistoa"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Tiedostomaski: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Järjestele (p)äivän, (a)akkosten, (k)oon, ku(v)auksen, uusien (m)äärän mukaan laskevasti, vai ei lai(n)kaan?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Järjestele (p)äivän, (a)akkosten, (k)oon, ku(v)auksen, uusien (m)äärän mukaan, vai ei lai(n)kaan?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "pakvmun"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Uusi tiedostonimi: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Ei voida näyttää tiedostoa"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Virhe tiedostoa näytettäessä"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Tilauskuvio: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Tilauksen poistokuvio: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Ei uutisryhmiä jotka täsmäävät maskiin"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: väri ei toimi tässä terminaalissa"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: väriä ei löydy"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: objektia ei löydy"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: liian vähän argumentteja"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: attribuuttia ei ole olemassa"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: liikaa argumentteja"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "oletusvärejä ei tueta"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Virhe: score: ei ole numero"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Tarkistetaanko allekirjoitus"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Ei voitu kirjoittaa väliaikaistiedostoon"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Ei voitu luoda filtteriä näyttämistä varten"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Ei voitu kopioida viestiä"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-allekirjoitus varmistettiin"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME-sertifikaatin omistaja ei täsmää lähettäjään"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Varoitus: Viestin osa on allekirjoittamatta"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-allekirjoitusta ei voitu vahvistaa"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-allekirjoitus vahvistettu"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-allekirjoitusta ei voitu vahvistaa"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Virhe toiminnolla %s"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Komento: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Varoitus: viestissä ei ole From:-kenttää"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Käännytä viesti osoitteeseen: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Käännytä tägätyt viestit osoitteeseen: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Virhe osoitteen jäsennyksessä"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Käännytä viesti kohteeseen %s?"
+ msgstr[1] "Käännytä viestit kohteeseen %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Viestiä ei käännytetty."
+ msgstr[1] "Viestejä ei käännytetty."
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Viesti käännytetty."
+ msgstr[1] "Viestit käännytetty."
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Ei voida aloittaa filtteröintiprosessia"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Ohjaa putkitse komennolle: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Tulostuskomento puuttuu"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Tulostetaanko"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Tulostetaanko tägätyt viestit?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Viesti tulostettu"
+ msgstr[1] "Viestit tulostettu"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Viestiä ei voitu tulostaa"
+ msgstr[1] "Viestejä ei voitu tulostaa"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Järjestä laskevasti (P)äiväys/(L)äh/(V)ast/(O)tsikko/(T)o/(S)äie/(E)päjärj/(K)oko/s(C)ore/sp(A)m/(M)erkintä?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Järjestä (P)äiväys/(L)äh/(V)ast/(O)tsikko/(T)o/(S)äie/(E)päjärj/(K)oko/s(C)ore/sp(A)m/(M)erkintä?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "plvotsekcam"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Komentorivikomento: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Decode-save postilaatikkoon"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decode-save merkitty postilaatikkoon"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Decrypt-save postilaatikkoon"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Decrypt-save merkitty postilaatikkoon"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Tallenna postilaatikkoon"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Tallenna merkitty postilaatikkoon"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Decode-copy postilaatikkoon"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decode-copy merkitty postilaatikkoon"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Decrypt-copy postilaatikkoon"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Decrypt-copy merkitty postilaatikkoon"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Kopio postilaatikkoon"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopioi merkitty postilaatikkoon"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopioidaan kohteeseen%s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Sisältötyypiksi asetettiin %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Konvertoidaanko muotook %s lähetettäessä?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Sisältötyypiksi asetettiin %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Merkistöksi asetettiin %s; ei konvertoida."
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Merkistöksi asetettiin %s; konvertoidaan."
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: liian vähän argumentteja"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: ei ryhmän nimeä"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "argumentit loppuivat"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Virhe: polun %s rakentaminen ei onnistu"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Virhe: asetustiedoston %s latauksissa on sykli"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Virhe tiedostossa %s rivillä %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Virhe tiedostossa %s rivillä %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: virheet kohteessa %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: lukeminen peruttu liian monen virheen takia kohteessa %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d irhe kohteessa %s"
++msgstr[1] "source: %d virhettä kohteessa %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: ei osoitetta"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Varoitus: Viallinen IDN %s aliaksessa %s"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "liitteet: dispositio puuttuu"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Nykyiset liiteasetukset:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "liitteet: dispositio on väärä"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: liikaa argumentteja"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sryhmä: -rx tai -addr puuttuu"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sryhmä: varoitus: huono IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Virhe: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "viallinen otsakekenttä"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: tuntematon muuttuja"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s on asettamatta"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: virhe kohteessa %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source: tiedostoa %s ei voi ladata"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: ei täsmää"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: ei täsmää"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "%s tilattu"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Ryhmää %s ei voitu tilata"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Ei kansiota"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "epäliitteet: dispositio puuttuu"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "epäliitteet: viallinen dispositio"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Kansion %s tilaus poistettu"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Kansion %s tilausta ei voitu poistaa"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Ei liitteitä"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subjet: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Security: "
+
+@@ -883,75 +1019,75 @@ msgstr "Security: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Sign as: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Newsgroups: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Followup-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Lähetä"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Peru"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Vastaanottaja"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopio"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Aihe"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Liitä tiedosto"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Kuvaus"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Uutisryhmät"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Ei mitään"
+@@ -960,7 +1096,7 @@ msgstr "Ei mitään"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -968,14 +1104,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "kyllä"
+@@ -986,7 +1122,7 @@ msgstr "kyllä"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -994,51 +1130,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Ei tuettu"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Allekirjoita, salaa"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Salaa"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Allekirjoita"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Ei mitään"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (sisäll. PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc-moodi)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<oletus>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Salaa käyttäen: "
+
+@@ -1047,12 +1183,12 @@ msgstr "Salaa käyttäen: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<ei ketjuja määritelty>"
+
+@@ -1063,7 +1199,7 @@ msgstr "<ei ketjuja määritelty>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] on kadonnut"
+@@ -1075,232 +1211,351 @@ msgstr "%s [#%d] on kadonnut"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] on muokattu, päivitetäänkö koodaus?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Liitteet"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Ainoaa liitettä ei voi poistaa"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Virheellinen IDN %s: %s"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Liite on jo ensimmäisenä"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Kekseistä osaa ei voida siirtää"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Liite on jo viimeisenä"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Vaihtoehtojen ryhmittely vaatii vähintään 2 merkittyä viestiä"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Monikielinen ryhmittely vaatii vähintään 2 merkittyä viestiä"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Kaikissa osissa ei ole 'Content-Language'-ostaketta, jatketaanko joka tapauksessa?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Ei lähetetä tätä viestiä"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Liitetään valittua tiedostoa..."
+ msgstr[1] "Liitetään valittuja tiedostoja..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Ei voida liittää kohdetta %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Avaa postilaatikko josta liitetään viesti"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Avaa uutisryhmä josta liitetään viesti"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Ei voitu avata postilaatikkoa %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Ei viestejä tässä kansiossa"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Tägää viestit jotka haluat liittää"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Ei voida liittää"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Uudelleenkoodaus vaikuttaa vain tekstiliitteisiin"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Tätä liitettä ei konvertoida"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Tämä liite konvertoidaan"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Tyhjä 'Content-Language'"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Virheellinen koodaus"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Tallennetaanko viestin kopio?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Lähetä liite nimellä: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Uudelleennimeä:"
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "stat ei onnistunut %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Uusi tiedosto: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Sisältötyypin muoto on perusosa/aliosa"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Tuntematon sisältötyyppi %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Tiedostoa ei voitu luoda %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Tässä on epäonnistunut yritys liitteen tuottamisessa"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Palautetaanko lykätty viesti?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Kirjoita viesti postilaatikkoon"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Kirjoitetaan viestiä kohteesee %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Viesti kirjoitettu"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "PGP-sovellusta ei ole asetettu"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME on jo valittu, poistetaanko ja jatketaan?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "S/MIME-sovellusta ei ole asetettu"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP on jo valittu, poistetaanko ja jatketaan?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Ei voi lisätä ilman append- tai close-hookkia: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Ei voitu lukita postilaatikkoa."
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Puretaan %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Ei voida tunnistaa pakatun tiedoston sisältöä"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Postilaatokkotoimintoja tyypille %d ei löydy"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Pakkaus epäonnistui: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Postilaatikkotyyppiä ei tueta lisäyksessä"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Ei voida synkata pakattua tiedostoa ilman close-hookkia"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Pakataan kohdetta %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Pakattu lisäys kohteeseen %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
++#, c-format
++msgid "Error. Preserving temporary file: %s"
++msgstr "Virhe. Varattaessa väliaikaistiedostoa: %s"
++
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Virheellinen suhteellinen päiväys: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Virheellinen suhteellinen päiväys: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Virhe: score: ei ole numero"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Väärä arvo asetuksella %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Virheellinen kuukausi: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Asetusta %s ei voi asettaa tai poistaa sivuttimesta"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "Asetusta %s ei voi asettaa tai poistaa sivuttimesta"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Virhe: score: ei ole numero"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Virhe: score: ei ole numero"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Virheellinen suhteellinen päiväys: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Väärä arvo asetuksella %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Virhe: arvo %s ei ole salittu valitsimelle -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: tuntematon muuttuja"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Virheellinen suhteellinen päiväys: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Virheellinen suhteellinen päiväys: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Käyttäjänimi kohteessa %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Salasana kohteelle %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "OAUTH refresh komento puuttuu"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Refresh-komento ei toimi"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Komento palautti tyhjän merkkijonon"
++
++#: conn/connaccount.c:191
+ #, c-format
+-msgid "Error. Preserving temporary file: %s"
+-msgstr "Virhe. Varattaessa väliaikaistiedostoa: %s"
++msgid "OAUTH token is too big: %ld"
++msgstr ""
+
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+@@ -1322,7 +1577,7 @@ msgstr "Yhdistetään kohteeseen %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Ei voitu yhdistää kohteeseen %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "tuntematon virhe"
+
+@@ -1336,23 +1591,23 @@ msgstr "Virhe kohteen %s kanssa keskustellessa (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Yhteys kohteeseen %s on peruttu"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Tuntematon SASL-profiili"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Virhe SASL-yhteyden allokoinnissa"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Virhe SASL-turvallisuusasetusten määrittämisessä"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Virhe ulkoisen SASL-turvallisuusvahvuuden määrittämisessä"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Virhe ulkoisen SASL-käyttäjänimen asetuksessa"
+
+@@ -1365,132 +1620,108 @@ msgstr "Esiyhdistyskomento epäonnistui"
+ msgid "Connection to %s closed"
+ msgstr "Yhteys kohteeseen %s on katkaistu"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Täytetään entropialähdettä: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "kohteen %s käyttöoikeudet ovat vaaralliset"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL on pois käytöstä vajavaisen entropian takia"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Tuntematon"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[ei voida laskea]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[viallinen päiväys]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Palvelimen sertifikaatti ei kelpaa"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Palvelimen sertifikaatti on vanhentunut"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Ei löytynyt tarpeeksi entropiaa järjestelmästä"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "ei voitu löytää sertifikaatin kohdetta (subject)"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "ei voitu löytää sertifikaatin yleisnimeä (cn)"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "sertifikaatin omistaja on eri kuin hostname %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Sertifikaatin omistaja:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Sertifikaatin myöntäjä:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Käypä sertifikaatti"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " ...%s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-sormenjälki: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA256-sormenjälki: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "SSL-sertifikaatin tarkastus (sertifikaatti %zu/%zu ketjussa)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "hkas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(h)ylkää, hyväksy (k)erran, hyväksy (a)ina, (s)kippaa"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(h)ylkää, hyväksy (k)erran, hyväksy (a)ina"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(h)ylkää, hyväksy (k)erran, (s)kippaa"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(h)ylkää, hyväksy (k)erran"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Poistu "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Varoitus: sertifikaatin tallennus epäonnistui"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sertifikaatti tallennettu"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sertifikaatin palvelintesti epäonnistui: %s"
+@@ -1498,15 +1729,15 @@ msgstr "Sertifikaatin palvelintesti epäonnistui: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Varoitus: Ei voitu asettaa TLS:n SNI-palvelinnimeä"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O-virhe"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL epäonnistui: %s"
+@@ -1514,89 +1745,73 @@ msgstr "SSL epäonnistui: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Ei voitu yhdistää SSL-kontekstiin"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Varoitus: ssl_verify_partial_chains-asetus epäonnistui"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Ei voitu hakea sertifikaattia vertaiselta"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Sertifikaatin varmennusvirhe (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Sertifikaatti ei ole X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Virhe alustettaessa gnutls-sertifikaattidataa"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Virhe käsiteltäessä sertifikaattidataa"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Varoitus: Palvelinsertifikaatti ei ole käypä vielä"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Varoitus: Palvelinsertifikaatti on vanhentunut"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Varoitus: Palvelinsertifikaatti on poistettu käytöstä"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "Varoitus: Palvelimen verkkonimi ei täsmää sertifikaattiin"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Varoitus: Palvelinsertifikaatin allekirjoittaja ei ole CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Varoitus: Palvelimen sertifikaatti on allekirjoitettu epäturvalliseslla algoritmilla"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "hka"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "hk"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Kaikki protokollat TLS/SSL-yhteyttä varten ovat pois käytöstä"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Salauksen valintaa $ssl_ciphers-muuttujalla ei tueta"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-yhteys %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Virhe: Ei TLS-sokettia avoinna"
+
+@@ -1615,38 +1830,18 @@ msgstr "Tunnelivirhe yhteydessä kohteeseen %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunneli kohteeseen %s palautti virheen %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] "Pituuslaskelmat ovat pielessä %ld tavulla"
+ msgstr[1] "Pituuslaskelmat ovat pielessä %ld tavulla"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Viestille ei ole purkualgoritmia"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "kyllä"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ei"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Lopetetaanko neomutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Paina jotain näppäintä jatkaaksesi..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (? listaa): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1668,7 +1863,7 @@ msgstr ""
+ "~M messages sama kuin ~m, mutta otsakkeiden kanssa\n"
+ "~p tulosta viesti\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1690,20 +1885,20 @@ msgstr ""
+ "~? tämä ohje\n"
+ ". rivillä yksinään lopettaa\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: virheellinen viestinnumero.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Lopeta viesti rivillä jolla on pelkkä .)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Ei postilaatikkoa.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Viesti sisältää:\n"
+
+@@ -1711,19 +1906,19 @@ msgstr "Viesti sisältää:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(jatka)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "puuttuva tiedostonimi.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Ei rivejä viestissä.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: tuntematon muokkauskomento (~? näyttää ohjeita)\n"
+@@ -1770,19 +1965,73 @@ msgstr "Ei voitu avata kansiota: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "multipart-viestillä ei ole rajoitinmerkkiparametriä"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Ketjutus ei ole päällä"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Aseta lippu"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Poista lippu"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: väri ei toimi tässä terminaalissa"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: väriä ei löydy"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: objektia ei löydy"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: attribuuttia ei ole olemassa"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "oletusvärejä ei tueta"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Virhe: score: ei ole numero"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "kyllä"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ei"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Lopetetaanko neomutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Paina jotain näppäintä jatkaaksesi..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (? listaa): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1803,23 +2052,23 @@ msgstr "[-- Automaattisesti näytetään komennolla %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Avataan automaattinen näyttö: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Ei voida luoda filtteriä"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Ei voitu suorittaa %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Näytetään stderr komennosta %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Virhe: message/external-body ei sisällä access-type-parametriä --]\n"
+
+@@ -1838,7 +2087,7 @@ msgstr "[-- Virhe: message/external-body ei sisällä access-type-parametriä --
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1867,7 +2116,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1881,7 +2130,7 @@ msgstr[1] "[-- Liite %s/%s (koko %s) on poistettu --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1892,12 +2141,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Liite %s/%s on poistettu --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nimi: %s --]\n"
+@@ -1905,7 +2154,7 @@ msgstr "[-- nimi: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1920,7 +2169,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1929,91 +2178,91 @@ msgstr ""
+ "[-- Liite %s/%s ei ole mukana, --]\n"
+ "[-- eikä annettua access-typeä %s tueta --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Virhe: Ei voitu näyttää tyypin Multipart/Alternative osia --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Liite #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Liite #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Yhtä tai useampaa osa viestistä ei voitu näyttää"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Ei voitu avata muistivirtaa"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Ei voitu avata väliaikaistiedostoa"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Ei voitu avata muistivirtaa uudelleen"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Virhe: multipart/signed ilman protokollaa"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Tämä on liitetiedosto (avaa osa komennolla '%s) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- tyyppiä %s/%s ei tueta (avaa osa komennolla '%s') --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Tämä on liitetiedosto ('view-attachments' pitää olla asetettu näppäimeen) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- tyyppiä %s/%s ei tueta ('view-attachments' pitää olla asetettu näppäimeen) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Tämä on liite --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s ei ole tuettu --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "Virhe: ilmoita tästä viasta"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<tuntematon>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Yleiset näppäinasettelut:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Näppäimettömät funktiot:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Ohje %s"
+@@ -2030,41 +2279,41 @@ msgstr "postilaatikon oikopolku laventui tyhjäksi ilmaukseksi"
+ msgid "badly formatted command string"
+ msgstr "epäkelpo komentojono"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: unhook * ei toimi hookin sisältä."
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tuntematon hook-tyyppi: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Ei voitu poistaa kohdetta %s kohteesta %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: valikko puuttuu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: valikko puuttuu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: valikko puuttuu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Ei voitu luoda väliaikaistiedostoa %s"
+@@ -2101,28 +2350,28 @@ msgstr "GSSAPI-autentikointi epäonnistui"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN on poistettu käytöstä palvelimella"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Kirjaudutaan siäsään..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Kirjautuminen epäonnistui"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Authentikoidaan (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-autentikointi epäonnistui"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autentikoidaan (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-autentikointi epäonnistui"
+
+@@ -2169,89 +2418,79 @@ msgstr "Uudelleennimeys epäonnistui: %s"
+ msgid "Mailbox renamed"
+ msgstr "Postilaatikko uudelleennimetty"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Postilaatikko %s@%s on katkaistu"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Yhteys %s aikakatkaistu"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "IMAP-palvelin on niin vanha ettei neomutt toimi sen kanssa."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Otsakehausta puuttuu otsakkeen nimi: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Palvelimen muokattua hakua ei tueta: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE epäonnistui: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Suljetaan yhteyttä %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Salataanko yhteys TLS:llä?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Ei voitu neuvotella TLS-yhteyttä"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Salattu yhteys ei käytettävissä"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Tilataan hakemistoa %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Poistetaan hakemiston %s tilaus..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s tilattu"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Kansion %s tilaus poistettu"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopioidaan %d viestiä kansioon %s..."
+ msgstr[1] "Kopioidaan %d viestejä kansioon %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Luodaanko %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Poisto epäonnistui"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2259,43 +2498,43 @@ msgstr[0] "Merkataan %d viesti poistetuksi..."
+ msgstr[1] "Merkataan %d viestiä poistetuksi..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Tallennetaan muutettua viestiä... [%d/%d]"
+ msgstr[1] "Tallennetaan muutettuja viestejä... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Virhe tallennettaessa lippuja, suljetaanko joka tapauksessa?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Virhe tallennettaessa lippuja."
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Poistetaan viestejä palvelimelta..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE epäonnistui"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Valitaan %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Virhe avattaessa postilaatikkoa"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP-palvelin ei tue omia merkintöjä"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Vialliset IMAP-merkinnät "
+
+@@ -2305,7 +2544,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Perutaanko lataus ja suljetaan postilaatikko?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "muisti loppui"
+
+@@ -2323,7 +2562,7 @@ msgstr "Haetaan uusia merkintöjä..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Ei voida hakea otsakkeita tämän IMAP-version palvelimelta"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Haetaan viestien otsakkeita..."
+
+@@ -2336,152 +2575,152 @@ msgstr "Ladataan viestiä verkkoon..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopioidaan viestiä %d kohteeseen %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Haetaan viestejä..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Viesti-indeksi on pielessä, joten kannattaa avata postilaatikko uudelleen"
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Jatketaanko?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Lopeta"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Tallenna"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Posti"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Vastaa"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Ryhmä"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Viesti"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Vastine"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Ei postilaatikoita auki"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Ei viestejä"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Ei näkyviä viestejä"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Kirjoitussuojattu postilaatikko"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funktio ei toimi viestinliitetilassa"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Operaatio on estetty ACL:n perusteella"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Ei voida vaihtaa kirjoitustilaan kirjoitussuojatussa postilaatikossa"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Muutokset kansioon tallennetaan poistuttaessa"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Muutoksia kansioon ei tallenneta"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s ei ole postilaatikko"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Postilaatikkoa on muokattu muualla, joten liput voivat olla pielessä."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Uusi viesti postilaatikossa"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Postilaatikkoa on muokattu muualla"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Ei merkittyjä viestejä"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Ei mitään tehtävissä"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Anna viesti-ID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Artikkelilla ei ole viitettä vanhempaan"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Juuriviesti ei ole näkyvissä tässä rajatussa näkymässä"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Haetaan %s palvelimelta..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Artikkelia %s ei ole palvelimella"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Ei Viesti-Id:tä, joten ei voida suorittaa."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Tässä ketjussa ei ole poistettuja viestejä"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Siirry viestiin: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumentin pitää olla viestinnumero"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Viestinnumero ei kelpaa"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Se viesti ei ole näkyvissä"
+
+@@ -2494,37 +2733,37 @@ msgstr "Se viesti ei ole näkyvissä"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Ei voitu poistaa viestejä"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Poista täsmäävät viestit: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Ei rajoittavaa kuviota"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Rajoite: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Rajoita viestit täsmäämään: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Kaikkiin viesteihin täsmää rajoite \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Lopetetaanko neomutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Merkitse täsmäävät viestit: "
+
+@@ -2532,196 +2771,196 @@ msgstr "Merkitse täsmäävät viestit: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Ei voitu perua viestien poistoa"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Peru täsmäävien viestien poisto: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Peru täsmäävien viestien merkintä: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Kirjauduttiin ulos IMAP-palvelimelta"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Ei virtuaalikansiota, joten peruttiin"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Haun luonti epäonnistui joten peruutetaan"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Ei voitu lukea ketjua joten peruttiin"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Kansiosta puuttuu merkintätuki, joten peruutetaan"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Ei merkintää, joten peruttiin"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Päivitetään merkinnät..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Merkintöjen muokkaaminen epäonnistui joten peruutetaan"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Ei hakua, joten peruttiin"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Ikkunoidut haut poissa köytöstä"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Notmuch-vkansiota ei ole ladattuna"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Avaa postilaatikko kirjoitussuojattuna"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Avaa postilaatikko"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Ei uusia viestejä postilaatikoissa"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Avaa uutosryhmä kirjoitussuojattuna"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Avoin uutisryhmä"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Poistutaanko neomuttista tallentamatta?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Ei voitu katkaista ketjuja"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Ketju rikki"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Ketjua ei voi rikkoa, kun viesti ei ole osa ketjua"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Ei voitu yhdistää ketjuja"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Ei Viesti-ID-otsaketta ketjun yhdistämiseksi"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Ensin pitää merkitä viesti linkitettäväksi"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Ketjut linkitetty"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Ei ketjuja linkitetty"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Viimeisessä viestissä"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Ei poistetusta palautettuja viestejä"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Ensimmäisessä viestissä"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Ei uusia viestejä tässä rajallisessa näkymässä"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Ei uusia viestejä"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Ei lukemattomia viestejä tässä rajallisessa näkymässä"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Ei lukemattomia viestejä"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Haku jatkoi ylhäältä"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Haku jatkoi alhaalta"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Ei voitu merkitä viestejä"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Ei voitu vaihtaa uudeksi"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Ei enää ketjuja"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Ensimmäisessä ketjussa"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Ketjussa on lukemattomia viestejä"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Ei voitu poistaa viestejä"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Ei voitu muokata viestiä"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2731,7 +2970,7 @@ msgstr[1] "%d merkintää muutettu."
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Ei muuttuneita merkintöjä"
+
+@@ -2739,275 +2978,140 @@ msgstr "Ei muuttuneita merkintöjä"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Ei voitu merkitä viestejä lukemattomiksi"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Makronäppäimet: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "viestin pikanäppäin"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Viesti yhdistetty makroon %s."
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Ei viesti-ID:tä makrolle"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Vastataanko postitse kuten lähettäjä pyytää?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Vastaaminen ryhmään ei ole sallittu, ehkä se on moderoitu, jatketaanko?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Ei voitu perua viestin poistoa"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Virhe komentorivillä: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Virhe komentorivillä: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "ei voitu ratkaista laitenimeä uname()-funktiolla"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: ei ryhmän nimeä"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "argumentit loppuivat"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Virhe: polun %s rakentaminen ei onnistu"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Virhe: asetustiedoston %s latauksissa on sykli"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Virhe tiedostossa %s rivillä %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Virhe tiedostossa %s rivillä %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: virheet kohteessa %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: lukeminen peruttu liian monen virheen takia kohteessa %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d irhe kohteessa %s"
+-msgstr[1] "source: %d virhettä kohteessa %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: ei osoitetta"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Varoitus: Viallinen IDN %s aliaksessa %s"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "liitteet: dispositio puuttuu"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Nykyiset liiteasetukset:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "liitteet: dispositio on väärä"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sryhmä: -rx tai -addr puuttuu"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sryhmä: varoitus: huono IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Virhe: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "viallinen otsakekenttä"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: tuntematon muuttuja"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s on asettamatta"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: virhe kohteessa %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source: tiedostoa %s ei voi ladata"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: ei täsmää"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: ei täsmää"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Ryhmää %s ei voitu tilata"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Ei kansiota"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "epäliitteet: dispositio puuttuu"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "epäliitteet: viallinen dispositio"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Kansion %s tilausta ei voitu poistaa"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: tuntematon komento"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Väärä arvo asetukselle %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Asetusta %s ei voi asettaa tai poistaa sivuttimesta"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Asetusta %s ei voi asettaa liittämistilassa"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Yhdistys '%s' tarviaa aliasta '%s' Kokeile: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Makrosilmukka havaittu"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Näppäin on asettamatta"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Näppäin on asettamatta, näppäimellä %s saa ohjeita."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: tyhjä avainsekvenssi"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Funktio %s ei ole saatavilla valikossa %s"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: tyhjä näppäinsekvenssi"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: ei argumentteja"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: funktiota ei ole"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Näppäimet (^G peruu): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Merkki = %s, Oktaali = %o, Desimaali = %d"
+@@ -3031,7 +3135,7 @@ msgstr "Mailcap-tietue tyypille %s puuttuu"
+ msgid "Scanning %s..."
+ msgstr "Skannataan kohdetta %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Luetaan kohdetta %s..."
+@@ -3046,13 +3150,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): tiedoston ajan asetus ei onnistunut"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Kirjoitetaan kohdetta %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3093,7 +3197,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3175,54 +3279,54 @@ msgstr ""
+ " -z Avaa ensimmäinen tai määritelty (-f) postilaatikko tahi\n"
+ " lopeta välittömästi palautusarvolla 1"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Virhe terminaalin alustuksessa"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ei voitu ratkaista käyttäjänimeä"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ei voitu ratkaista kotihakemistoa"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Virhe: arvo %s ei ole salittu valitsimelle -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Virhe mailto:-linkin jäsennyksessä"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Ei vastaanottajia"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Valitsin -E ei toimi yhdessä vakiosyötteen kanssa"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Ei voitu avata viestimallinetta: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: ei voitu liittää tiedostoa"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Ei uutta postia postilaatikoissa"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Tulevien viestien postilaatikoita ei ole määritelty"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Postilaatikko on tyhjä"
+
+@@ -3264,52 +3368,52 @@ msgstr "Ei voitu uudelleenavata postilaatikkoa"
+ msgid "Can't write message"
+ msgstr "Ei voitu kirjoittaa viestiä"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Hyppää kohteeseen: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Virheellinen indeksi"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Ei tietueita"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Ei voida vierittää alemmas"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Ei voida vierittää ylemmäs"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Ensimmäisellä sivulla"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Viimeisellä sivulla"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Viimeisessä tietueessa"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Ensimmäisessä tietueessa"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Hae: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Hae takaperin: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ei löytynyt"
+
+@@ -3352,20 +3456,20 @@ msgstr "Odotetaan flock-yritystä... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Historiatiedoston muotovirhe (rivillä %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Ei voitu luoda väliaikaistiedostoa"
+
+@@ -3384,7 +3488,7 @@ msgstr "Virheenjäljitystasolla %d tiedostoon %s"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Lokitasolla %d tiedostoon %s"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Virhe: polun konversiossa absoluuttiseksi"
+
+@@ -3407,17 +3511,17 @@ msgstr "Signaali %d (%s)... lopetetaan.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Signaali %d... lopetetaan.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "avaus /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "luku /dev/urandom: %s"
+@@ -3425,146 +3529,119 @@ msgstr "luku /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Tiedosto on hakemisto, tallennetaanko sen alle? k(y)llä, (e)i, k(a)ikki"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yea"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Tiedosto on hakemisto, tallennetaanko sen alle?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Tiedosto hakemistossa: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Tiedosto on olemassa, k(o)rvaa, j(a)tka tai (p)eru?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oap"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Ei voida tallentaa POP-laatikkoon"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Lisätäänkö viestit kohteeseen %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Ei voitu tallentaa viestiä uutispalvelimelle"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Käyttäjänimi kohteessa %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Salasana kohteelle %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "OAUTH refresh komento puuttuu"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Refresh-komento ei toimi"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Komento palautti tyhjän merkkijonon"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Ei täsmää nimimallineeseen, jatketaanko?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcapin compose-tietueessa pitää olla %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Ei voitu avata tiedostoa otsakkeiden jäsentämiseksi"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Ei voitu avata tiedostoa otsakkeiden poistamiseksi"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Virhe uudelleennimeämisessä"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Ei mailcapin compose-tietuetta kohteelle %s, luodaan tyhjä tiedosto"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcapin edit-tietueessa pitää olla %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Ei mailcapin edit-tietuetta kohteelle %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Ei löytynyt sopivaa mailcap-tietueita, näytetään tekstinä."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-tyyppiä ei ole määritelty, joten liitettä ei voi avata."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Komento: %-20.20s Kuvaus: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Komento: %-30.30s Liite: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Liite: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Liite: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Kirjoittamisvirhe"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Tätä ei voi tulostaa"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Haku"
+
+@@ -3573,21 +3650,21 @@ msgstr "Haku"
+ msgid "History '%s'"
+ msgstr "Historia %s"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Väärä arvo asetuksella %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Virhe: Ei voitu ladata lua-tulkkia"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Ei voitu ladata lua-koodia: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Uutta postia kohteessa "
+
+@@ -3608,20 +3685,20 @@ msgstr "Juuriviesti ei ole näkyvissä tässä rajatussa näkymässä"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Ylempi viesti ei ole näkyvissä tässä rajatussa näkymässä"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Lukeminen kohteesta %s on keskeytetty..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Ei voida kirjoittaa kohteeseen %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "viestiä ei poistettu"
+@@ -3631,69 +3708,69 @@ msgstr[1] "viestejä ei poistettu"
+ msgid "Can't open trash folder"
+ msgstr "Ei voitu avata roskahakemistoa"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Merkitäänkö kaikki artikkelit luetuiksi?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Siirretäänkö %d luettu viesti kohteeseen %s?"
+ msgstr[1] "Siirretäänkö %d luettua viestiä kohteeseen %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Poistetaanko %d poistettu viesti lopullisesti?"
+ msgstr[1] "Poistetaanko %d poistettua viesti lopullisesti?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Siirretään luettuja viestejä kohteeseen %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Postilaatikko ei muuttunut"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d tallella, %d siirretty, %d poistettu"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d tallella, %d poistettu"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " %s vaihtaa kirjoitussuojausta"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Komento toggle-write palauttaa kirjoitussuojaamattoman tilan"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Postilaatikko on merkitty kirjoitussuojatuksi. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Postilaatikon tila on tallennettu"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (aika nyt: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s tuloste seuraa%s --]\n"
+@@ -3702,52 +3779,52 @@ msgstr "[-- %s tuloste seuraa%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Salasanoja unohdettiin"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline-PGP ei toimi liitteiden kanssa, käytetäänkö sittenkin PGP/MIMEä?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Viestiä ei lähetetty: inline-PGP ei toimi liitteiden kanssa"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline-PGP ei toimi tekstimuodossa format=flowed, käytetäänkö sittenkin PGP/MIMEä?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Viestiä ei lähetetty: inline-PGP ei toimi tekstimuodossa format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Kutsutaan PGP:tä..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Viestiä ei voi lähettää sisällytettynä, käytetäänkö sittenkin PGP/MIMEä?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Viestiä ei lähetetty"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-viestejä ilman sisältövihjeitä ei tueta"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Yritetään hakea PGP-avaimia...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Yritetäään hakea S/MIME-sertifikaatteja..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3756,7 +3833,7 @@ msgstr ""
+ "[-- Virhe: Tuntematon multipart/signed-protokolla %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3764,7 +3841,7 @@ msgstr ""
+ "[-- Virhe: Puuttuva tai viallinen multipart/signed-allekirjoitus --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3773,7 +3850,7 @@ msgstr ""
+ "[-- Varoitus: Ei voitu tarkistaa %s/%s allekirjoitusta. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3781,7 +3858,7 @@ msgstr ""
+ "[-- Seuraava data on allekirjoitettu --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3789,7 +3866,7 @@ msgstr ""
+ "[-- Varoitus: Ei löydetty allekirjoituksia. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3808,229 +3885,229 @@ msgstr "Kutsutaan S/MIMEä..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nimi: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Voimassa lähtien:"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Voimassa saakka:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Avaintyyppi: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Avaimen käyttö: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Sormenjälki: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Sarjanumero: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Myöntäjä: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Aliavain: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "virhe CMS-protokollan käyttöönotossa: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "virhe gpgpme-dataobjektin luonnissa: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "virhe data-objektin allokoinnissa: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "virhe data-objektin takaisinkelauksessa: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[väliaikaistiedosto]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "virhe data-objketin lukemisessa: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "virhe vastaanottajan %s lisäyksessä: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "salaista avainta %s ei löydetty: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "salaisen avaimen määritys %s täsmää moneen"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "virhe salaisen avaimen %s asettamisessa: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "virhe asetettaessa PKA-allekirjoitusnotaatiota: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "virhe salatessa dataa: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "virhe allekirjoittaessa dataa: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as on asettamatta eikä oletusavainta ole määritelty tiedostossa ̃~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Varoitus: Yksi avaimista on poistettu käytöstä\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Varoitus: Avain jolla allekirjoitus on luotu vanheni: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Varoitus: Ainakin yksi avain on vanhennut\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Varoitus: allekirjoitus vanheni:"
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Ei voida varmistaa puuttuvan avaimen tai sertifikaatin takia\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL puuttuu\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "CRL on liian vanha\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Käytäntövaatimusta ei saavutettu\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Järjestelmävirhe"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "Varoitus: PKA-tietue ei täsmää allekirjoittajan osoitteeseen: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA-varmistettu allekirjoitusosoite on: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "Varoitus: Ei ole tiedossa kuuluuko avain yllä mainitulle henkilölle\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "Varoitus: Avain ei varmasti kuulu yllä mainitulle henkilölle\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "Varoitus: Ei ole varmaa kuuluuko avain yllämainitulle henkilölle\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "avain-ID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "ei sormenjälkeä allekirjoitukselle"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "luotu: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Virhe haettaessa avaimen tietoja avaimelle %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Hyvä allekirjoitus käyttäjälle:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "HUONO allekirjoitus käyttäjälle:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Ongelmallinen allekirjoitus käyttäjälle:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " vanhenee:"
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Allekirjoituksen tiedot --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Virhe: varmennus epäonnistui: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Notaation alku (allekirjoittaja: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Notaation loppu ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4038,7 +4115,7 @@ msgstr ""
+ "[-- Allekirjoitustietojen loppu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4047,21 +4124,26 @@ msgstr ""
+ "[-- Virhe: purku ei onnistunut: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Virhe avainta vietäessä: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Virhe: purku tai varmistus ei onnistunut: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-viesti purettiin"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Virhe: datan kopiointi ei onnistunut\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4069,11 +4151,11 @@ msgstr ""
+ "[-- PGP-VIESTIN ALKU --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- JULKISEN PGP-AVAIMEN ALKU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4081,19 +4163,19 @@ msgstr ""
+ "[-- PGP-ALLEKIRJOITETUN VIESTIN ALKU --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP-VIESTIN LOPPU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- JULKISEN PGP-AVAIMEN LOPPU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP-ALLEKIRJOITETUN VIESTIN LOPPU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4101,11 +4183,11 @@ msgstr ""
+ "[-- Virhe: PGP-viestin alkua ei löydy --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Virhe: ei voitu luoda väliaikaistiedostoa --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4113,7 +4195,7 @@ msgstr ""
+ "[-- Seuraava data on PGP/MIME-allekirjoitettu ja salattu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4121,24 +4203,20 @@ msgstr ""
+ "[-- Seuraava data on PGP/MIME-salattu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME-allekirjoitetun ja salatun datan loppu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME-salatun datan loppu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-viesti purettiin"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Ei voitu purkaa PGP-viestiä"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4146,7 +4224,7 @@ msgstr ""
+ "[-- Seuraava data on S/MIME-allekirjoitettu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4154,34 +4232,34 @@ msgstr ""
+ "[-- Seuraava data on S/MIME-salattu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME-allekirjoitetun datn loppu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME-salatun datan loppu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Ei voida näyttää käyttäjätunnusta (tuntematon koodaus)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Ei voida näyttää käyttäjätunnusta (huono koodaus)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Ei voida näyttää käyttäjätunnusta (huono domain)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Kelvoton]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4189,94 +4267,94 @@ msgstr[0] "%s, %lu-bittinen %s\n"
+ msgstr[1] "%s, %lu-bittinen %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "salaus"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "allekirjotus"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "sertifikaation"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Käytöstä poistettu]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Vanhentunut]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Ei käytössä]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Haetaan dataa..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Ei löytynyt myöntäjän avainta: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Virhe: ylipitkä sertifikaattiketju, lopetettiin tähän\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Avaimen ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_stasrt-virhe: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next-virhe: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Kaikki täsmäävät avaimet on merkitty vanhenneiksi tai käytöstä poistetuiksi"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Valitse "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Tarkasta avain "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP ja S/MIME täsmäävät"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-avaimet täsmäävät"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-avaimet täsmäävät"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "avaimet täsmäävät"
+
+@@ -4284,55 +4362,55 @@ msgstr "avaimet täsmäävät"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s ”%s”"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Tätä avainta ei voi käyttää, koska se on vanhentunut/pois käytöstä/poistettu käytöstä"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID on vanhentunut/pois käytöstä/poistettu käytöstä, käytetäänkö siitä huolimatta?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID ei ole toimiva, käytetäänkö siitä huolimatta?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID on rajallisesti toimiva, käytetäänkö siitä huolimatta?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID:n toimivuutta ei tiedetä, käytetäänkö siitä huolimatta?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Etsitään täsmääviä avaimia %s..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "Ei täsmääviä avaimia kohteelle \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Käytetäänkö avainta keyID = ”%s” kohteelle %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Anna keyID kohteelle %s: "
+@@ -4341,16 +4419,16 @@ msgstr "Anna keyID kohteelle %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "salaista avainta %s ei löydetty: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Anna avaimen tunnus: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Virhe avainta vietäessä: %s"
+@@ -4358,92 +4436,92 @@ msgstr "Virhe avainta vietäessä: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-avain 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP-protokolla puuttuu"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS-protokolla puuttuu"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME-(a)llekirjoita, -allekirjoita (n)imellä, (p)gp, (t)yhjennä tai poista (o)ppenc käytöstä?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "anpto"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP-(a)llekirjoita, -allekirjoita (n)imellä, (s)/mime, (t)yhjennä tai poista (o)ppenc käytöstä?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "ansto"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME-sa(l)aa, -(a)llekirjoita, allekirjoita (n)imellä, (m)olemmat, (p)gp, (t)yhjennä, tai poista (o)ppenc käytöstä?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "lanmpto"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP-sa(l)aa, -(a)llekirjoita, allekirjoita (n)imellä, (m)olemmat, (s)/mime, (t)yhennä, tai poista (o)ppenc käytöstä?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "lanmsto"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME-sa(l)aa, -(a)llekirjoita, allekirjoita (n)imellä, (m)olemmat, (p)gp, (t)yhjennä, tai poista (o)ppenc käytöstä?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "lanmpto"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP-sa(l)aa, -(a)llekirjoita, -allekirjoita (n)imellä, (m)olemmat, (s)/mime, tai (t)yhjennä?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "lanmst"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Ei voitu varmistaa lähettäjää"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Ei voitu selvittää lähettäjää"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "PGP-salasana:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Virhe: ei voitu luoda PGP-aliprosessia --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4454,16 +4532,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-viesti on salaamatta"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Sisäinen virhe, lähetä vikailmoitus."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4471,125 +4549,125 @@ msgstr ""
+ "[-- Virhe: PGP-prosessin käynnistys ei onnistunut --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Purku epäonnistui"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Ei voitu avata PGP-prosessia"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Ei voitu kutsua PGP:tä"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(I)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP-(a)llekirjoita, (n)imellä, %s-formaatti, (t)yhjennä, (o)ppenc pois?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "anito"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP-(a)llekirjoita, (n)imellä, (t)yhjennä, (o)ppenc pois?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "anto"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP-(s)alaa, -(a)llekirjoita, (n)imellä, (m)olemmat, %s-formaatti, (t)yhjennä, tai (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "sanmito"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP-(s)alaa, -(a)llekirjoita, (n)imellä, (t)yhjennä tai (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "sanmto"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP-(s)alaa, -(a)llekirjoita, (n)imellä, (m)olemmat, %s-formaatti, tai (t)yhjennä?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "sanmit"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP-(s)alaa, -(a)llekirjoita, (n)imellä, (m)olemmat tai (t)yhjennä"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "sanmt"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Haetaan PGP-avainta..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Kaikki täsmäävät avaimet ovat joko vanhentuneet, poistettu käytöstä tai pois päältä"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-avaimet täsmäävät <%s>."
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-avaimet täsmäävät %s"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Ei voitu avata laitetta /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-avain %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "S/MIME-salasana:"
+
+@@ -4598,7 +4676,7 @@ msgstr "S/MIME-salasana:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Vanhennut "
+
+@@ -4607,7 +4685,7 @@ msgstr "Vanhennut "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Viallinen "
+
+@@ -4616,7 +4694,7 @@ msgstr "Viallinen "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Poistettu käytöstä "
+
+@@ -4625,7 +4703,7 @@ msgstr "Poistettu käytöstä "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Luotettu "
+
+@@ -4634,7 +4712,7 @@ msgstr "Luotettu "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Varmistamaton"
+
+@@ -4643,7 +4721,7 @@ msgstr "Varmistamaton"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Varmistettu "
+
+@@ -4652,58 +4730,58 @@ msgstr "Varmistettu "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Tuntematon "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-sertifikaatit täsmäävät %s"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID:hen ei luoteta, käytetäänkö siitä huolimatta?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Anna avain-ID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Ei toimivaa sertifikaattia kohteelle %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Virhe: ei voitu luoda OpenSSL-prosessia"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Sertifikaatin nimi: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "certfile puuttuu"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "mbox puuttuu"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Ei tulostetta OpenSSL:ltä..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Ei voida allekirjoittaa: Avain määrittelemättä. Valitse allekirjoita nimellä."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Ei voitu avata OpenSSL-prosessia"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4711,19 +4789,19 @@ msgstr ""
+ "[-- OpenSSL-tulosteen loppu --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Virhe: ei voitu luoda OpenSSL-prosessia --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Seuraava data on S/MIME-salattu --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Seuraava data on S/MIME-allekirjoitettu --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4731,7 +4809,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME-salatun datan loppu. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4740,160 +4818,160 @@ msgstr ""
+ "[-- S/MIME-allekirjoitetun datan loppu. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME-(a)llekirjoita, -salaa (k)anssa, allek. (n)imellä, (t)yhjennä, tai (o)ppenc pois?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "aknto"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME-(s)alaa, -(a)llekirjoita, -salaa (k)anssa, -allek. (n)imellä, (m)olemmat, (t)yhjennä, tai (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "saknmto"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME-(s)alaa, (a)llekirjoita, -salaa (k)anssa, -allek. (n)imellä, (m)olemmat, tai (t)yhjennä?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "saknmt"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Valitse algoritmiperhe: (1) DES, (2) RC2, (3) AES tai (t)yhjennä"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123t"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) tripla-DES"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Ladataan ryhmälistaa välimuistista..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Ei uutispalvelinta määriteltynä"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s ei ole toimiva uutispalvelinmäärittely"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Palvelin katkaisi yhteyden"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Palvelin ei tue luintilaa"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Ei autentikoijia"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s-autentikointi epäonnistui"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Yhteys kohteeseen %s on katkaistu, yhdistetäänkö uudelleen?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Haetaan artikkeliluetteloa..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Haetaan uusia viestejä..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Ei voitu vaihtaa luintilaan"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Yhdistetty kohteeseen %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Postaus on ok"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Postaus ei ole ok"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Ei voitu postata artikkelia: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Ladataan uutisryhmälistaa palvelimelta %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Ladataan kuvauksia..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Tarkastetaan uusia ryhmiä..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Jälkeläisartikkeleja ei voi löytää koska palvelin ei tue XPAT-komentoa"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s ei ole toimiva uutisryhmämääritelmä"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Uutisryhmää %s ei ole palvelimella"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Uutisryhmä %s on poistettu palvelimelta"
+@@ -4905,7 +4983,7 @@ msgstr "ei voitu jäsentää notmuch-haun tyyppiä: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Nomuch-URIn jäsennys ei onnistunut: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6000,183 +6078,183 @@ msgstr "tee palkista näkyvä / näkymätön"
+ msgid "show S/MIME options"
+ msgstr "näytä S/MIME-asetukset"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Ei tässä valikossa"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Ed.Siv."
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Seur.siv."
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Näytä liite"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Seuraava"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "kaikki"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "loppu"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Viestin loppu näkyy"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Viestin alku näkyy"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Ohje näkyy"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Ei enää lainauksia"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Ei enää lainaamatont tekstiä lainausten jälkeen"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Virhe ilmauksessa: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Tyhjä ilmaus"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "OAUTH refresh komento puuttuu"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Avataan automaattinen näyttö: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Virheellinen kuukaudenpäivä: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Virheellinen kuukausi: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Virheellinen suhteellinen päiväys: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Ei nykyistä viestejä"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "Ei kontekstia"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Virhe avattaessa muistivirtaa"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Virhe avattaessa muistivirtaa uudestaan"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Ei voitu avata laitetta /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "virhe ilmauksen kohdassa: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "puuttuvua ilmaus: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "pariton sulje: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: viallinen ilmaus-parametri"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: ei tuettu tässä tilassa"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "puuttuva parametri"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "tyhjä kuvio"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "virhe: palvelimen haku toimii vain IMAPilla"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "virhe: tuntematon operaatio %d (ilmoita viasta)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Käännetään hakuilmausta..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Suoritetaan viestintäsmäyskomentoa..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ei täsmääviä viestejä"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Haetaan..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Haku eteni loppuun ilman täsmäyksiä"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Haku eteni alkuun ilman täsmäyksiä"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Haku katkaistu"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Komento TOP ei toimi tällä palvelimella"
+
+@@ -6184,7 +6262,7 @@ msgstr "Komento TOP ei toimi tällä palvelimella"
+ msgid "Can't write header to temporary file"
+ msgstr "Ei voida kirjoittaa otsaketta väliaikaistiedostoon"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Komento UIDL ei toimi tällä palvelimella"
+
+@@ -6199,7 +6277,7 @@ msgstr[1] "%d viestiä on hävinyt, yritä avata postilaatikkoa uudelleen."
+ msgid "POP host is not defined"
+ msgstr "POP-palvelin on määrittelemättä"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s ei ole toimiva POP-polku"
+@@ -6232,152 +6310,152 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d/%d viesti luettu]"
+ msgstr[1] "%s [%d/%d viestiä luettu]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Haetaan viestiluetteloa..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Merkitään viestejä poistetuiksi..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Ei voitu kirjoittaa väliaikaistiedostoon"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autentikoidaan (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP-aikaleima on viallinen"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autentikoidaan (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP-autentilointi epäonnistui"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Komento USER ei toimi tällä palvelimella"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Autentikaatio epäonnistui"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Viallinen POP-verkko-osoite: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Ei voitu jättää viestejä palvelimelle"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Ei voitu yhdistää palvelimeen: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Suljetaan yhteyttä POP-palvelimeen..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Varmistetaan viesti-indeksejä..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Yhteys katkesi, yhdistetäänkö POP-palvelimelle uudestaan?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Lykättyjä viestejä"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Ei lykättyjä viestejä"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Viallinen S/MIME-otsake"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Viallinen crypto-otsake"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Puretaan viestin salausta..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Uusi haku"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Tee alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Odotetaan vastausta..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Haku: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Haku %s"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Hakukomentoa ei ole määritelty"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Putki"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Tulosta"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Tallennetaan..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Liite tallennettu"
+ msgstr[1] "Liite tallennettu"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "Varoitus: tiedostoa %s ollaan korvaamassa, jatketaanko?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Liite filtteröity"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtteröintikomento: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Putkikomento: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Ei tulostuskeinoa tyypin %s liitteille"
+@@ -6385,55 +6463,55 @@ msgstr "Ei tulostuskeinoa tyypin %s liitteille"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Tulostetaanko merkitty liite?"
+ msgstr[1] "Tulostetaanko %d merkittyä liitettä?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Tulostetaanko liite?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Rakenteelliset muutokset puretuissa liiitteissä eivät toimi"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Ei voitu purkaa salattua viestiä"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Liitteitä"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Ei aliosia näytettäväksi"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Ei voitu poistaa liitettä POP-palvelimelta"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Ei voitu poistaa liitettä uutisryhmäpalvelimelta"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Liitteiden poistoa salatuista viesteistä ei tueta"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Liitteiden poista allekirjoitetusta viestistä saattaa mitätöidä allekirjoituksen"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Vain multipart-liitteiden poisto on tuettu"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Vain message/rfc822-osia voi pompottaa"
+
+@@ -6469,7 +6547,7 @@ msgstr "Ei voitu luoda kohdetta %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Ei löytynyt merkittyjä viestejä"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Ei löytynyt postituslistoja"
+
+@@ -6483,67 +6561,67 @@ msgstr "Ei voitu purkaa kaikkia liitteitä, MIME-koodataanko muut?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Vain message/rfc822-osia kirjoittaa lähettäjälle"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Jatka perään"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Sisällytä"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<satunnainen>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Ei voitu hakea mixmasterin type2.listaa"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Valitse uudelleenpostitusketju"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Virhe: %s ei voi olla uudelleenpostitusketjun viimeinen osa"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster-ketjuissa voi olla enintään %d elementtiä."
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Uudelleenpostitusketju on jo tyhjä."
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Ketjun ensimmäinen elementti on jo valittu"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Ketjun viimeinen elementti on jo valittu"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster ei tue CC- tai BCC-otsakkeita"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Verkkonimimuuttujan pitää olla toimiva mixmasteria varten"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Virhe viestin lähetyksessä, lapsiprosessi palautti arvon %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Virhe viestin lähetyksessä"
+
+@@ -6574,42 +6652,42 @@ msgstr "Lähetetäänkö edelleen liitteenä?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Vastataanko osoitteeseen %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Vastineetko osoitteeseen %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Sisällytetäänkö viesti vastaukseen?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Sisällytetään lainattua viestiä..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Ei voitu sisällyttää kaikkia pyydettyjä viestejä"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Lähetetäänkö edelleen liitteenä?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Valmistellaan edelleenlähetettävää viestiä..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: ei tuettu tässä tilassa"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Tallennetaanko liitteet FCC-kansioon myös?"
+
+@@ -6617,191 +6695,191 @@ msgstr "Tallennetaanko liitteet FCC-kansioon myös?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Avaa postilaatikko"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Palautetaanko lykätty viesti?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Muokataanko edelleenlähetettävää viestiä?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Perutaanko muokkaamaton viesti?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Muokkaamaton viesti peruttu"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Crypto-backend on asettamatta, joten turvallisuusasetukset on pois käytöstä."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Artikkelia ei postattu"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Viesti lykätty"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Ei aihetta, perutaanko lähetys?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Ei aihetta"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Ei uutisryhmiä"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Ei liitteitä, perutaanko lähetys?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Viesti täsmää hakuun \"$abort_noattach_regex\", joten sitä ei lähetetä."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Lähetetään viestiä..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Ei voitu lähettää viestiä"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Lähetetää taustalla"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Artikkeli postattu"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Viesti lähetetty"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Ei rajamerkkiparametriä. (ilmoita ohjelmistovirheestä)"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s ei ole enää olemassa"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s ei ole tavallinen tiedosto"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Ei voitu löytää ainuttakaan mime.types-tiedostoa."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Ei voitu avata tiedostoa %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail pitää olla asetettuna jotta viestejä voi lähettää"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Virhe viestin lähetyksessä, lapsiprosessi palautti arvon %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Lähetysprosessin tuloste"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Huono IDN %s resent-from-otsakkeen valmistelussa"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-sessio epäonnistui: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-sessio epäonnistui: ei voitu avata kohdetta %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Viallinen SMTP-URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP-autentikointimenetelmä %s vaatii SASL:n"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s-autentikointi epäonnistui, yritetään seuraavaa menetelmää"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP-autentikaatio vaatii SASLia"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-palvelin ei tue autentikointia"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Ei lähettäjäosoitetta"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-sessio epäonnistui: lukuvirhe"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-sessio epäonnistui: kirjoitusvirhe"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Viallinen palvelinvastaus"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Järjestellään postilaatikkoa..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Ei voitu löytää järjestelyfunktiota (ilmoita ohjelmistoviasta)"
+
+@@ -6865,10 +6943,10 @@ msgstr ""
+ "Mutt is free software, and you are welcome to redistribute it\n"
+ "under certain conditions; lisätietoja komennolla `mutt -vv'.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Oletusasetukset:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Käännösaikaiset asetukset:"
+diff --git a/po/fr.po b/po/fr.po
+index 9b5da450d..c76d87c85 100644
+--- a/po/fr.po
++++ b/po/fr.po
+@@ -24,7 +24,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2017-02-10 12:46+0100\n"
+ "Last-Translator: Vincent Lefevre <vincent@vinc17.net>\n"
+ "Language-Team: Vincent Lefevre <vincent@vinc17.net>\n"
+@@ -34,16 +34,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)ejeter, accepter (u)ne fois, (a)ccepter toujours"
++
++#, fuzzy
++msgid "roas"
++msgstr "rua"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)ejeter, accepter (u)ne fois, (a)ccepter toujours"
++
++msgid "roa"
++msgstr "rua"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)ejeter, accepter (u)ne fois"
++
++#, fuzzy
++msgid "ros"
++msgstr "ru"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)ejeter, accepter (u)ne fois"
++
++msgid "ro"
++msgstr "ru"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Quitter"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Effacer"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Récup"
+
+@@ -51,18 +79,18 @@ msgstr "Récup"
+ msgid "Select"
+ msgstr "Sélectionner"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Aide"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Vous n'avez pas défini d'alias "
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Alias"
+
+@@ -71,53 +99,53 @@ msgstr "Alias"
+ msgid "Alias as: "
+ msgstr "Créer l'alias : "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Vous avez déjà défini un alias ayant ce nom "
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Attention : ce nom d'alias peut ne pas fonctionner. Corriger?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresse : "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Mauvais IDN : '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nom de la personne : "
+
+ # , c-format
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Accepter?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Sauver dans le fichier : "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Erreur en lisant le fichier d'alias"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Erreur en lisant le fichier d'alias"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias ajouté"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Erreur en se repositionnant (seek) dans le fichier d'alias"
+
+@@ -126,7 +154,7 @@ msgstr "Erreur en se repositionnant (seek) dans le fichier d'alias"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s n'existe pas. Le créer?"
+@@ -136,8 +164,8 @@ msgstr "%s n'existe pas. Le créer?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Impossible de créer %s : %s"
+@@ -147,7 +175,7 @@ msgstr "Impossible de créer %s : %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -156,7 +184,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -165,7 +193,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -174,7 +202,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -186,7 +214,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "chiffrage"
+@@ -194,7 +222,7 @@ msgstr "chiffrage"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -202,7 +230,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -211,7 +239,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Pas de certificat (valide) trouvé pour %s"
+@@ -223,12 +251,12 @@ msgstr "Pas de certificat (valide) trouvé pour %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Boîte aux lettres Fcc"
+@@ -240,7 +268,7 @@ msgstr "Boîte aux lettres Fcc"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+@@ -248,7 +276,7 @@ msgstr ""
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Créer %s?"
+@@ -256,7 +284,7 @@ msgstr "Créer %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Retirer"
+
+@@ -264,9 +292,9 @@ msgstr "Retirer"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -274,17 +302,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -293,7 +321,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -301,7 +329,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -309,12 +337,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -322,13 +350,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Erreur de lecture du répertoire"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Voulez-vous vraiment supprimer la boîte aux lettres \"%s\"?"
+@@ -347,7 +375,7 @@ msgid "Unable to open autocrypt database %s"
+ msgstr "Impossible d'ouvrir la BAL %s"
+
+ # , c-format
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "erreur lors de la création du contexte gpgme : %s"
+@@ -421,348 +449,294 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s n'est pas un répertoire"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Changement de répertoire"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Masque"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+ # , c-format
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Abonné à %s"
+
+ # , c-format
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Désabonné de %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+ # , c-format
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s n'est pas un répertoire"
+
+ # , c-format
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Abonné à %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+ # , c-format
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Boîtes aux lettres [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Abonné [%s], masque de fichier : %s"
+
+ # , c-format
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Répertoire [%s], masque de fichier : %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Impossible d'attacher un répertoire "
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Aucun fichier ne correspond au masque"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "La création n'est supportée que pour les boîtes aux lettres IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Le renommage n'est supporté que pour les boîtes aux lettres IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "La suppression n'est supportée que pour les boîtes aux lettres IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "afficher le nom du fichier sélectionné actuellement"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Voulez-vous vraiment supprimer la boîte aux lettres \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Boîte aux lettres supprimée"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "La suppression de la boîte aux lettres a échoué"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Boîte aux lettres non supprimée"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Changement de répertoire vers : "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Erreur de lecture du répertoire"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Masque de fichier : "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Tri inverse par (d)ate, (a)lphabétique, (t)aille ou (n)e pas trier?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Tri par (d)ate, (a)lphabétique, (t)aille ou (n)e pas trier?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nouveau nom de fichier : "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Impossible de visualiser un répertoire"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Erreur en essayant de visualiser le fichier"
+
+ # , c-format
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Abonné à %s"
+
+ # , c-format
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Désabonné de %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Aucun fichier ne correspond au masque"
+
+-# , c-format
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s : couleur non disponible sur ce terminal"
+-
+-# , c-format
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s : cette couleur n'existe pas"
+-
+-# , c-format
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s : cet objet n'existe pas"
+-
+-# , c-format
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s : pas assez d'arguments"
+-
+-# , c-format
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s : cet attribut n'existe pas"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: trop d'arguments"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "La couleur default n'est pas disponible"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Erreur : score : nombre invalide"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Vérifier la signature?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Impossible de créer le fichier temporaire "
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Impossible de créer le filtre d'affichage"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Impossible de copier le message"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Signature S/MIME vérifiée avec succès"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Le propriétaire du certificat S/MIME ne correspond pas à l'expéditeur"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Attention Une partie de ce message n'a pas été signée"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "La signature S/MIME n'a PAS pu être vérifiée"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Signature PGP vérifiée avec succès"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "La signature PGP n'a PAS pu être vérifiée"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Erreur en exécutant \"%s\" "
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Commande : "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Attention : le message ne contient pas d'en-tête From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Renvoyer le message à : "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Renvoyer les messages marqués à : "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Erreur de décodage de l'adresse "
+
+ # , c-format
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Renvoyer le message à %s?"
+ msgstr[1] "Renvoyer les messages à %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Message non renvoyé"
+ msgstr[1] "Messages non renvoyés"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Message renvoyé"
+ msgstr[1] "Messages renvoyés"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Impossible de créer le processus filtrant"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Passer à la commande : "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Aucune commande d'impression n'a été définie"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Imprimer le message?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Imprimer les messages marqués?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Message imprimé"
+ msgstr[1] "Messages imprimés"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -770,170 +744,345 @@ msgstr[0] "Le message n'a pas pu être imprimé"
+ msgstr[1] "Les messages n'ont pas pu être imprimés"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Tri inv (d)ate/(a)uteur/(r)eçu/(o)bjet/de(s)t/d(i)scus/aucu(n)/(t)aille/s(c)ore/s(p)am/(l)abel?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Tri (d)ate/(a)uteur/(r)eçu/(o)bjet/de(s)t/d(i)scus/aucu(n)/(t)aille/s(c)ore/s(p)am/(l)abel?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "darosintcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Commande shell : "
+
+ # , c-format
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Décoder-sauver vers une BAL"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Décoder-sauver les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Déchiffrer-sauver vers une BAL"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Déchiffrer-sauver les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Sauver vers une BAL"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Sauver les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Décoder-copier vers une BAL"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Décoder-copier les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Déchiffrer-copier vers une BAL"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Déchiffrer-copier les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Copier vers une BAL"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Copier les messages marqués vers une BAL"
+
+ # , c-format
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copie vers %s..."
+
+ # , c-format
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type changé à %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Convertir en %s à l'envoi?"
+
+ # , c-format
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type changé à %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Jeu de caractères changé à %s ; pas de conversion"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Jeu de caractères changé à %s ; conversion"
+
+-#: compose.c:99
++# , c-format
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s : pas assez d'arguments"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: pas de nom de groupe"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "pas assez d'arguments"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++# , c-format
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Erreur dans %s, ligne %d : %s"
++
++# , c-format
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Erreur dans %s, ligne %d : %s"
++
++# , c-format
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source : erreurs dans %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source : lecture interrompue car trop d'erreurs dans %s"
++
++# , c-format
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source : erreurs dans %s"
++msgstr[1] "source : erreurs dans %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias : pas d'adresse"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Attention : mauvais IDN '%s' dans l'alias '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments : pas de disposition"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "éditer la description de l'attachement"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments : disposition invalide"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: trop d'arguments"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup : il manque un -rx ou -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup : attention : mauvais IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "en-tête invalide"
++
++# , c-format
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s : variable inconnue"
++
++# , c-format
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s n'est pas positionné"
++
++# , c-format
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source : erreur dans %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Les messages n'ont pas pu être imprimés"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam : pas de motif correspondant"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam : pas de motif correspondant"
++
++# , c-format
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Abonné à %s"
++
++# , c-format
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Abonné à %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Pas d'objet (Subject) spécifié."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments : pas de disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments : disposition invalide"
++
++# , c-format
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Désabonné de %s"
++
++# , c-format
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Désabonné de %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Il n'y a pas d'attachements"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "De : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "À : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Cci : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Objet : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Réponse à : "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc : "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix : "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Sécurité : "
+
+@@ -944,79 +1093,79 @@ msgstr "Sécurité : "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Signer avec : "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ # , c-format
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Suivi de la discussion à %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "éditer le champ Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Envoyer"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Abandonner"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "À"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Obj"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Attacher fichier"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Description"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Pas d'objet (Subject) spécifié."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Aucune"
+@@ -1025,7 +1174,7 @@ msgstr "Aucune"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -1033,14 +1182,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "oui"
+@@ -1051,7 +1200,7 @@ msgstr "oui"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1059,51 +1208,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Non supportée"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Signer, Chiffrer"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Chiffrer"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Signer"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Aucune"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP en ligne)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (mode OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<défaut>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Chiffrer avec : "
+
+@@ -1112,12 +1261,12 @@ msgstr "Chiffrer avec : "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "éditer le champ Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1129,7 +1278,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] n'existe plus "
+@@ -1142,245 +1291,376 @@ msgstr "%s [#%d] n'existe plus "
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] modifié. Mise à jour du codage?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Attachements"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Vous ne pouvez pas supprimer l'unique attachement"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Mauvais IDN dans « %s » : '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Attachement sauvé"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "L'attachement courant ne sera pas converti"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Attachement filtré"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Erreur en envoyant le message"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "J'attache les fichiers sélectionnés..."
+ msgstr[1] "J'attache les fichiers sélectionnés..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Impossible d'attacher %s "
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Ouvrir une BAL d'où attacher un message"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Ouvrir une BAL d'où attacher un message"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Impossible d'ouvrir la BAL %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Aucun message dans ce dossier"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Marquez les messages que vous voulez attacher "
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Impossible d'attacher "
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Le recodage affecte uniquement les attachements textuels"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "L'attachement courant ne sera pas converti"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "L'attachement courant sera converti"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Codage invalide"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Sauver une copie de ce message?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Envoyer l'attachement avec le nom : "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Renommer en : "
+
+ # , c-format
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Impossible d'obtenir le statut de %s : %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nouveau fichier : "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type est de la forme base/sous"
+
+ # , c-format
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Content-Type %s inconnu"
+
+ # , c-format
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Impossible de créer le fichier %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Nous sommes en présence d'un échec de fabrication d'un attachement"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Rappeler un message ajourné?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Écrire le message dans la boîte aux lettres"
+
+ # , c-format
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Écriture du message dans %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Message écrit"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Pas de backend PGP configuré"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME déjà sélectionné. Effacer & continuer?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Pas de backend S/MIME configuré"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP déjà sélectionné. Effacer & continuer?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Impossible d'ajouter sans append-hook ou close-hook : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Impossible de verrouiller la boîte aux lettres "
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Décompression de %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Impossible d'identifier le contenu du fichier compressé"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Impossible de trouver les opérations pour la boîte aux lettres de type %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "La commande de compression a échoué : %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Type de boîte aux lettres non supporté pour l'ajout"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Impossible de synchroniser un fichier compressé sans close-hook"
+
+ # , c-format
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Compression de %s"
+
+ # , c-format
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Ajout avec compression à %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Erreur. Préservation du fichier temporaire : %s"
+
++# , c-format
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Date relative invalide : %s"
++
++# , c-format
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Date relative invalide : %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Erreur : score : nombre invalide"
++
++# , c-format
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Valeur invalide pour l'option %s : \"%s\""
++
++# , c-format
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mois invalide : %s"
++
++# , c-format
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Fonction non autorisée en mode attach-message."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Erreur : score : nombre invalide"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Erreur : score : nombre invalide"
++
++# , c-format
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Date relative invalide : %s"
++
++# , c-format
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Valeur invalide pour l'option %s : \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Erreur : la valeur '%s' est invalide pour -d"
++
++# , c-format
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s : variable inconnue"
++
++# , c-format
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Date relative invalide : %s"
++
++# , c-format
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Date relative invalide : %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nom d'utilisateur sur %s : "
++
++# , c-format
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Mot de passe pour %s@%s : "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Commande de requête non définie"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ # , c-format
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+@@ -1404,7 +1684,7 @@ msgstr "Connexion à %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Impossible de se connecter à %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "erreur inconnue"
+
+@@ -1420,24 +1700,24 @@ msgstr "Erreur en parlant à %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Connexion à %s fermée"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Profil SASL inconnu"
+
+ # , c-format
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Erreur lors de l'allocation de la connexion SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Erreur lors de la mise en place des propriétés de sécurité SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Erreur lors de la mise en place de la force de sécurité externe"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Erreur lors de la mise en place du nom d'utilisateur externe"
+
+@@ -1451,137 +1731,111 @@ msgstr "La commande Preconnect a échoué"
+ msgid "Connection to %s closed"
+ msgstr "Connexion à %s fermée"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Remplissage du tas d'entropie : %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s a des droits d'accès peu sûrs "
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL désactivé par manque d'entropie"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Inconnu"
+
+ # , c-format
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[impossible de calculer]"
+
+ # , c-format
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[date invalide]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Le certificat du serveur n'est pas encore valide"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Le certificat du serveur a expiré"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Impossible de trouver assez d'entropie sur votre système"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "impossible d'obtenir le détenteur du certificat (subject)"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "impossible d'obtenir le nom du détenteur du certificat (CN)"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "le propriétaire du certificat ne correspond pas au nom %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Ce certificat appartient à :"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Ce certificat a été émis par :"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Ce certificat est valide"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " à %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Empreinte SHA1 : %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "Empreinte SHA1 : %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Vérification du certificat SSL (certificat %zu sur %zu dans la chaîne)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)ejeter, accepter (u)ne fois, (a)ccepter toujours"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)ejeter, accepter (u)ne fois, (a)ccepter toujours"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)ejeter, accepter (u)ne fois"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)ejeter, accepter (u)ne fois"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Quitter "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Attention : le certificat n'a pas pu être sauvé"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificat sauvé"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Échec de vérification de machine : %s"
+@@ -1589,15 +1843,15 @@ msgstr "Échec de vérification de machine : %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "erreur d'E/S"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL a échoué : %s"
+@@ -1605,90 +1859,74 @@ msgstr "SSL a échoué : %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Impossible de créer le contexte SSL"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Impossible d'obtenir le certificat de la machine distante"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Erreur de vérification du certificat (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Le certificat n'est pas de type X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Erreur d'initialisation des données du certificat gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Erreur de traitement des données du certificat"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ATTENTION ! Le certificat du serveur n'est pas encore valide"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ATTENTION ! Le certificat du serveur a expiré"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ATTENTION ! Le certificat du serveur a été révoqué"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ATTENTION ! Le nom du serveur ne correspond pas au certificat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "ATTENTION ! Le signataire du certificat du serveur n'est pas un CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Attention : le certificat du serveur a été signé avec un algorithme peu sûr"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "rua"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ru"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Tous les protocoles disponibles pour une connexion TLS/SSL sont désactivés"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Sélection de suite cryptographique explicite via $ssl_ciphers non supportée"
+
+ # , c-format
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Connexion SSL/TLS utilisant %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Erreur : pas de socket TLS ouverte"
+
+@@ -1709,38 +1947,18 @@ msgstr "Erreur de tunnel en parlant à %s : %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Le tunnel vers %s a renvoyé l'erreur %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "oui"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "non"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Quitter NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Appuyez sur une touche pour continuer..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' pour avoir la liste) : "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1762,7 +1980,7 @@ msgstr ""
+ "~M messages identique à ~m, mais inclut les en-têtes\n"
+ "~p imprime le message\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1785,20 +2003,20 @@ msgstr ""
+ ". seul sur une ligne, termine la saisie\n"
+
+ # , c-format
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d : numéro de message invalide.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Veuillez terminer le message par un . en début de ligne)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Pas de boîte aux lettres.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Le message contient :\n"
+
+@@ -1806,20 +2024,20 @@ msgstr "Le message contient :\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continuer)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "nom de fichier manquant.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Pas de lignes dans le message.\n"
+
+ # , c-format
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s : commande d'éditeur inconnue (~? pour l'aide)\n"
+@@ -1868,21 +2086,79 @@ msgstr "Impossible d'ajouter au dossier : %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "le message multipart n'a pas de paramètre boundary "
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "L'affichage des discussions n'est pas activé"
+
+ # , c-format
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Positionner l'indicateur"
+
+ # , c-format
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Effacer l'indicateur"
+
++# , c-format
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s : couleur non disponible sur ce terminal"
++
++# , c-format
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s : cette couleur n'existe pas"
++
++# , c-format
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s : cet objet n'existe pas"
++
++# , c-format
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s : cet attribut n'existe pas"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "La couleur default n'est pas disponible"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Erreur : score : nombre invalide"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "oui"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "non"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Quitter NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Appuyez sur une touche pour continuer..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' pour avoir la liste) : "
++
+ # , c-format
+ #: handler.c:102
+ #, fuzzy, c-format
+@@ -1907,25 +2183,25 @@ msgstr "[-- Visualisation automatique en utilisant %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Invocation de la commande de visualisation automatique : %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Impossible de créer le filtre"
+
+ # , c-format
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Impossible d'exécuter %s. --]\n"
+
+ # , c-format
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Visualisation automatique stderr de %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Erreur : message/external-body n'a pas de paramètre access-type --]\n"
+
+@@ -1945,7 +2221,7 @@ msgstr "[-- Erreur : message/external-body n'a pas de paramètre access-type --]
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1975,7 +2251,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1990,7 +2266,7 @@ msgstr[1] "[-- Cet attachement %s/%s (taille %s octets) a été effacé --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -2003,13 +2279,13 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Cet attachement %s/%s a été effacé --]\n"
+
+ # , c-format
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nom : %s --]\n"
+@@ -2017,7 +2293,7 @@ msgstr "[-- nom : %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2032,7 +2308,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2041,47 +2317,47 @@ msgstr ""
+ "[-- Cet attachement %s/%s n'est pas inclus, --]\n"
+ "[-- et l'access-type %s indiqué n'est pas supporté --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Erreur : Aucune partie du Multipart/Alternative n'a pu être affichée --]\n"
+
+ # , c-format
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Attachement #%d: %s --]\n"
+
+ # , c-format
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Attachement #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Une ou plusieurs parties de ce message n'ont pas pu être affichées"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Impossible d'ouvrir le fichier temporaire "
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Impossible d'ouvrir le fichier temporaire "
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Erreur : multipart/signed n'a pas de protocole"
+
+ # , c-format
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Ceci est un attachement (utilisez '%s' pour voir cette partie) --]\n"
+@@ -2089,53 +2365,53 @@ msgstr "[-- Ceci est un attachement (utilisez '%s' pour voir cette partie) --]\n
+ # , c-format
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s n'est pas disponible (utilisez '%s' pour voir cette partie) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Ceci est un attachement (la fonction 'view-attachments' doit être affectée à une touche ) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s n'est pas disponible (la fonction 'view-attachments' doit être affectée à une touche ) --]\n"
+
+ # , c-format
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Ceci est un attachement --]\n"
+
+ # , c-format
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s n'est pas disponible --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERREUR : veuillez signaler ce problème"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<INCONNU>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Affectations génériques :"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Fonctions non affectées :"
+
+ # , c-format
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Aide pour %s"
+@@ -2152,24 +2428,24 @@ msgstr "le raccourci de boîte aux lettres a donné une expression rationnelle v
+ msgid "badly formatted command string"
+ msgstr "chaîne de commande incorrectement formatée"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook : impossible de faire un unhook * à l'intérieur d'un hook"
+
+ # , c-format
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook : type hook inconnu : %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook : impossible de supprimer un %s à l'intérieur d'un %s"
+
+ # , c-format
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s : ce menu n'existe pas"
+@@ -2177,20 +2453,20 @@ msgstr "%s : ce menu n'existe pas"
+ # , c-format
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s : ce menu n'existe pas"
+
+ # , c-format
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s : ce menu n'existe pas"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Impossible de créer le fichier temporaire %s"
+@@ -2228,30 +2504,30 @@ msgstr "L'authentification GSSAPI a échoué"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN désactivée sur ce serveur"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Connexion..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "La connexion a échoué"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Authentification (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "L'authentification OAUTHBEARER a échoué"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Authentification (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "L'authentification SASL a échoué"
+
+@@ -2299,79 +2575,67 @@ msgstr "Le renommage a échoué : %s"
+ msgid "Mailbox renamed"
+ msgstr "Boîte aux lettres renommée"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Boîte aux lettres %s@%s fermée"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Connexion à %s interrompue"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Ce serveur IMAP est trop ancien. NeoMutt ne marche pas avec."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Recherche d'en-tête sans nom d'en-tête : %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE a échoué : %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Fermeture de la connexion à %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Connexion sécurisée avec TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Impossible de négocier la connexion TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Connexion chiffrée non disponible"
+
+ # , c-format
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Abonnement à %s..."
+
+ # , c-format
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Désabonnement de %s..."
+
+ # , c-format
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Abonné à %s"
+-
+-# , c-format
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Désabonné de %s"
+-
+-# , c-format
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2379,17 +2643,17 @@ msgstr[0] "Copie de %d messages dans %s..."
+ msgstr[1] "Copie de %d messages dans %s..."
+
+ # , c-format
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Créer %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Expunge a échoué"
+
+ # , c-format
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2398,46 +2662,46 @@ msgstr[1] "Marquage de %d messages à effacer..."
+
+ # , c-format
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "La sauvegarde a changé des messages... [%d/%d]"
+ msgstr[1] "La sauvegarde a changé des messages... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Erreur en sauvant les indicateurs. Fermer tout de même?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Erreur en sauvant les indicateurs"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Effacement des messages sur le serveur..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox : EXPUNGE a échoué"
+
+ # , c-format
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Sélection de %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Erreur à l'ouverture de la boîte aux lettres"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "Le serveur SMTP ne supporte pas l'authentification"
+
+ # , c-format
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Invalide "
+@@ -2448,7 +2712,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Plus de mémoire "
+
+@@ -2471,7 +2735,7 @@ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Impossible de récupérer les en-têtes à partir de cette version du serveur IMAP"
+
+ # , c-format
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Récupération des en-têtes des messages..."
+
+@@ -2485,161 +2749,161 @@ msgstr "Chargement du message..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copie du message %d dans %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Récupération du message..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "L'index du message est incorrect. Essayez de rouvrir la boîte aux lettres."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Continuer?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Quitter"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Sauver"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Message"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Répondre"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Groupe"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+ # , c-format
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Suivi de la discussion à %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Aucune boîte aux lettres n'est ouverte"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Il n'y a pas de messages"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Pas de messages visibles"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "La boîte aux lettres est en lecture seule"
+
+ # , c-format
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Fonction non autorisée en mode attach-message"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s : opération non permise par les ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Impossible de rendre inscriptible une boîte aux lettres en lecture seule "
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Les modifications du dossier seront enregistrées à sa sortie"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Les modifications du dossier ne seront pas enregistrées"
+
+ # , c-format
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s n'est pas une boîte aux lettres "
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Boîte aux lettres modifiée extérieurement. Les indicateurs peuvent être faux."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Nouveau(x) message(s) dans cette boîte aux lettres"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "La boîte aux lettres a été modifiée extérieurement"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Pas de messages marqués"
+
+ # , c-format
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Rien à faire"
+
+ # , c-format
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Entrez keyID : "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Le message racine n'est pas visible dans cette vue limitée"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Effacement des messages sur le serveur..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "effacer tous les messages dans la discussion"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Aller au message : "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "L'argument doit être un numéro de message"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Numéro de message invalide"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Ce message n'est pas visible"
+
+@@ -2652,39 +2916,39 @@ msgstr "Ce message n'est pas visible"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Impossible d'effacer le message"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Effacer les messages correspondant à : "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Aucun motif de limite n'est en vigueur"
+
+ # , c-format
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limite : %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limiter aux messages correspondant à : "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Pour voir tous les messages, limiter à \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Quitter NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marquer les messages correspondant à : "
+
+@@ -2692,204 +2956,204 @@ msgstr "Marquer les messages correspondant à : "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Impossible de récupérer le message"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Récupérer les messages correspondant à : "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Démarquer les messages correspondant à : "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Déconnecté des serveurs IMAP"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Pas d'objet (Subject), abandon"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Le serveur SMTP ne supporte pas l'authentification"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Pas d'objet (Subject), abandon"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Pas d'objet (Subject), abandon"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Ouvrir la boîte aux lettres en lecture seule"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Ouvrir la boîte aux lettres"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Pas de boîte aux lettres avec des nouveaux messages"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Ouvrir la boîte aux lettres en lecture seule"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Quitter NeoMutt sans sauvegarder?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Impossible de lier les discussions"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Discussion cassée"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "La discussion ne peut pas être cassée, le message n'est pas dans une discussion"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Impossible de lier les discussions"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Pas d'en-tête Message-ID: disponible pour lier la discussion"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "D'abord, veuillez marquer un message à lier ici"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Discussions liées"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Pas de discussion liée"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Vous êtes sur le dernier message"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Pas de message non effacé"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Vous êtes sur le premier message"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Pas de nouveaux messages dans cette vue limitée"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Pas de nouveaux messages"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Pas de messages non lus dans cette vue limitée"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Pas de messages non lus"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "La recherche est repartie du début"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "La recherche est repartie de la fin"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Impossible de marquer le message"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Impossible d'inverser l'indic. 'nouveau'"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Pas d'autres discussions"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Vous êtes sur la première discussion"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Cette discussion contient des messages non-lus"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Impossible d'effacer le message"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Impossible d'éditer le message"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2899,7 +3163,7 @@ msgstr[1] "%d labels ont changé"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Aucun label n'a changé"
+
+@@ -2907,7 +3171,7 @@ msgstr "Aucun label n'a changé"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Impossible de marquer le(s) message(s) comme lu(s)"
+@@ -2916,287 +3180,141 @@ msgstr "Impossible de marquer le(s) message(s) comme lu(s)"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Entrez les touches de la macro : "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "hotkey (marque-page)"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Message lié à %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Pas de Message-ID pour la macro"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Impossible de récupérer le message"
+
+ # , c-format
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Erreur dans la ligne de commande : %s"
+
+ # , c-format
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Erreur dans la ligne de commande : %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "impossible de déterminer nodename via uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: pas de nom de groupe"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "pas assez d'arguments"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-# , c-format
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Erreur dans %s, ligne %d : %s"
+-
+-# , c-format
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Erreur dans %s, ligne %d : %s"
+-
+-# , c-format
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source : erreurs dans %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source : lecture interrompue car trop d'erreurs dans %s"
+-
+-# , c-format
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source : erreurs dans %s"
+-msgstr[1] "source : erreurs dans %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias : pas d'adresse"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Attention : mauvais IDN '%s' dans l'alias '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments : pas de disposition"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "éditer la description de l'attachement"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments : disposition invalide"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup : il manque un -rx ou -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup : attention : mauvais IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "en-tête invalide"
+-
+-# , c-format
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s : variable inconnue"
+-
+-# , c-format
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s n'est pas positionné"
+-
+-# , c-format
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source : erreur dans %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Les messages n'ont pas pu être imprimés"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam : pas de motif correspondant"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam : pas de motif correspondant"
+-
+-# , c-format
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Abonné à %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Pas d'objet (Subject) spécifié."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments : pas de disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments : disposition invalide"
+-
+ # , c-format
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Désabonné de %s"
+-
+-# , c-format
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s : commande inconnue"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+ # , c-format
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Valeur invalide pour l'option %s : \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+ # , c-format
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Fonction non autorisée en mode attach-message."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Boucle de macro détectée"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Cette touche n'est pas affectée"
+
+ # , c-format
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Cette touche n'est pas affectée. Tapez '%s' pour avoir l'aide."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: séquence de touches nulle"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro : séquence de touches vide"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec : pas d'arguments"
+
+ # , c-format
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s : cette fonction n'existe pas"
+
+ # , c-format
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Entrez des touches (^G pour abandonner) : "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Caractère = %s, Octal = %o, Decimal = %d"
+@@ -3224,7 +3342,7 @@ msgid "Scanning %s..."
+ msgstr "Lecture de %s..."
+
+ # , c-format
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Lecture de %s..."
+@@ -3240,13 +3358,13 @@ msgstr "_maildir_commit_message() : impossible de fixer l'heure du fichier"
+
+ # , c-format
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Écriture de %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3269,7 +3387,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3312,56 +3430,56 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Erreur d'initialisation du terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "impossible de déterminer le nom d'utilisateur"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "impossible de déterminer le répertoire personnel"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Erreur : la valeur '%s' est invalide pour -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Impossible d'analyser le lien mailto:"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Pas de destinataire spécifié"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Impossible d'utiliser l'option -E avec stdin"
+
+ # , c-format
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Impossible d'ouvrir le fichier : %s"
+
+ # , c-format
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s : impossible d'attacher le fichier"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Pas de boîte aux lettres avec des nouveaux messages"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Pas de boîtes aux lettres recevant du courrier définies"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "La boîte aux lettres est vide"
+
+@@ -3405,52 +3523,52 @@ msgstr "La boîte aux lettres n'a pas pu être réouverte "
+ msgid "Can't write message"
+ msgstr "Impossible d'écrire le message"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Aller à : "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Numéro d'index invalide"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Pas d'entrées"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Défilement vers le bas impossible"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Défilement vers le haut impossible"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Vous êtes sur la première page"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Vous êtes sur la dernière page"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Vous êtes sur la dernière entrée"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Vous êtes sur la première entrée"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Rechercher : "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Rechercher en arrière : "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Non trouvé"
+
+@@ -3495,20 +3613,20 @@ msgstr "Attente de la tentative de flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Mauvais format de fichier d'historique (ligne %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Impossible de créer le fichier temporaire"
+
+@@ -3531,7 +3649,7 @@ msgid "Logging at level %d to file '%s'"
+ msgstr "Débuggage au niveau %d.\n"
+
+ # , c-format
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Erreur de connexion au serveur : %s"
+@@ -3557,17 +3675,17 @@ msgstr "Signal %d (%s) ... On quitte.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Signal %d ... On quitte.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3575,152 +3693,123 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Le fichier est un répertoire, sauver dans celui-ci? (o)ui, (n)on, (t)ous"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "ont"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Le fichier est un répertoire, sauver dans celui-ci?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Fichier dans le répertoire : "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Le fichier existe, écras(e)r, (c)oncaténer ou (a)nnuler?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "eca"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Impossible de sauver le message dans la boîte aux lettres POP"
+
+ # , c-format
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Ajouter les messages à %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Impossible de laisser les messages sur le serveur"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nom d'utilisateur sur %s : "
+-
+-# , c-format
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Mot de passe pour %s@%s : "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Commande de requête non définie"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Ne correspond pas au 'nametemplate', continuer?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "L'entrée compose du fichier mailcap nécessite %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Échec d'ouverture du fichier pour analyser les en-têtes"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Échec d'ouverture du fichier pour enlever les en-têtes"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Échec de renommage du fichier"
+
+ # , c-format
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Pas d'entrée compose pour %s dans mailcap, création d'un fichier vide"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "L'entrée Edit du fichier mailcap nécessite %%s"
+
+ # , c-format
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Pas d'entrée edit pour %s dans mailcap"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Pas d'entrée mailcap correspondante. Visualisation en texte."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Type MIME non défini. Impossible de visualiser l'attachement."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Commande: %-20.20s Description: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Commande: %-30.30s Attachement: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Attachement: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Attachement: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Erreur d'écriture "
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Je ne sais pas comment imprimer ceci "
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Rechercher"
+
+@@ -3730,23 +3819,23 @@ msgid "History '%s'"
+ msgstr "Historique '%s'"
+
+ # , c-format
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Valeur invalide pour l'option %s : \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+ # , c-format
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Impossible de verrouiller %s\n"
+
+ # , c-format
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nouveau(x) message(s) dans "
+
+@@ -3767,13 +3856,13 @@ msgstr "Le message racine n'est pas visible dans cette vue limitée"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Le message père n'est pas visible dans cette vue limitée"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Recherche interrompue."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Impossible d'attacher %s "
+@@ -3781,7 +3870,7 @@ msgstr "Impossible d'attacher %s "
+ # , c-format
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3793,14 +3882,14 @@ msgstr[1] "message(s) non effacé(s)"
+ msgid "Can't open trash folder"
+ msgstr "Impossible d'ouvrir la corbeille"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ # , c-format
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3808,7 +3897,7 @@ msgstr[0] "Déplacer %d messages lus dans %s ?"
+ msgstr[1] "Déplacer %d messages lus dans %s ?"
+
+ # , c-format
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3816,53 +3905,53 @@ msgstr[0] "Effacer %d message marqué à effacer ?"
+ msgstr[1] "Effacer %d messages marqués à effacer ?"
+
+ # , c-format
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Déplacement des messages lus dans %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "La boîte aux lettres est inchangée"
+
+ # , c-format
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d gardé(s), %d déplacé(s), %d effacé(s)"
+
+ # , c-format
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d gardé(s), %d effacé(s)"
+
+ # , c-format
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Appuyez sur '%s' pour inverser l'écriture autorisée"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Utilisez 'toggle-write' pour réautoriser l'écriture "
+
+ # , c-format
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "La boîte aux lettres est protégée contre l'écriture. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Boîte aux lettres vérifiée"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (heure courante : %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- La sortie %s suit%s --]\n"
+@@ -3871,53 +3960,53 @@ msgstr "[-- La sortie %s suit%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Phrase(s) de passe oubliée(s)"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "PGP en ligne est impossible avec format=flowed. Utiliser PGP/MIME ?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Message non envoyé : PGP en ligne est impossible avec format=flowed"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "PGP en ligne est impossible avec format=flowed. Utiliser PGP/MIME ?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Message non envoyé : PGP en ligne est impossible avec format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Appel de PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Le message ne peut pas être envoyé en ligne. Utiliser PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Message non envoyé"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Les messages S/MIME sans indication sur le contenu ne sont pas supportés"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Tentative d'extraction de clés PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Tentative d'extraction de certificats S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3926,7 +4015,7 @@ msgstr ""
+ "[-- Erreur : Protocole multipart/signed %s inconnu --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3934,7 +4023,7 @@ msgstr ""
+ "[-- Erreur : Signature multipart/signed manquante ou mauvais format --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3943,7 +4032,7 @@ msgstr ""
+ "[-- Attention : les signatures %s/%s ne peuvent pas être vérifiées. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3951,7 +4040,7 @@ msgstr ""
+ "[-- Les données suivantes sont signées --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3959,7 +4048,7 @@ msgstr ""
+ "[-- Attention : Impossible de trouver des signatures. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3978,241 +4067,241 @@ msgstr "Appel de S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nom : "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "aka : "
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "From valide : "
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "To valide : "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Type de clé : "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Utilisation : "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Empreinte : "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "N° de série : "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Publiée par : "
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Sous-clé : "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "erreur lors de l'activation du protocole CMS : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "erreur lors de la création de l'objet gpgme : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "erreur lors de l'allocation de l'objet : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "erreur lors du retour au début de l'objet : %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "erreur lors de la lecture de l'objet : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "erreur lors de l'ajout du destinataire « %s » : %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "clé secrète « %s » non trouvée : %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "spécification de la clé secrète « %s » ambiguë"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "erreur lors de la mise en place de la clé secrète « %s » : %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "erreur lors de la mise en place de la note de signature PKA : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "erreur lors du chiffrage des données : %s"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "erreur lors de la signature des données : %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as non renseigné et pas de clé par défaut dans ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Attention ! Une des clés a été révoquée\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Attention ! La clé utilisée pour créer la signature a expiré à :"
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Attention ! Au moins une clé de certification a expiré\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Attention ! La signature a expiré à :"
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Impossible de vérifier par suite d'une clé ou certificat manquant\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "La CRL n'est pas disponible.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "La CRL disponible est trop ancienne\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Désaccord avec une partie de la politique\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Une erreur système s'est produite"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "ATTENTION : l'entrée PKA ne correspond pas à l'adresse du signataire : "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "L'adresse du signataire vérifiée par PKA est : "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "ATTENTION ! Nous n'avons AUCUNE indication informant si la clé appartient à la personne nommée ci-dessus\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ATTENTION ! La clé N'APPARTIENT PAS à la personne nommée ci-dessus\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ATTENTION ! Il n'est PAS certain que la clé appartienne à la personne nommée ci-dessus\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "ID de la clé "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "créée : "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Erreur en récupérant les infos de la clé pour l'ID %s : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Bonne signature de :"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*MAUVAISE* signature de :"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Signature problématique de :"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " expire : "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Début des informations sur la signature --]\n"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Erreur : la vérification a échoué : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Début de la note (signature par : %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Fin de la note ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4220,7 +4309,7 @@ msgstr ""
+ "[-- Fin des informations sur la signature --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4229,21 +4318,26 @@ msgstr ""
+ "[-- Erreur : le déchiffrage a échoué : %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Erreur à l'export de la clé : %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Erreur : le déchiffrage/vérification a échoué : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Message PGP déchiffré avec succès"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Erreur : la copie des données a échoué\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4251,11 +4345,11 @@ msgstr ""
+ "[-- DÉBUT DE MESSAGE PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- DÉBUT DE BLOC DE CLÉ PUBLIQUE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4263,19 +4357,19 @@ msgstr ""
+ "[-- DÉBUT DE MESSAGE SIGNÉ PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- FIN DE MESSAGE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FIN DE BLOC DE CLÉ PUBLIQUE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- FIN DE MESSAGE SIGNÉ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4283,11 +4377,11 @@ msgstr ""
+ "[-- Erreur : impossible de trouver le début du message PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Erreur : impossible de créer le fichier temporaire --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4295,7 +4389,7 @@ msgstr ""
+ "[-- Les données suivantes sont signées et chiffrées avec PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4303,24 +4397,20 @@ msgstr ""
+ "[-- Les données suivantes sont chiffrées avec PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Fin des données signées et chiffrées avec PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Fin des données chiffrées avec PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Message PGP déchiffré avec succès"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Impossible de déchiffrer le message PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4328,7 +4418,7 @@ msgstr ""
+ "[-- Les données suivantes sont signées avec S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4336,35 +4426,35 @@ msgstr ""
+ "[-- Les données suivantes sont chiffrées avec S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Fin des données signées avec S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Fin des données chiffrées avec S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Impossible d'afficher cet ID d'utilisateur (encodage inconnu)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Impossible d'afficher cet ID d'utilisateur (encodage invalide)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Impossible d'afficher cet ID d'utilisateur (DN invalide)]"
+
+ # , c-format
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Invalide]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4372,97 +4462,97 @@ msgstr[0] "%s, %lu bits, %s\n"
+ msgstr[1] "%s, %lu bits, %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "chiffrage"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "signature"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certification"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Révoquée]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Expirée]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Désactivée]"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Récupération des données..."
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Erreur en cherchant la clé de l'émetteur : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Erreur : chaîne de certification trop longue - on arrête ici\n"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID de la clé : 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start a échoué : %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next a échoué : %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Toutes les clés correspondantes sont marquées expirées/révoquées"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Sélectionner "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Vérifier clé "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "clés PGP et S/MIME correspondant à"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "clés PGP correspondant à"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "clés S/MIME correspondant à"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "clés correspondant à"
+
+@@ -4470,65 +4560,65 @@ msgstr "clés correspondant à"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Cette clé ne peut pas être utilisée : expirée/désactivée/révoquée"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "L'ID est expiré/désactivé/révoqué. Voulez-vous vraiment utiliser la clé?"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "L'ID n'est pas valide. Voulez-vous vraiment utiliser la clé?"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "L'ID n'est que peu valide. Voulez-vous vraiment utiliser la clé?"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "L'ID a une validité indéfinie. Voulez-vous vraiment utiliser la clé?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Recherche des clés correspondant à \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Utiliser keyID = \"%s\" pour %s?"
+
+ # , c-format
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Entrez keyID pour %s : "
+@@ -4537,16 +4627,16 @@ msgstr "Entrez keyID pour %s : "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "clé secrète « %s » non trouvée : %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Veuillez entrer l'ID de la clé : "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Erreur à l'export de la clé : %s"
+@@ -4555,92 +4645,92 @@ msgstr "Erreur à l'export de la clé : %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Clé PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME : protocole OpenPGP non disponible"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME : protocole CMS non disponible"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "(S)igner s/mime, (E)n tant que, (P)gp, (R)ien, ou mode (O)ppenc inactif?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sepro"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "(S)igner pgp, (E)n tant que, s/(M)ime, (R)ien, ou mode (O)ppenc inactif?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "semro"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "(C)hiffrer s/mime, (S)igner, (E)n tant que, les (D)eux, (P)gp, (R)ien, ou mode (O)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "csedpro"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, s/(M)ime, (R)ien, ou mode (O)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "csedmro"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "(C)hiffrer s/mime, (S)igner, (E)n tant que, les (D)eux, (P)gp, ou (R)ien?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "csedpr"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, s/(M)ime, ou (R)ien?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "csedmr"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Impossible de vérifier l'expéditeur"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Impossible de trouver l'expéditeur"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Entrez la phrase de passe PGP :"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Erreur : impossible de créer le sous-processus PGP ! --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4651,16 +4741,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Message PGP déchiffré avec succès"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Erreur interne. Veuillez soumettre un rapport de bug."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4668,126 +4758,126 @@ msgstr ""
+ "[-- Erreur : impossible de créer un sous-processus PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Le déchiffrage a échoué"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Impossible d'ouvrir le sous-processus PGP "
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Impossible d'invoquer PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "pgp/m(I)me"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "en l(I)gne"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "(S)igner pgp, (E)n tant que, format %s, (R)ien, ou mode (O)ppenc inactif?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "seiro"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(S)igner pgp, (E)n tant que, (R)ien, ou mode (O)ppenc inactif?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "sero"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, format %s, (R)ien, ou (O)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "csediro"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, (R)ien, ou mode (O)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "csedro"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, format %s, ou (R)ien?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "csedir"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(C)hiffrer pgp, (S)igner, (E)n tant que, les (D)eux, ou (R)ien?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "csedr"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Récupération de la clé PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Toutes les clés correspondantes sont expirées, révoquées, ou désactivées"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Clés PGP correspondant à <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Clés PGP correspondant à \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Impossible d'ouvrir /dev/null"
+
+ # , c-format
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Clé PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Entrez la phrase de passe S/MIME :"
+
+@@ -4796,7 +4886,7 @@ msgstr "Entrez la phrase de passe S/MIME :"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Expirée "
+
+@@ -4806,7 +4896,7 @@ msgstr "Expirée "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Invalide "
+
+@@ -4815,7 +4905,7 @@ msgstr "Invalide "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Révoquée "
+
+@@ -4824,7 +4914,7 @@ msgstr "Révoquée "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "De confiance"
+
+@@ -4833,7 +4923,7 @@ msgstr "De confiance"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Non vérifiée"
+
+@@ -4842,7 +4932,7 @@ msgstr "Non vérifiée"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Vérifiée "
+
+@@ -4851,61 +4941,61 @@ msgstr "Vérifiée "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Inconnue "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Certificats S/MIME correspondant à \"%s\""
+
+ # , c-format
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "L'ID n'est pas de confiance. Voulez-vous vraiment utiliser la clé?"
+
+ # , c-format
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Entrez keyID : "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Pas de certificat (valide) trouvé pour %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Erreur : impossible de créer le sous-processus OpenSSL "
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Étiquette pour le certificat : "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "pas de certfile"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "pas de BAL"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Pas de sortie pour OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Impossible de signer : pas de clé spécifiée. Utilisez « Signer avec »."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Impossible d'ouvrir le sous-processus OpenSSL "
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4913,19 +5003,19 @@ msgstr ""
+ "[-- Fin de sortie OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Erreur : impossible de créer le sous-processus OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Les données suivantes sont chiffrées avec S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Les données suivantes sont signées avec S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4933,7 +5023,7 @@ msgstr ""
+ "\n"
+ "[-- Fin des données chiffrées avec S/MIME. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4942,170 +5032,170 @@ msgstr ""
+ "[-- Fin des données signées avec S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(S)igner s/mime, chiffer (A)vec, signer (E)n tant que, (R)ien, ou (O)ppenc inactif?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "saero"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(C)h. s/mime, (S)igner, ch. (A)vec, signer (E)n tant que, les (D)eux, (R)ien, ou (O)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "csaedro"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(C)hiffrer s/mime, (S)igner, ch. (A)vec, signer (E)n tant que, les (D)eux, ou (R)ien?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "csaedr"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Choisissez une famille d'algo : (1) DES, (2) RC2, (3) AES, ou (e)ffacer?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123e"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s est un chemin POP invalide"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Le serveur a fermé la connexion "
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "Le serveur SMTP ne supporte pas l'authentification"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Pas d'authentificateurs disponibles"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "L'authentification SASL a échoué"
+
+ # , c-format
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Connexion à %s fermée"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Récupération de la liste des messages..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Recherche de nouveaux messages..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "impossible d'écrire dans le dossier temporaire : %s"
+
+ # , c-format
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Connexion à %s..."
+
+ # , c-format
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Rien à faire"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+ # , c-format
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Impossible d'obtenir le statut de %s : %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Effacement des messages sur le serveur..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Connexion..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Recherche de nouveaux messages..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s est un chemin POP invalide"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5117,7 +5207,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Impossible d'analyser le lien mailto:\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6251,197 +6341,197 @@ msgstr "rendre la barre latérale (in)visible"
+ msgid "show S/MIME options"
+ msgstr "afficher les options S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Non disponible dans ce menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PgPréc"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "PgSuiv"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Voir attach."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Suivant"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "La fin du message est affichée"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Le début du message est affiché"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "L'aide est actuellement affichée"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Il n'y a plus de texte cité"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Il n'y a plus de texte non cité après le texte cité"
+
+ # , c-format
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Erreur dans l'expression : %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Expression vide"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Commande de requête non définie"
+
+ # , c-format
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Invocation de la commande de visualisation automatique : %s"
+
+ # , c-format
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Quantième invalide : %s"
+
+ # , c-format
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mois invalide : %s"
+
+ # , c-format
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Date relative invalide : %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Pas de messages non lus."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Erreur à l'ouverture de la boîte aux lettres"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Erreur à l'ouverture de la boîte aux lettres"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Impossible d'ouvrir /dev/null"
+
+ # , c-format
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "erreur dans le motif à : %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "motif manquant : %s"
+
+ # , c-format
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "parenthésage incorrect : %s"
+
+ # , c-format
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c : modificateur de motif invalide"
+
+ # , c-format
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c : non supporté dans ce mode"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "paramètre manquant"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "motif vide"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+ # , c-format
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "erreur : opération inconnue %d (signalez cette erreur)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compilation du motif de recherche..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Exécution de la commande sur les messages correspondants..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Aucun message ne correspond au critère"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Recherche..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Fin atteinte sans rien avoir trouvé"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Début atteint sans rien avoir trouvé"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Recherche interrompue"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "La commande TOP n'est pas supportée par le serveur"
+
+@@ -6449,7 +6539,7 @@ msgstr "La commande TOP n'est pas supportée par le serveur"
+ msgid "Can't write header to temporary file"
+ msgstr "Impossible d'écrire l'en-tête dans le fichier temporaire "
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "La commande UIDL n'est pas supportée par le serveur"
+
+@@ -6464,7 +6554,7 @@ msgstr[1] "%d messages ont été perdus. Essayez de rouvrir la boîte aux lettre
+ msgid "POP host is not defined"
+ msgstr "Le serveur POP n'est pas défini"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s est un chemin POP invalide"
+@@ -6499,132 +6589,132 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d messages lus sur %d]"
+ msgstr[1] "%s [%d messages lus sur %d]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Récupération de la liste des messages..."
+
+ # , c-format
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Marquage des messages à effacer..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Impossible d'écrire le message dans le fichier temporaire "
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Authentification (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "L'horodatage POP est invalide "
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Authentification (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "L'authentification APOP a échoué"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "La commande USER n'est pas supportée par le serveur"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "L'authentification SASL a échoué"
+
+ # , c-format
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "URL POP invalide : %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Impossible de laisser les messages sur le serveur"
+
+ # , c-format
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Erreur de connexion au serveur : %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Fermeture de la connexion au serveur POP..."
+
+ # , c-format
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Vérification des index des messages..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Connexion perdue. Se reconnecter au serveur POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Messages ajournés"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Pas de message ajourné"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "En-tête S/MIME illégal"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "En-tête crypto illégal"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Déchiffrage du message..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nouvelle requête"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Créer un alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Attente de la réponse..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Requête : "
+
+ # , c-format
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Requête '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Commande de requête non définie"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipe"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Imprimer"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "On sauve..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6632,27 +6722,27 @@ msgstr[0] "Attachement sauvé"
+ msgstr[1] "Attachement sauvé"
+
+ # , c-format
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ATTENTION ! Vous allez écraser %s, continuer?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Attachement filtré"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrer avec : "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Passer à la commande : "
+
+ # , c-format
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Je ne sais pas comment imprimer %s attachements "
+@@ -6660,56 +6750,56 @@ msgstr "Je ne sais pas comment imprimer %s attachements "
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Imprimer l(es) attachement(s) marqué(s)?"
+ msgstr[1] "Imprimer l(es) attachement(s) marqué(s)?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Imprimer l'attachement?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Impossible de déchiffrer le message chiffré "
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Attachements"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Il n'y a pas de sous-parties à montrer "
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Impossible d'effacer l'attachement depuis le serveur POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Impossible d'effacer l'attachement depuis le serveur POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "L'effacement d'attachements de messages chiffrés n'est pas supporté"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "L'effacement d'attachements de messages signés peut invalider la signature"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Seul l'effacement d'attachements multipart est supporté"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Vous ne pouvez renvoyer que des parties message/rfc822"
+
+@@ -6747,7 +6837,7 @@ msgstr "Impossible de créer %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Aucun message marqué n'a pu être trouvé"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Pas de liste de diffusion trouvée "
+
+@@ -6762,68 +6852,68 @@ msgstr "Impossible de décoder ts les attachements marqués. MIME-encapsuler les
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Vous ne pouvez renvoyer que des parties message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Ajouter"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Insérer"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Impossible d'obtenir le type2.list du mixmaster "
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Sélectionner une chaîne de redistributeurs de courrier"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Erreur : %s ne peut pas être utilisé comme redistributeur final"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Les chaînes mixmaster sont limitées à %d éléments"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "La chaîne de redistributeurs de courrier est déjà vide"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Le premier élément de la chaîne est déjà sélectionné"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Le dernier élément de la chaîne est déjà sélectionné"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Le mixmaster n'accepte pas les en-têtes Cc et Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Donnez une valeur correcte à hostname quand vous utilisez le mixmaster "
+
+ # , c-format
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Erreur en envoyant le message, fils terminé avec le code %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Erreur en envoyant le message"
+
+@@ -6854,43 +6944,43 @@ msgstr "Faire suivre les attachements ?"
+ # , c-format
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Répondre à %s%s?"
+
+ # , c-format
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Suivi de la discussion à %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Inclure le message dans la réponse?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Inclusion du message cité..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Tous les messages demandés n'ont pas pu être inclus "
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Faire suivre sous forme d'attachement?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Préparation du message à faire suivre..."
+
+ # , c-format
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc vers une boîte aux lettres IMAP n'est pas supporté en mode batch"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Sauver les attachements dans Fcc?"
+
+@@ -6898,199 +6988,199 @@ msgstr "Sauver les attachements dans Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc a échoué. (r)éessayer, autre (b)oîte aux lettres, ou (s)auter ?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rbs"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Boîte aux lettres Fcc"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Impossible d'ajourner. $postponed est non renseigné"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Rappeler un message ajourné?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Éditer le message à faire suivre?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Message non modifié. Abandonner?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Message non modifié. Abandon"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Pas de backend crypto configuré. Désactivation de la sécurité du message."
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Message non envoyé"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Message ajourné"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Pas d'objet (Subject), abandonner l'envoi?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Pas d'objet (Subject) spécifié"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Pas d'objet (Subject) spécifié"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Pas d'attachements, abandonner l'envoi ?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "L'attachement référencé dans le message est manquant"
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Envoi du message..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Impossible d'envoyer le message"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Envoi en tâche de fond"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Message envoyé"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Pas de paramètre boundary trouvé [signalez cette erreur]"
+
+ # , c-format
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s n'existe plus "
+
+ # , c-format
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s n'est pas un fichier ordinaire"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Impossible d'envoyer le message."
+
+ # , c-format
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Impossible d'ouvrir %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail doit avoir une valeur pour pouvoir envoyer du courrier"
+
+ # , c-format
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Erreur en envoyant le message, fils terminé avec le code %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Sortie du processus de livraison"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Mauvais IDN %s lors de la préparation du resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "La session SMTP a échoué : %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "La session SMTP a échoué : impossible d'ouvrir %s"
+
+ # , c-format
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "URL SMTP invalide : %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "L'authentification %s a échoué, essayons la méthode suivante"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "L'authentification GSSAPI a échoué"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "Le serveur SMTP ne supporte pas l'authentification"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Pas d'adresse from donnée"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "La session SMTP a échoué : erreur de lecture"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "La session SMTP a échoué : erreur d'écriture"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Réponse du serveur invalide"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Tri de la boîte aux lettres..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Fonction de tri non trouvée [signalez ce bug]"
+
+@@ -7158,11 +7248,11 @@ msgstr ""
+ "NeoMutt est un logiciel libre, et vous êtes libre de le redistribuer\n"
+ "sous certaines conditions ; tapez 'neomutt -vv' pour les détails.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Options de compilation :"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Options de compilation :"
+diff --git a/po/ga.po b/po/ga.po
+index f8b21a1db..644be7898 100644
+--- a/po/ga.po
++++ b/po/ga.po
+@@ -9,7 +9,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2006-10-16 14:22-0500\n"
+ "Last-Translator: Kevin Patrick Scannell <scannell@SLU.EDU>\n"
+ "Language-Team: Irish <ga@li.org>\n"
+@@ -19,16 +19,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(d)iúltaigh, glac leis (u)air amháin, gl(a)c leis i gcónaí"
++
++#, fuzzy
++msgid "roas"
++msgstr "dau"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(d)iúltaigh, glac leis (u)air amháin, gl(a)c leis i gcónaí"
++
++msgid "roa"
++msgstr "dua"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(d)iúltaigh, glac leis (u)air amháin"
++
++#, fuzzy
++msgid "ros"
++msgstr "du"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(d)iúltaigh, glac leis (u)air amháin"
++
++msgid "ro"
++msgstr "du"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Scoir"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Scr"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "DíScr"
+
+@@ -36,18 +64,18 @@ msgstr "DíScr"
+ msgid "Select"
+ msgstr "Roghnaigh"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Cabhair"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Níl aon ailias agat"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Ailiasanna"
+
+@@ -56,53 +84,53 @@ msgstr "Ailiasanna"
+ msgid "Alias as: "
+ msgstr "Ailias: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Tá an t-ailias seo agat cheana féin"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Rabhadh: Is féidir nach n-oibreoidh an t-ailias seo i gceart. Ceartaigh?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Seoladh: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "DrochIDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Ainm pearsanta: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Glac Leis?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Sábháil go comhad: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Earráid ag iarraidh comhad a scrúdú"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Earráid ag iarraidh comhad a scrúdú"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Cuireadh an t-ailias leis"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Earráid ag iarraidh comhad a scrúdú"
+@@ -112,7 +140,7 @@ msgstr "Earráid ag iarraidh comhad a scrúdú"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "Níl a leithéid de %s ann. Cruthaigh?"
+@@ -121,8 +149,8 @@ msgstr "Níl a leithéid de %s ann. Cruthaigh?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Ní féidir %s a chruthú: %s"
+@@ -132,7 +160,7 @@ msgstr "Ní féidir %s a chruthú: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -141,7 +169,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -150,7 +178,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -159,7 +187,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -171,7 +199,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "criptiúchán"
+@@ -179,7 +207,7 @@ msgstr "criptiúchán"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -187,7 +215,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -196,7 +224,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Níor aimsíodh aon teastas (bailí) do %s"
+@@ -208,12 +236,12 @@ msgstr "Níor aimsíodh aon teastas (bailí) do %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Níl aon bhosca poist.\n"
+@@ -225,14 +253,14 @@ msgstr "Níl aon bhosca poist.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Cruthaigh %s?"
+@@ -240,7 +268,7 @@ msgstr "Cruthaigh %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Scrios"
+
+@@ -248,9 +276,9 @@ msgstr "Scrios"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -258,17 +286,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -277,7 +305,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -285,7 +313,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -293,12 +321,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -306,13 +334,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Earráid agus comhadlann á scanadh"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Scrios bosca poist \"%s\" i ndáiríre?"
+@@ -330,7 +358,7 @@ msgstr "Scrios bosca poist \"%s\" i ndáiríre?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Ní féidir an bosca poist a chur faoi ghlas!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "earráid agus comhthéacs gpgme á chruthú: %s"
+@@ -403,285 +431,236 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Ní comhadlann í %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Chdir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Masc"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Liostáilte le %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Díliostáilte ó %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "Ní comhadlann í %s"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Liostáilte le %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Boscaí Poist [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Liostáilte [%s], Masc comhaid: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Comhadlann [%s], Masc comhaid: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Ní féidir comhadlann a cheangal"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Níl aon chomhad comhoiriúnach leis an mhasc chomhaid"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Ní féidir cruthú ach le boscaí poist IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Ní féidir athainmniú ach le boscaí poist IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Ní féidir scriosadh ach le boscaí poist IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "taispeáin ainm an chomhaid atá roghnaithe faoi láthair"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Scrios bosca poist \"%s\" i ndáiríre?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Scriosadh an bosca"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Scriosadh an bosca"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Níor scriosadh an bosca"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Chdir go: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Earráid agus comhadlann á scanadh"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Masc Comhaid: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sórtáil droim ar ais de réir (d)áta, (a)ibítíre, (m)éid, nó (n)á sórtáil?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sórtáil de réir (d)áta, (a)ibítíre, (m)éid, nó (n)á sórtáil?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Ainm comhaid nua: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Ní féidir comhadlann a scrúdú"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Earráid ag iarraidh comhad a scrúdú"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Liostáilte le %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Díliostáilte ó %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Níl aon chomhad comhoiriúnach leis an mhasc chomhaid"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: níl dathanna ar fáil leis an teirminéal seo"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: níl a leithéid de dhath ann"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: níl a leithéid de rud ann"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: níl go leor argóintí ann"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: níl a leithéid d'aitreabúid ann"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: an iomarca argóintí"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "níl na dathanna réamhshocraithe ar fáil"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Fíoraigh síniú?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Níorbh fhéidir comhad sealadach a chruthú"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Ní féidir scagaire taispeána a chruthú"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Níorbh fhéidir teachtaireacht a chóipeáil"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Bhí an síniú S/MIME fíoraithe"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Níl úinéir an teastais S/MIME comhoiriúnach leis an seoltóir"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Rabhadh: Níor síníodh cuid den teachtaireacht seo"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Níorbh fhéidir an síniú S/MIME a fhíorú"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Bhí an síniú PGP fíoraithe"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Níorbh fhéidir an síniú PGP a fhíorú"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Earráid agus \"%s\" á rith"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Ordú: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Scinn teachtaireacht go: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Scinn teachtaireachtaí clibeáilte go: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Earráid agus seoladh á pharsáil"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -691,7 +670,7 @@ msgstr[2] "Scinn teachtaireachtaí go %s?"
+ msgstr[3] "Scinn teachtaireachtaí go %s?"
+ msgstr[4] "Scinn teachtaireachtaí go %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+@@ -701,7 +680,7 @@ msgstr[2] "Níor scinneadh na teachtaireachtaí"
+ msgstr[3] "Níor scinneadh na teachtaireachtaí"
+ msgstr[4] "Níor scinneadh na teachtaireachtaí"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+@@ -711,29 +690,29 @@ msgstr[2] "Scinneadh na teachtaireachtaí"
+ msgstr[3] "Scinneadh na teachtaireachtaí"
+ msgstr[4] "Scinneadh na teachtaireachtaí"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Ní féidir próiseas a chruthú chun scagadh a dhéanamh"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Píopa go dtí an t-ordú: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Níl aon ordú priontála sainmhínithe"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Priontáil teachtaireacht?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Priontáil teachtaireachtaí clibeáilte?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+@@ -743,7 +722,7 @@ msgstr[2] "Priontáilte"
+ msgstr[3] "Priontáilte"
+ msgstr[4] "Priontáilte"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -754,165 +733,331 @@ msgstr[3] "Níorbh fhéidir na teachtaireachtaí a phriontáil"
+ msgstr[4] "Níorbh fhéidir na teachtaireachtaí a phriontáil"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "DroimArAis (d)áta/(ó)/(f)ág/á(b)har/(g)o/s(n)áith/dí(s)hórt/(m)éid/s(c)ór/s(p)am?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sórtáil (d)áta/(ó)/(f)ág/á(b)har/(g)o/s(n)áith/dí(s)hórt/(m)éid/s(c)ór/s(p)am?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dófbgnsmcp"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Ordú blaoisce: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Díchódaigh-sábháil go bosca poist"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Díchódaigh-sábháil clibeáilte go bosca poist"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Díchriptigh-sábháil go bosca poist"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Díchriptigh-sábháil clibeáilte go bosca poist"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Sábháil go dtí an bosca poist"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Sábháil clibeáilte go dtí an bosca poist"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Díchódaigh-cóipeáil go bosca poist"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Díchódaigh-cóipeáil clibeáilte go bosca poist"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Díchriptigh-cóipeáil go bosca poist"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Díchriptigh-cóipeáil clibeáilte go bosca poist"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Cóipeáil go dtí an bosca poist"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Cóipeáil clibeáilte go dtí an bosca poist"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Á chóipeáil go %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Athraíodh Content-Type go %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Tiontaigh go %s agus á sheoladh?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Athraíodh Content-Type go %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Athraíodh an tacar carachtar go %s; gan tiontú"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Athraíodh an tacar carachtar go %s; á tiontú"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: níl go leor argóintí ann"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: gan ainm grúpa"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "níl go leor argóintí ann"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Earráid i %s, líne %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Earráid i %s, líne %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: earráidí i %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: an iomarca earráidí i %s, ag tobscor"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: earráidí i %s"
++msgstr[1] "source: earráidí i %s"
++msgstr[2] "source: earráidí i %s"
++msgstr[3] "source: earráidí i %s"
++msgstr[4] "source: earráidí i %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "ailias: gan seoladh"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Rabhadh: DrochIDN '%s' san ailias '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "iatáin: gan chóiriú"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "cuir cur síos an iatáin in eagar"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "iatáin: cóiriú neamhbhailí"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: an iomarca argóintí"
++
++#: command_parse.c:801
++#, fuzzy, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "-rx nó -addr ar iarraidh"
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Rabhadh: DrochIDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "réimse cheanntáisc neamhbhailí"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: athróg anaithnid"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s gan socrú"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: earráid ag %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Níorbh fhéidir na teachtaireachtaí a phriontáil"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: níl aon phatrún comhoiriúnach ann"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: níl aon phatrún comhoiriúnach ann"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Liostáilte le %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Liostáilte le %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Níor sonraíodh aon ábhar."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "dí-iatáin: gan chóiriú"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "dí-iatáin: cóiriú neamhbhailí"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Díliostáilte ó %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Díliostáilte ó %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Níl aon iatán ann"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Freagair"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -923,78 +1068,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Sínigh mar: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Teachtaireacht leantach go %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "cuir an réimse \"Reply-To\" in eagar"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Seol"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Tobscoir"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Iatán"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Cur Síos"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Níor sonraíodh aon ábhar."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -1002,7 +1147,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -1010,14 +1155,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "is sea"
+@@ -1028,7 +1173,7 @@ msgstr "is sea"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1036,54 +1181,54 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Níl clibeáil le fáil."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Sínigh, Criptigh"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Criptigh"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Sínigh"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr " (inlíne)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ #, fuzzy
+ msgid " (S/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<réamhshocraithe>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Criptigh le: "
+
+@@ -1092,12 +1237,12 @@ msgstr "Criptigh le: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "cuir an réimse \"Reply-To\" in eagar"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1108,7 +1253,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "níl %s [#%d] ann níos mó"
+@@ -1120,57 +1265,57 @@ msgstr "níl %s [#%d] ann níos mó"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Mionathraíodh %s [#%d]. Nuashonraigh a ionchódú?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Iatáin"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Ní féidir leat an t-iatán amháin a scriosadh"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "DrochIDN i '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Sábháladh an t-iatán"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Ní thiontófar an t-iatán reatha"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Scagadh an t-iatán"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Earráid agus teachtaireacht á seoladh"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+@@ -1180,183 +1325,303 @@ msgstr[2] "Comhaid roghnaithe á gceangal..."
+ msgstr[3] "Comhaid roghnaithe á gceangal..."
+ msgstr[4] "Comhaid roghnaithe á gceangal..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Ní féidir %s a cheangal"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Oscail an bosca poist as a gceanglóidh tú teachtaireacht"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Oscail an bosca poist as a gceanglóidh tú teachtaireacht"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Ní féidir an bosca poist a chur faoi ghlas!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Níl aon teachtaireacht san fhillteán sin"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Clibeáil na teachtaireachtaí le ceangal"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Ní féidir a cheangal"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Téann ath-ionchódú i bhfeidhm ar iatáin téacs amháin"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Ní thiontófar an t-iatán reatha"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Tiontófar an t-iatán reatha"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Ionchódú neamhbhailí"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Sábháil cóip den teachtaireacht seo?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "féach ar an iatán mar théacs"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Athainmnigh go: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "ní féidir %s a 'stat': %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Comhad nua: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Is san fhoirm base/sub é Content-Type"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Content-Type anaithnid %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Ní féidir an comhad %s a chruthú"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Ní féidir iatán a chruthú"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Athghlaoigh teachtaireacht a bhí curtha ar athlá?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Scríobh teachtaireacht sa bhosca poist"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Teachtaireacht á scríobh i %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Teachtaireacht scríofa"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME roghnaithe cheana. Glan agus lean ar aghaidh?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP roghnaithe cheana. Glan agus lean ar aghaidh?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Ní féidir an bosca poist a chur faoi ghlas"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Theip ar ordú réamhnaisc."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Á chóipeáil go %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Á chóipeáil go %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Earráid. Ag caomhnú an chomhaid shealadaigh: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Dáta coibhneasta neamhbhailí: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Dáta coibhneasta neamhbhailí: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Lá neamhbhailí na míosa: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mí neamhbhailí: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Ní cheadaítear an fheidhm seo sa mhód iatáin."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Dáta coibhneasta neamhbhailí: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Lá neamhbhailí na míosa: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Earráid: Is drochIDN é '%s'"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: athróg anaithnid"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Dáta coibhneasta neamhbhailí: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Dáta coibhneasta neamhbhailí: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Ainm úsáideora ag %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Focal faire do %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Níl aon ordú iarratais sainmhínithe"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1377,7 +1642,7 @@ msgstr "Ag dul i dteagmháil le %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Níorbh fhéidir dul i dteagmháil le %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "earráid anaithnid"
+
+@@ -1391,24 +1656,24 @@ msgstr "Earráid i rith déanamh teagmháil le %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Nasc le %s dúnta"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "earráid agus réad á dháileadh: %s\n"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1421,138 +1686,112 @@ msgstr "Theip ar ordú réamhnaisc"
+ msgid "Connection to %s closed"
+ msgstr "Nasc le %s dúnta"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Linn eantrópachta á líonadh: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "Ceadanna neamhdhaingne ar %s"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Díchumasaíodh SSL de bharr easpa eantrópachta"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Anaithnid"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[ní féidir a ríomh]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[dáta neamhbhailí]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Tá an teastas neamhbhailí fós"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Tá an teastas as feidhm"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Níl go leor eantrópacht ar fáil ar do chóras-sa"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Níorbh fhéidir an teastas a fháil ón gcomhghleacaí"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Níorbh fhéidir an teastas a fháil ón gcomhghleacaí"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Níl úinéir an teastais S/MIME comhoiriúnach leis an seoltóir."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Tá an teastas seo ag:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Bhí an teastas seo eisithe ag:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Tá an teastas bailí"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " ó %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " go %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "Méarlorg SHA1: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Méarlorg SHA256: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(d)iúltaigh, glac leis (u)air amháin, gl(a)c leis i gcónaí"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(d)iúltaigh, glac leis (u)air amháin, gl(a)c leis i gcónaí"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "Méarlorg SHA1: %s"
+
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(d)iúltaigh, glac leis (u)air amháin"
++msgid "SHA256 Fingerprint: "
++msgstr "Méarlorg SHA256: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(d)iúltaigh, glac leis (u)air amháin"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Scoir "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Rabhadh: Ní féidir an teastas a shábháil"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sábháladh an teastas"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sábháladh an teastas"
+@@ -1560,15 +1799,15 @@ msgstr "Sábháladh an teastas"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Earráid I/A"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "Theip ar SSL: %s"
+@@ -1576,90 +1815,74 @@ msgstr "Theip ar SSL: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Earráid: ní féidir fo-phróiseas OpenSSL a chruthú!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Níorbh fhéidir an teastas a fháil ón gcomhghleacaí"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Earráid agus teastas á fhíorú (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Ní X.509 é an teastas"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Earráid agus sonraí teastais gnutls á dtúsú"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Earráid agus sonraí an teastais á bpróiseáil"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "RABHADH: Níl teastas an fhreastalaí bailí fós"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "RABHADH: Tá teastas an fhreastalaí as feidhm"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "RABHADH: Cúlghaireadh an teastas freastalaí"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "RABHADH: Níl óstainm an fhreastalaí comhoiriúnach leis an teastas."
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "RABHADH: Ní CA é sínitheoir an teastais"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "dua"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "du"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Díchumasaíodh gach prótacal atá le fáil le haghaidh naisc TLS/SSL"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Nasc SSL/TLS le %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Earráid: níl aon soicéad oscailte TLS"
+
+@@ -1678,7 +1901,7 @@ msgstr "Earráid tolláin i rith déanamh teagmháil le %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "D'fhill tollán %s earráid %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1688,31 +1911,11 @@ msgstr[2] ""
+ msgstr[3] ""
+ msgstr[4] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "is sea"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ní hea"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Scoir NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Brúigh eochair ar bith chun leanúint..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' le haghaidh liosta): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1735,7 +1938,7 @@ msgstr ""
+ "~M tchtaí ar comhbhrí le ~m, ach le ceanntásca\n"
+ "~p priontáil an teachtaireacht\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1757,20 +1960,20 @@ msgstr ""
+ "~? an teachtaireacht seo\n"
+ ". ar líne leis féin chun ionchur a stopadh\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Cuir an teachtaireacht i gcrích le . ar líne leis féin amháin)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Níl aon bhosca poist.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Sa teachtaireacht:\n"
+
+@@ -1778,19 +1981,19 @@ msgstr "Sa teachtaireacht:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(lean ar aghaidh)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "ainm comhaid ar iarraidh.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Níl aon líne sa teachtaireacht.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: ordú anaithnid eagarthóra (~? = cabhair)\n"
+@@ -1837,19 +2040,73 @@ msgstr "Ní féidir aon rud a iarcheangal leis an fhillteán: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "teachtaireacht ilchodach gan paraiméadar teoranta"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Snáithe gan cumasú"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Socraigh bratach"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Glan bratach"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: níl dathanna ar fáil leis an teirminéal seo"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: níl a leithéid de dhath ann"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: níl a leithéid de rud ann"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: níl a leithéid d'aitreabúid ann"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "níl na dathanna réamhshocraithe ar fáil"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: uimhir theachtaireachtaí neamhbhailí.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "is sea"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ní hea"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Scoir NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Brúigh eochair ar bith chun leanúint..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' le haghaidh liosta): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1870,23 +2127,23 @@ msgstr "[-- Uathamharc le %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Ordú uathamhairc á rith: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Ní féidir an scagaire a chruthú"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Ní féidir %s a rith. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Uathamharc ar stderr de %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Earráid: níl aon pharaiméadar den chineál rochtana ag message/external-body --]\n"
+
+@@ -1905,7 +2162,7 @@ msgstr "[-- Earráid: níl aon pharaiméadar den chineál rochtana ag message/ex
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1943,7 +2200,7 @@ msgstr[4] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1960,7 +2217,7 @@ msgstr[4] "[-- Bhí an t-iatán seo %s/%s (méid %s beart) scriosta --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1972,12 +2229,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Bhí an t-iatán seo %s/%s scriosta --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- ainm: %s --]\n"
+@@ -1985,7 +2242,7 @@ msgstr "[-- ainm: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2001,7 +2258,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2010,96 +2267,96 @@ msgstr ""
+ "[-- Níor cuireadh an t-iatán seo %s/%s san áireamh, --]\n"
+ "[-- agus ní ghlacann leis an chineál shainithe rochtana %s --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Earráid: Níorbh fhéidir aon chuid de Multipart/Alternative a thaispeáint --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Iatán #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Iatán #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Rabhadh: Níor síníodh cuid den teachtaireacht seo."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Níorbh fhéidir an comhad sealadach a oscailt"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Níorbh fhéidir an comhad sealadach a oscailt"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Níorbh fhéidir an comhad sealadach a oscailt"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Earráid: Níl aon phrótacal le haghaidh multipart/signed"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Bhí an t-iatán seo %s/%s (bain úsáid as '%s' chun na páirte seo a fheiceáil) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s gan tacaíocht (bain úsáid as '%s' chun na páirte seo a fheiceáil) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Bhí an t-iatán seo %s/%s (ní foláir 'view-attachments' a cheangal le heochair) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s gan tacaíocht (ní foláir 'view-attachments' a cheangal le heochair) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Bhí an t-iatán seo %s/%s --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s gan tacaíocht --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "Earráid: seol tuairisc fhabht, le do thoil"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<ANAITHNID>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Ceangail ghinearálta:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Feidhmeanna gan cheangal:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Cabhair le %s"
+@@ -2116,41 +2373,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Ní cheadaítear unhook * isteach i hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: cineál anaithnid crúca: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Ní féidir %s a scriosadh taobh istigh de %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: níl a leithéid de roghchlár ann"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: níl a leithéid de roghchlár ann"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: níl a leithéid de roghchlár ann"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Níorbh fhéidir comhad sealadach %s a chruthú"
+@@ -2188,31 +2445,31 @@ msgstr "Theip ar fhíordheimhniú GSSAPI"
+ msgid "LOGIN disabled on this server"
+ msgstr "Díchumasaíodh LOGIN ar an fhreastalaí seo"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Logáil isteach..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Theip ar logáil isteach"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Á fhíordheimhniú (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Theip ar fhíordheimhniú OAUTHBEARER"
+
+ # %s is the method, not what's being authenticated I think
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Á fhíordheimhniú (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Theip ar fhíordheimhniú SASL"
+
+@@ -2260,74 +2517,64 @@ msgstr "Theip ar athainmniú: %s"
+ msgid "Mailbox renamed"
+ msgstr "Athainmníodh an bosca poist"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Dúnadh bosca poist"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Nasc le %s dúnta"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Freastalaí ársa IMAP. Ní oibríonn NeoMutt leis."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Cuardach ceanntáisc gan ainm an cheanntáisc: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Theip ar SSL: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Nasc le %s á dhúnadh..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Nasc daingean le TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Níorbh fhéidir nasc TLS a shocrú"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Níl nasc criptithe ar fáil"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Ag liostáil le %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Ag díliostáil ó %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Liostáilte le %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Díliostáilte ó %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2337,16 +2584,16 @@ msgstr[2] "%d teachtaireacht á gcóipeáil go %s..."
+ msgstr[3] "%d teachtaireacht á gcóipeáil go %s..."
+ msgstr[4] "%d teachtaireacht á gcóipeáil go %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Cruthaigh %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Theip ar scriosadh"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2357,7 +2604,7 @@ msgstr[3] "Ag marcáil %d teachtaireacht mar scriosta..."
+ msgstr[4] "Ag marcáil %d teachtaireacht mar scriosta..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2367,36 +2614,36 @@ msgstr[2] "Teachtaireachtaí athraithe á sábháil... [%d/%d]"
+ msgstr[3] "Teachtaireachtaí athraithe á sábháil... [%d/%d]"
+ msgstr[4] "Teachtaireachtaí athraithe á sábháil... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Earráid agus bratacha á sábháil. Dún mar sin féin?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Earráid agus bratacha á sábháil"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Teachtaireachtaí á scriosadh ón fhreastalaí..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: Theip ar scriosadh"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s á roghnú..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Earráid ag oscailt an bhosca poist"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Neamhbhailí "
+@@ -2407,7 +2654,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Cuimhne ídithe"
+
+@@ -2428,7 +2675,7 @@ msgstr "Ceanntásca na dteachtaireachtaí á bhfáil... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Ní féidir na ceanntásca a fháil ó fhreastalaí IMAP den leagan seo"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Ceanntásca na dteachtaireachtaí á bhfáil... [%d/%d]"
+@@ -2442,156 +2689,156 @@ msgstr "Teachtaireacht á huasluchtú..."
+ msgid "Copying message %d to %s..."
+ msgstr "Teachtaireacht %d á cóipeáil go %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Teachtaireacht á fáil..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Tá innéacs na dteachtaireachtaí mícheart. Bain triail as an mbosca poist a athoscailt."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Lean ar aghaidh?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Scoir"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Sábháil"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Post"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Freagair"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grúpa"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Teachtaireacht leantach go %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Níl aon bhosca poist oscailte"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Níl aon teachtaireacht ann"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Níl aon teachtaireacht le feiceáil"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Tá an bosca poist inléite amháin"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Ní cheadaítear an fheidhm seo sa mhód iatáin"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Ní féidir 'scríobh' a scoránú ar bhosca poist inléite amháin"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Scríobhfar na hathruithe agus an fillteán á dhúnadh"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Ní scríobhfar na hathruithe"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "Ní bosca poist %s"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Mionathraíodh an bosca poist go seachtrach. Is féidir go bhfuil bratacha míchearta ann."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Post nua sa bhosca seo"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Mionathraíodh an bosca poist go seachtrach"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Níl aon teachtaireacht chlibeáilte"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Níl faic le déanamh"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Iontráil aitheantas na heochrach: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Níl an mháthair-theachtaireacht infheicthe san amharc srianta seo"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Teachtaireachtaí á scriosadh ón fhreastalaí..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "scrios gach teachtaireacht sa snáithe"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Léim go teachtaireacht: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Caithfidh an argóint a bheith ina huimhir theachtaireachta"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Uimhir neamhbhailí theachtaireachta"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Níl an teachtaireacht sin infheicthe"
+
+@@ -2604,38 +2851,38 @@ msgstr "Níl an teachtaireacht sin infheicthe"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Níl aon teachtaireacht nach scriosta."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Scrios teachtaireachtaí atá comhoiriúnach le: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Níl aon phatrún teorannaithe i bhfeidhm"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Teorainn: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Teorannaigh go teachtaireachtaí atá comhoiriúnach le: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Chun gach teachtaireacht a fheiceáil, socraigh teorainn mar \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Scoir NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Clibeáil teachtaireachtaí atá comhoiriúnach le: "
+
+@@ -2643,211 +2890,211 @@ msgstr "Clibeáil teachtaireachtaí atá comhoiriúnach le: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Níl aon teachtaireacht nach scriosta."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Díscrios teachtaireachtaí atá comhoiriúnach le: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Díchlibeáil teachtaireachtaí atá comhoiriúnach le: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr ""
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Gan ábhar, á thobscor"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Gan ábhar, á thobscor"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Gan ábhar, á thobscor"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Oscail bosca poist i mód inléite amháin"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Oscail bosca poist"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Níl aon bhosca le ríomhphost nua."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Oscail bosca poist i mód inléite amháin"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Éirigh as NeoMutt gan sábháil?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Ní féidir an scagaire a chruthú"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Snáithe briste"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Gan cheanntásc 'Message-ID:'; ní féidir an snáithe a nasc"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Ar dtús, clibeáil teachtaireacht le nascadh anseo"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Snáitheanna nasctha"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Níor nascadh snáithe"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "An teachtaireacht deiridh"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Níl aon teachtaireacht nach scriosta"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "An chéad teachtaireacht"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Níl an mháthair-theachtaireacht infheicthe san amharc srianta seo"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Níl aon teachtaireacht nua"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Níl an mháthair-theachtaireacht infheicthe san amharc srianta seo"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Níl aon teachtaireacht gan léamh"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Thimfhill an cuardach go dtí an barr"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Thimfhill an cuardach go dtí an bun"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "taispeáin teachtaireacht"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Níl aon snáithe eile"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Is é seo an chéad snáithe"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Tá teachtaireachtaí gan léamh sa snáithe seo"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Níl aon teachtaireacht nach scriosta."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Ní féidir teachtaireacht a scríobh "
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2860,7 +3107,7 @@ msgstr[4] "Bosca poist gan athrú"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Bosca poist gan athrú"
+@@ -2869,7 +3116,7 @@ msgstr "Bosca poist gan athrú"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "léim go máthair-theachtaireacht sa snáithe"
+@@ -2877,14 +3124,14 @@ msgstr "léim go máthair-theachtaireacht sa snáithe"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Iontráil aitheantas na heochrach: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Cuireadh an teachtaireacht ar athlá."
+@@ -2892,263 +3139,123 @@ msgstr "Cuireadh an teachtaireacht ar athlá."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Scinneadh an teachtaireacht"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Níl aon teachtaireacht san fhillteán sin"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Níl aon teachtaireacht nach scriosta."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Earráid ar líne ordaithe: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Earráid ar líne ordaithe: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "ní féidir an t-ainm úsáideora a aimsiú"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: gan ainm grúpa"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "níl go leor argóintí ann"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Earráid i %s, líne %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Earráid i %s, líne %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: earráidí i %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: an iomarca earráidí i %s, ag tobscor"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: earráidí i %s"
+-msgstr[1] "source: earráidí i %s"
+-msgstr[2] "source: earráidí i %s"
+-msgstr[3] "source: earráidí i %s"
+-msgstr[4] "source: earráidí i %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "ailias: gan seoladh"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Rabhadh: DrochIDN '%s' san ailias '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "iatáin: gan chóiriú"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "cuir cur síos an iatáin in eagar"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "iatáin: cóiriú neamhbhailí"
+-
+-#: init.c:1160
+-#, fuzzy, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "-rx nó -addr ar iarraidh"
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Rabhadh: DrochIDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "réimse cheanntáisc neamhbhailí"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: athróg anaithnid"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s gan socrú"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: earráid ag %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Níorbh fhéidir na teachtaireachtaí a phriontáil"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: níl aon phatrún comhoiriúnach ann"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: níl aon phatrún comhoiriúnach ann"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Liostáilte le %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Níor sonraíodh aon ábhar."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "dí-iatáin: gan chóiriú"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "dí-iatáin: cóiriú neamhbhailí"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Díliostáilte ó %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: ordú anaithnid"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Lá neamhbhailí na míosa: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Ní cheadaítear an fheidhm seo sa mhód iatáin."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Braitheadh lúb i macraí"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Eochair gan cheangal"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Eochair gan cheangal. Brúigh '%s' chun cabhrú a fháil."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: seicheamh neamhbhailí"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macra: seicheamh folamh eochrach"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: níl aon argóint"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: níl a leithéid d'fheidhm ann"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Iontráil eochracha (^G chun scor):"
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Car = %s, Ochtnártha = %o, Deachúlach = %d"
+@@ -3172,7 +3279,7 @@ msgstr "níor aimsíodh iontráil mailcap don chineál %s"
+ msgid "Scanning %s..."
+ msgstr "%s á roghnú..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s á léamh..."
+@@ -3188,13 +3295,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): ní féidir an t-am a shocrú ar chomhad"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s á scríobh..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3217,7 +3324,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3260,54 +3367,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Earráid agus teirminéal á thúsú"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ní féidir an t-ainm úsáideora a aimsiú"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ní féidir an chomhadlann bhaile a aimsiú"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Earráid: Is drochIDN é '%s'"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Níor sonraíodh aon fhaighteoir"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Níorbh fhéidir an comhad teachtaireachta a oscailt: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: ní féidir comhad a cheangal"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Níl aon bhosca le ríomhphost nua"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Níl aon bhosca isteach socraithe agat"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Tá an bosca poist folamh"
+
+@@ -3349,52 +3456,52 @@ msgstr "Níorbh fhéidir an bosca poist a athoscailt"
+ msgid "Can't write message"
+ msgstr "Ní féidir teachtaireacht a scríobh "
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Téigh go: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Uimhir innéacs neamhbhailí"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Níl aon iontráil ann"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Ní féidir leat scrollú síos níos mó"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Ní féidir leat scrollú suas níos mó"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Ar an chéad leathanach"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Ar an leathanach deireanach"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Ar an iontráil dheireanach"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Ar an chéad iontráil"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Déan cuardach ar: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Déan cuardach droim ar ais ar: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Ar iarraidh"
+
+@@ -3437,20 +3544,20 @@ msgstr "Ag feitheamh le hiarracht flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Ní féidir comhad sealadach a chruthú"
+
+@@ -3469,7 +3576,7 @@ msgstr "Leibhéal dífhabhtaithe = %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Leibhéal dífhabhtaithe = %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Earráid ag nascadh leis an bhfreastalaí: %s"
+@@ -3493,17 +3600,17 @@ msgstr "Fuarthas comhartha %d (%s) ... Ag scor.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Fuarthas comhartha %d ... Ag scor.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3511,148 +3618,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Is comhadlann é an comhad seo, sábháil fúithi? (s)ábháil, (n)á sábháil, (u)ile"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "snu"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Is comhadlann í an comhad seo, sábháil fúithi?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Comhad faoin chomhadlann: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Tá an comhad ann cheana, (f)orscríobh, c(u)ir leis, nó (c)ealaigh?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "fuc"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Ní féidir teachtaireacht a shábháil i mbosca poist POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Iarcheangail teachtaireachtaí le %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Ní féidir teachtaireacht a chur in eagar ar fhreastalaí POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Ainm úsáideora ag %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Focal faire do %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Níl aon ordú iarratais sainmhínithe"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Ní féidir ainmtheimpléad comhoiriúnach a fháil; lean ar aghaidh?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Tá gá le %%s in iontráil chumtha Mailcap"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Níorbh fhéidir comhad a oscailt chun ceanntásca a pharsáil"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Níorbh fhéidir comhad a oscailt chun ceanntásca a struipeáil"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Theip ar athainmniú comhaid"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Níl aon iontráil chumadóra mailcap do %s, comhad folamh á chruthú"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Tá gá le %%s in iontráil Eagair Mailcap"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Níl aon iontráil eagair mailcap do %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Níor aimsíodh iontráil chomhoiriúnach mailcap. Féach air mar théacs."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Tá an cineál MIME gan sainmhíniú. Ní féidir an t-iatán a léamh."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Iatáin"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Iatáin"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Fadhb i rith scríofa"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Ní fhéadaim priontáil"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Cuardaigh"
+
+@@ -3661,21 +3740,21 @@ msgstr "Cuardaigh"
+ msgid "History '%s'"
+ msgstr "Iarratas '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Lá neamhbhailí na míosa: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Níorbh fhéidir %s a ghlasáil\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Post nua i "
+
+@@ -3697,20 +3776,20 @@ msgstr "Níl an mháthair-theachtaireacht infheicthe san amharc srianta seo"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Níl an mháthair-theachtaireacht infheicthe san amharc srianta seo"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Idirbhriseadh an cuardach."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Ní féidir %s a cheangal"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3725,13 +3804,13 @@ msgstr[4] "Ag marcáil %d teachtaireacht mar scriosta..."
+ msgid "Can't open trash folder"
+ msgstr "Ní féidir aon rud a iarcheangal leis an fhillteán: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3741,7 +3820,7 @@ msgstr[2] "Bog na teachtaireachtaí léite go %s?"
+ msgstr[3] "Bog na teachtaireachtaí léite go %s?"
+ msgstr[4] "Bog na teachtaireachtaí léite go %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3751,49 +3830,49 @@ msgstr[2] "Glan %d teachtaireacht scriosta?"
+ msgstr[3] "Glan %d teachtaireacht scriosta?"
+ msgstr[4] "Glan %d teachtaireacht scriosta?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Teachtaireachtaí léite á mbogadh go %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Bosca poist gan athrú"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d coinnithe, %d aistrithe, %d scriosta"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d coinnithe, %d scriosta"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Brúigh '%s' chun mód scríofa a scoránú"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Bain úsáid as 'toggle-write' chun an mód scríofa a athchumasú"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Tá an bosca poist marcáilte \"neamh-inscríofa\". %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Seicphointeáladh an bosca poist"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (an t-am anois: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- an t-aschur %s:%s --]\n"
+@@ -3802,55 +3881,55 @@ msgstr "[-- an t-aschur %s:%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Rinneadh dearmad ar an bhfrása faire"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Ní féidir an teachtaireacht a sheoladh inlíne. Úsáid PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Ní féidir an teachtaireacht a sheoladh inlíne. Úsáid PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP á thosú..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Ní féidir an teachtaireacht a sheoladh inlíne. Úsáid PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Níor seoladh an post"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Ní ghlacann le teachtaireachtaí S/MIME gan leideanna maidir lena n-inneachar"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Ag baint triail as eochracha PGP a bhaint amach...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Ag baint triail as teastais S/MIME a bhaint amach..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3859,7 +3938,7 @@ msgstr ""
+ "[-- Earráid: Prótacal anaithnid multipart/signed %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3868,7 +3947,7 @@ msgstr ""
+ "[-- Earráid: Struchtúr neamhréireach multipart/signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3877,7 +3956,7 @@ msgstr ""
+ "[-- Rabhadh: Ní féidir %s/%s síniú a fhíorú. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3885,7 +3964,7 @@ msgstr ""
+ "[-- Is sínithe iad na sonraí seo a leanas --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3893,7 +3972,7 @@ msgstr ""
+ "[-- Rabhadh: Ní féidir aon síniú a aimsiú. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3912,243 +3991,243 @@ msgstr "S/MIME á thosú..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Ainm ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Bailí Ó : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Bailí Go ..: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Úsáid Eochrach .: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Úsáid Eochrach .: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Méarlorg: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Sraithuimhir .: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Eisithe Ag .: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Fo-eochair ....: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "earráid agus prótacal CMS á chumasú: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "earráid agus réad gpgme á chruthú: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "earráid agus réad á dháileadh: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "earráid agus réad á atochras: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "earráid agus réad á léamh: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "earráid agus faighteoir '%s' á chur leis: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "eochair rúnda '%s' gan aimsiú: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "sonrú débhríoch d'eochair rúnda '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "earráid agus eochair rúnda á shocrú '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "Earráid agus eolas faoin eochair á fháil: "
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "earráid agus sonraí á gcriptiú: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "earráid agus sonraí á síniú: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Rabhadh: Cúlghaireadh ceann amháin de na heochracha\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Rabhadh: D'imigh an eochair lena gcruthaíodh an síniú as feidhm ar: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Rabhadh: D'imigh eochair amháin deimhnithe as feidhm, ar a laghad\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Rabhadh: D'imigh an síniú as feidhm ar: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Ní féidir fíorú de bharr eochair nó teastas ar iarraidh\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "Níl an CRL ar fáil\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Tá an CRL le fáil róshean\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Níor freastalaíodh ar riachtanas polasaí\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Tharla earráid chórais"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ #, fuzzy
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "RABHADH: Níl óstainm an fhreastalaí comhoiriúnach leis an teastas."
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "RABHADH: Níl fianaise AR BITH againn go bhfuil an eochair ag an duine ainmnithe thuas\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "RABHADH: NÍL an eochair ag an duine ainmnithe thuas\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "RABHADH: NÍL mé cinnte go bhfuil an eochair ag an duine ainmnithe thuas\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Cruthaigh %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Earráid agus eolas faoin eochair á fháil: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ #, fuzzy
+ msgid "Good signature from:"
+ msgstr "Síniú maith ó: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ #, fuzzy
+ msgid "*BAD* signature from:"
+ msgstr "Síniú maith ó: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ #, fuzzy
+ msgid "Problem signature from:"
+ msgstr "Síniú maith ó: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ #, fuzzy
+ msgid " expires: "
+ msgstr "ar a dtugtar freisin: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Tosú ar eolas faoin síniú --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Earráid: theip ar fhíorú: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Tosú na Nodaireachta (sínithe ag: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Deireadh na Nodaireachta ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4156,7 +4235,7 @@ msgstr ""
+ "[-- Deireadh an eolais faoin síniú --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4165,21 +4244,26 @@ msgstr ""
+ "[-- Earráid: theip ar dhíchriptiú: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Earráid agus eolas faoin eochair á fháil: "
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Earráid: theip ar dhíchriptiú/fhíorú: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "D'éirigh le díchriptiú na teachtaireachta PGP"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Earráid: theip ar chóipeáil na sonraí\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4187,11 +4271,11 @@ msgstr ""
+ "[-- TOSACH TEACHTAIREACHTA PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- TOSAIGH BLOC NA hEOCHRACH POIBLÍ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4199,19 +4283,19 @@ msgstr ""
+ "[-- TOSACH TEACHTAIREACHTA PGP SÍNITHE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- DEIREADH TEACHTAIREACHTA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- CRÍOCH BHLOC NA hEOCHRACH POIBLÍ PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- DEIREADH NA TEACHTAIREACHTA SÍNITHE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4219,11 +4303,11 @@ msgstr ""
+ "[-- Earráid: níorbh fhéidir tosach na teachtaireachta PGP a aimsiú --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Earráid: ní féidir comhad sealadach a chruthú --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4231,7 +4315,7 @@ msgstr ""
+ "[-- Is sínithe agus criptithe le PGP/MIME iad na sonraí seo a leanas --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4239,24 +4323,20 @@ msgstr ""
+ "[-- Is criptithe le PGP/MIME iad na sonraí seo a leanas --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Deireadh na sonraí sínithe agus criptithe le PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Deireadh na sonraí criptithe le PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "D'éirigh le díchriptiú na teachtaireachta PGP"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Níorbh fhéidir an teachtaireacht PGP a dhíchriptiú"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4264,7 +4344,7 @@ msgstr ""
+ "[-- Is sínithe le S/MIME iad na sonraí seo a leanas --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4272,34 +4352,34 @@ msgstr ""
+ "[-- Is criptithe le S/MIME iad na sonraí seo a leanas --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Deireadh na sonraí sínithe le S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Deireadh na sonraí criptithe le S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Ní féidir an t-aitheantas úsáideora a thaispeáint (ionchódú anaithnid)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Ní féidir an t-aitheantas úsáideora a thaispeáint (ionchódú neamhbhailí)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Ní féidir an t-aitheantas úsáideora a thaispeáint (DN neamhbhailí)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Neamhbhailí]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4310,95 +4390,95 @@ msgstr[3] "Cineál na hEochrach ..: %s, %lu giotán %s\n"
+ msgstr[4] "Cineál na hEochrach ..: %s, %lu giotán %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "criptiúchán"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "síniú"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "deimhniú"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Cúlghairthe]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[As Feidhm]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Díchumasaithe]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Sonraí á mbailiú..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Earráid agus eochair an eisitheora á aimsiú: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Earráid: slabhra rófhada deimhnithe - á stopadh anseo\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Aitheantas na heochrach: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "theip ar gpgme_op_keylist_start: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "theip ar gpgme_op_keylist_next: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Tá gach eochair chomhoiriúnach marcáilte mar as feidhm/cúlghairthe"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Roghnaigh "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Seiceáil eochair "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Eochracha PGP agus S/MIME atá comhoiriúnach le"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Eochracha PGP atá comhoiriúnach le"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Eochracha S/MIME atá comhoiriúnach le"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "eochracha atá comhoiriúnach le"
+
+@@ -4406,59 +4486,59 @@ msgstr "eochracha atá comhoiriúnach le"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Ní féidir an eochair seo a úsáid: as feidhm/díchumasaithe/cúlghairthe"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Tá an t-aitheantas as feidhm/díchumasaithe/cúlghairthe. An bhfuil tú cinnte gur mhaith leat an eochair seo a úsáid?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Níl an t-aitheantas bailí. An bhfuil tú cinnte gur mhaith leat an eochair seo a úsáid?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Is ar éigean atá an t-aitheantas bailí. An bhfuil tú cinnte gur mhaith leat an eochair seo a úsáid?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Aitheantas gan bailíocht chinnte. An bhfuil tú cinnte gur mhaith leat an eochair seo a úsáid?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Ag cuardach ar eochracha atá comhoiriúnach le \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Úsáid aitheantas eochrach = \"%s\" le haghaidh %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Iontráil aitheantas eochrach le haghaidh %s: "
+@@ -4467,16 +4547,16 @@ msgstr "Iontráil aitheantas eochrach le haghaidh %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "eochair rúnda '%s' gan aimsiú: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Iontráil aitheantas na heochrach, le do thoil: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Earráid agus eolas faoin eochair á fháil: "
+@@ -4484,102 +4564,102 @@ msgstr "Earráid agus eolas faoin eochair á fháil: "
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Eochair PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, (p)gp, nó (g)lan?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "csmapg"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, s/m(i)me, nó (g)lan?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "csmaig"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, (p)gp, nó (g)lan?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "csmapg"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, s/m(i)me, nó (g)lan?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "csmaig"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, (p)gp, nó (g)lan?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "csmapg"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, s/m(i)me, nó (g)lan?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "csmaig"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Theip ar fhíorú an tseoltóra"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Theip ar dhéanamh amach an tseoltóra"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Iontráil frása faire PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Earráid: ní féidir fo-phróiseas PGP a chruthú --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4590,16 +4670,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "D'éirigh le díchriptiú na teachtaireachta PGP"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4607,132 +4687,132 @@ msgstr ""
+ "[-- Earráid: ní féidir fo-phróiseas PGP a chruthú --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Theip ar dhíchriptiú"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Ní féidir fo-phróiseas PGP a oscailt"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Ní féidir PGP a thosú"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nlíne"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "csman"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "csman"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "csman"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "csman"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "csman"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (c)ript, (s)ínigh, sínigh (m)ar, (a)raon, %s, nó (n)á déan?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "csman"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Eochair PGP á fáil..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Tá gach eochair chomhoiriúnach as feidhm, cúlghairthe, nó díchumasaithe"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Eochracha PGP atá comhoiriúnach le <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Eochracha PGP atá comhoiriúnach le \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Ní féidir /dev/null a oscailt"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Eochair PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Iontráil frása faire S/MIME:"
+
+@@ -4741,7 +4821,7 @@ msgstr "Iontráil frása faire S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "As Feidhm "
+
+@@ -4750,7 +4830,7 @@ msgstr "As Feidhm "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Neamhbhailí "
+
+@@ -4759,7 +4839,7 @@ msgstr "Neamhbhailí "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Cúlghairthe "
+
+@@ -4768,7 +4848,7 @@ msgstr "Cúlghairthe "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Iontaofa "
+
+@@ -4777,7 +4857,7 @@ msgstr "Iontaofa "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Gan fíorú "
+
+@@ -4786,7 +4866,7 @@ msgstr "Gan fíorú "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Fíoraithe "
+
+@@ -4795,60 +4875,60 @@ msgstr "Fíoraithe "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Anaithnid "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Teastais S/MIME atá comhoiriúnach le \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Níl an t-aitheantas bailí. An bhfuil tú cinnte gur mhaith leat an eochair seo a úsáid?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Iontráil aitheantas na heochrach: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Níor aimsíodh aon teastas (bailí) do %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Earráid: ní féidir fo-phróiseas OpenSSL a chruthú"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Níorbh fhéidir an teastas a fháil ón gcomhghleacaí"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "gan comhad teastais"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "gan mbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Gan aschur ó OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Ní féidir é a shíniú: Níor sonraíodh eochair. Úsáid \"Sínigh Mar\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Ní féidir fo-phróiseas OpenSSL a oscailt"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4856,19 +4936,19 @@ msgstr ""
+ "[-- Deireadh an aschuir OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Earráid: ní féidir fo-phróiseas OpenSSL a chruthú --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Is criptithe mar S/MIME iad na sonraí seo a leanas --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Is sínithe mar S/MIME iad na sonraí seo a leanas --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4876,7 +4956,7 @@ msgstr ""
+ "\n"
+ "[-- Deireadh na sonraí criptithe mar S/MIME. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4885,169 +4965,169 @@ msgstr ""
+ "[-- Deireadh na sonraí sínithe mar S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (c)riptigh, (s)ínigh, criptigh (l)e, sínigh (m)ar, (a)raon, (n)á déan?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "cslman"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (c)riptigh, (s)ínigh, criptigh (l)e, sínigh (m)ar, (a)raon, (n)á déan?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "cslman"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (c)riptigh, (s)ínigh, criptigh (l)e, sínigh (m)ar, (a)raon, (n)á déan?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "cslman"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Roghnaigh clann algartaim: (1) DES, (2) RC2, (3) AES, or (g)lan?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123g"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s: is conair POP neamhbhailí"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Dhún an freastalaí an nasc"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Níl aon fhíordheimhneoirí ar fáil"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Theip ar fhíordheimhniú SASL"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Nasc le %s dúnta"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Liosta teachtaireachtaí á fháil..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Ag seiceáil do theachtaireachtaí nua..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "níorbh fhéidir fillteán poist shealadach a chruthú: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Ag dul i dteagmháil le %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Níl faic le déanamh"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "ní féidir %s a 'stat': %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Teachtaireachtaí á scriosadh ón fhreastalaí..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Logáil isteach..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Ag seiceáil do theachtaireachtaí nua..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s: is conair POP neamhbhailí"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5059,7 +5139,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6208,188 +6288,188 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "taispeáin roghanna S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Ní ar fáil sa roghchlár seo"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Suas "
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Síos "
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Iatáin"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Ar Aghaidh"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Seo é bun na teachtaireachta"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Seo é barr na teachtaireachta"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Cabhair á taispeáint faoi láthair"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Níl a thuilleadh téacs athfhriotail ann"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Níl a thuilleadh téacs gan athfhriotal tar éis téacs athfhriotail"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Earráid i slonn: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Slonn folamh"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Níl aon ordú iarratais sainmhínithe"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Ordú uathamhairc á rith: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Lá neamhbhailí na míosa: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mí neamhbhailí: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Dáta coibhneasta neamhbhailí: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Níl aon teachtaireacht gan léamh"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Earráid ag oscailt an bhosca poist"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Earráid ag oscailt an bhosca poist"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Ní féidir /dev/null a oscailt"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "earráid i slonn ag: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "paraiméadar ar iarraidh"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "lúibín gan meaitseáil: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: ordú neamhbhailí"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: níl sé ar fáil sa mhód seo"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "paraiméadar ar iarraidh"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "slonn folamh"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "earráid: op anaithnid %d (seol tuairisc fhabht)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Patrún cuardaigh á thiomsú..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Ordú á rith ar theachtaireachtaí comhoiriúnacha..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ní raibh aon teachtaireacht chomhoiriúnach"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Á Shábháil..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Bhuail an cuardach an bun gan teaghrán comhoiriúnach"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Bhuail an cuardach an barr gan teaghrán comhoiriúnach"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Idirbhriseadh an cuardach"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Ní ghlacann an freastalaí leis an ordú TOP"
+
+@@ -6397,7 +6477,7 @@ msgstr "Ní ghlacann an freastalaí leis an ordú TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "ní féidir ceanntásc a scríobh chuig comhad sealadach"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Ní ghlacann an freastalaí leis an ordú UIDL"
+
+@@ -6415,7 +6495,7 @@ msgstr[4] "Tá innéacs na dteachtaireachtaí mícheart. Bain triail as an mbosc
+ msgid "POP host is not defined"
+ msgstr "ní bhfuarthas an t-óstríomhaire POP"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s: is conair POP neamhbhailí"
+@@ -6454,128 +6534,128 @@ msgstr[2] "%s [léadh %d as %d teachtaireacht]"
+ msgstr[3] "%s [léadh %d as %d teachtaireacht]"
+ msgstr[4] "%s [léadh %d as %d teachtaireacht]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Liosta teachtaireachtaí á fháil..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Ag marcáil %d teachtaireacht mar scriosta..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "ní féidir teachtaireacht a scríobh i gcomhad sealadach"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Á fhíordheimhniú (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Á fhíordheimhniú (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Theip ar fhíordheimhniú APOP"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Ní ghlacann an freastalaí leis an ordú USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Theip ar fhíordheimhniú SASL"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Neamhbhailí "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Ní féidir teachtaireachtaí a fhágáil ar an bhfreastalaí"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Earráid ag nascadh leis an bhfreastalaí: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Nasc leis an bhfreastalaí POP á dhúnadh..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Innéacsanna na dteachtaireachtaí á bhfíorú..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Cailleadh an nasc. Athnasc leis an bhfreastalaí POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Teachtaireachtaí Ar Athlá"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Níl aon teachtaireacht ar athlá"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Ceanntásc neamhcheadaithe S/MIME"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Ceanntásc neamhcheadaithe criptithe"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Teachtaireacht á díchriptiú..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Iarratas Nua"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Déan Ailias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Ag feitheamh le freagra..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Iarratas: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Iarratas '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Níl aon ordú iarratais sainmhínithe"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Píopa"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Priontáil"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Á Shábháil..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6585,26 +6665,26 @@ msgstr[2] "Sábháladh an t-iatán"
+ msgstr[3] "Sábháladh an t-iatán"
+ msgstr[4] "Sábháladh an t-iatán"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "RABHADH! Tá tú ar tí %s a fhorscríobh, lean ar aghaidh?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Scagadh an t-iatán"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Scagaire: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Píopa go: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Ní eol dom conas a phriontáil iatáin %s"
+@@ -6612,7 +6692,7 @@ msgstr "Ní eol dom conas a phriontáil iatáin %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6622,50 +6702,50 @@ msgstr[2] "Priontáil iatá(i)n c(h)libeáilte?"
+ msgstr[3] "Priontáil iatá(i)n c(h)libeáilte?"
+ msgstr[4] "Priontáil iatá(i)n c(h)libeáilte?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Priontáil iatán?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Ní féidir teachtaireacht chriptithe a dhíchriptiú"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Iatáin"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Níl aon fopháirt le taispeáint"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Ní féidir an t-iatán a scriosadh ón fhreastalaí POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Ní féidir an t-iatán a scriosadh ón fhreastalaí POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Ní cheadaítear iatáin a bheith scriosta ó theachtaireachtaí criptithe"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Ní cheadaítear iatáin a bheith scriosta ó theachtaireachtaí criptithe"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Ní cheadaítear ach iatáin ilpháirt a bheith scriosta"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Ní cheadaítear ach páirteanna message/rfc822 a scinneadh"
+
+@@ -6705,7 +6785,7 @@ msgstr "Ní féidir %s a chruthú"
+ msgid "Can't find any tagged messages"
+ msgstr "Ní féidir aon teachtaireacht chlibeáilte a aimsiú"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Níor aimsíodh aon liosta postála"
+
+@@ -6720,67 +6800,67 @@ msgstr "Ní féidir gach iatán clibeáilte a dhíchódú. Cuach na cinn eile m
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Ní cheadaítear ach páirteanna message/rfc822 a scinneadh"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Iarcheangail"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Ionsáigh"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Ní féidir type2.list ag mixmaster a fháil"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Roghnaigh slabhra athphostóirí"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Earráid: ní féidir %s a úsáid mar an t-athphostóir deiridh i slabhra"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Ní cheadaítear ach %d ball i slabhra \"mixmaster\""
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Tá an slabhra athphostóirí folamh cheana féin"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Tá an chéad bhall slabhra roghnaithe agat cheana"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Tá ball deiridh an slabhra roghnaithe agat cheana"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Ní ghlacann \"mixmaster\" le ceanntásca Cc nó Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Socraigh an athróg óstainm go cuí le do thoil le linn úsáid \"mixmaster\""
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Earráid agus teachtaireacht á seoladh, scoir an macphróiseas le stádas %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Earráid agus teachtaireacht á seoladh"
+
+@@ -6811,42 +6891,42 @@ msgstr "Seol iad ar aghaidh mar iatáin?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Tabhair freagra ar %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Teachtaireacht leantach go %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Cuir an teachtaireacht isteach sa fhreagra?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Teachtaireacht athfhriotail san áireamh..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Níorbh fhéidir gach teachtaireacht iarrtha a chur sa fhreagra"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Seol é ar aghaidh mar iatán?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Teachtaireacht curtha ar aghaidh á hullmhú..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: níl sé ar fáil sa mhód seo"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "féach ar an iatán mar théacs"
+@@ -6855,196 +6935,196 @@ msgstr "féach ar an iatán mar théacs"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Níl aon bhosca poist.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Athghlaoigh teachtaireacht a bhí curtha ar athlá?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Cuir teachtaireacht in eagar roimh é a chur ar aghaidh?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Tobscoir an teachtaireacht seo (gan athrú)?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Tobscoireadh teachtaireacht gan athrú"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Níor seoladh an post"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Cuireadh an teachtaireacht ar athlá"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Níor sonraíodh aon ábhar, tobscoir?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Níor sonraíodh aon ábhar"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Níor sonraíodh aon ábhar"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "cuir transfer-encoding an iatáin in eagar"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Teachtaireacht á seoladh..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Níorbh fhéidir an teachtaireacht a sheoladh"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Á seoladh sa chúlra"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Seoladh an teachtaireacht"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Níor aimsíodh paraiméadar teorann [seol tuairisc fhabht]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "Níl %s ann níos mó"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "Ní gnáthchomhad %s"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Níorbh fhéidir an teachtaireacht a sheoladh."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Níorbh fhéidir %s a oscailt"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Earráid agus teachtaireacht á seoladh, scoir an macphróiseas le stádas %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Aschur an phróisis seolta"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "DrochIDN %s agus resent-from á ullmhú"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Theip ar athainmniú: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Theip ar athainmniú: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Neamhbhailí "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Theip ar fhíordheimhniú SASL."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Theip ar fhíordheimhniú GSSAPI"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Bosca poist á shórtáil..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Níorbh fhéidir feidhm shórtála a aimsiú [seol tuairisc fhabht]"
+
+@@ -7113,11 +7193,11 @@ msgstr ""
+ "a athdháileadh, agus fáilte, ach de réir coinníollacha áirithe.\n"
+ "Iontráil 'neomutt -vv' chun tuilleadh eolais a fháil.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Roghanna tiomsaithe:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Roghanna tiomsaithe:"
+diff --git a/po/gl.po b/po/gl.po
+index 4d9a80244..5a85442d1 100644
+--- a/po/gl.po
++++ b/po/gl.po
+@@ -9,7 +9,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2001-04-22 22:05+0200\n"
+ "Last-Translator: Roberto Suarez Soto <ask4it@bigfoot.com>\n"
+ "Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
+@@ -19,16 +19,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)exeitar, aceptar (e)sta vez, (a)ceptar sempre"
++
++#, fuzzy
++msgid "roas"
++msgstr "rea"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)exeitar, aceptar (e)sta vez, (a)ceptar sempre"
++
++msgid "roa"
++msgstr "rea"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)exeitar, aceptar (e)sta vez"
++
++#, fuzzy
++msgid "ros"
++msgstr "re"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)exeitar, aceptar (e)sta vez"
++
++msgid "ro"
++msgstr "re"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Saír"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Borrar"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Recuperar"
+
+@@ -36,18 +64,18 @@ msgstr "Recuperar"
+ msgid "Select"
+ msgstr "Seleccionar"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Axuda"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "¡Non tés aliases definidas"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliases"
+
+@@ -56,53 +84,53 @@ msgstr "Aliases"
+ msgid "Alias as: "
+ msgstr "Alias como: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "¡Xa tés un alias definido con ese nome"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr ""
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Enderezo: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr ""
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nome persoal: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] ¿Aceptar?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Gardar a ficheiro: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "¡Erro lendo mensaxe!"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "¡Erro lendo mensaxe!"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias engadido"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Erro intentando ver ficheiro"
+@@ -112,7 +140,7 @@ msgstr "Erro intentando ver ficheiro"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s non existe. ¿Desexa crealo?"
+@@ -121,8 +149,8 @@ msgstr "%s non existe. ¿Desexa crealo?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Non foi posible crear %s: %s"
+@@ -132,7 +160,7 @@ msgstr "Non foi posible crear %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -141,7 +169,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -150,7 +178,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -159,7 +187,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -171,7 +199,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Encriptar"
+@@ -179,7 +207,7 @@ msgstr "Encriptar"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -187,7 +215,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -196,7 +224,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr ""
+@@ -208,12 +236,12 @@ msgstr ""
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Non hai buzón.\n"
+@@ -225,14 +253,14 @@ msgstr "Non hai buzón.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "¿Crear %s?"
+@@ -240,7 +268,7 @@ msgstr "¿Crear %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Borrar"
+
+@@ -248,9 +276,9 @@ msgstr "Borrar"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -258,17 +286,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -277,7 +305,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -285,7 +313,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -293,12 +321,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -306,13 +334,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Erro lendo directorio"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "¿Seguro de borra-lo buzón \"%s\"?"
+@@ -330,7 +358,7 @@ msgstr "¿Seguro de borra-lo buzón \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "¡Imposible bloquea-lo buzón!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "erro no patrón en: %s"
+@@ -403,339 +431,290 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s non é un directorio"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Directorio"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Máscara"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Subscribindo a %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Borrando a subscripción con %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s non é un directorio"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Subscribindo a %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Buzóns [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Subscrito [%s], máscara de ficheiro: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Directorio [%s], máscara de ficheiro: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Non é posible adxuntar un directorio"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Non hai ficheiros que coincidan coa máscara"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "A operación 'Crear' está soportada só en buzóns IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "A operación 'Crear' está soportada só en buzóns IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "A operación 'Borrar' está soportada só en buzóns IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "ve-lo nome do ficheiro seleccioado actualmente"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "¿Seguro de borra-lo buzón \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Buzón borrado"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Buzón borrado"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Buzón non borrado"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Cambiar directorio a: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Erro lendo directorio"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Máscara de ficheiro: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "¿Ordear inversamente por (d)ata, (a)lfabeto, (t)amaño ou (s)en orden?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "¿Ordear por (d)ata, (a)lfabeto, (t)amaño ou (s)en orden?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Novo nome de ficheiro: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Non é posible ver un directorio"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Erro intentando ver ficheiro"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Subscribindo a %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Borrando a subscripción con %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Non hai ficheiros que coincidan coa máscara"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: color non soportado polo terminal"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: non hai tal color"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: non hai tal obxeto"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: parámetros insuficientes"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: non hai tal atributo"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: demasiados parámetros"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "colores por defecto non soportados"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: número de mensaxe non válido.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "¿Verificar firma?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "¡Non foi posible crear o ficheiro temporal"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Non foi posible crea-lo filtro de visualización"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Non foi posible copia-la mensaxe."
+
+-#: commands.c:338
++#: commands.c:340
+ #, fuzzy
+ msgid "S/MIME signature successfully verified"
+ msgstr "Sinatura S/MIME verificada con éxito"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr ""
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ #, fuzzy
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Non foi posible verifica-la sinatura S/MIME"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Sinatura PGP verificada con éxito"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Non foi posible verifica-la sinatura PGP"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "¡Erro executando \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Comando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Rebotar mensaxe a: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Rebotar mensaxes marcadas a: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "¡Erro analizando enderezo"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Rebotar mensaxe a %s?"
+ msgstr[1] "Rebotar mensaxes a %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Mensaxe rebotada"
+ msgstr[1] "Mensaxes rebotadas"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Mensaxe rebotada"
+ msgstr[1] "Mensaxes rebotadas"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ #, fuzzy
+ msgid "Can't create filter process"
+ msgstr "Non podo crea-lo filtro"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Canalizar ó comando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Non foi definido ningún comando de impresión"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "¿Imprimir mensaxe?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "¿Imprimir mensaxes marcadas?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Mensaxe impresa"
+ msgstr[1] "Mensaxes impresas"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -743,166 +722,335 @@ msgstr[0] "Non foi posible imprimi-la mensaxe"
+ msgstr[1] "Non foi posible imprimi-las mensaxes"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordear-inv (d)ata/d(e)/(r)ecb/(t)ema/(p)ara/(f)ío/(n)ada/t(a)m/p(u)nt: "
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordear (d)ata/d(e)/(r)ecb/(t)ema/(p)ara/(f)ío/(n)ada/t(a)m/p(u)nt: "
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dertpfnau"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Comando de shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "%s ó buzón"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr " marcado%s ó buzón"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copiando a %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Tipo de contido cambiado a %s.."
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr ""
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Tipo de contido cambiado a %s.."
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "O xogo de caracteres foi cambiado a %s"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "O xogo de caracteres foi cambiado a %s"
+
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: parámetros insuficientes"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "parámetros insuficientes"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Erro en %s, liña %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Erro en %s, liña %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: erros en %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: a lectura foi abortada por haber demasiados erros in %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: erros en %s"
++msgstr[1] "source: erros en %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: sen enderezo"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr ""
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "edita-la descripción do adxunto"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "edita-la descripción do adxunto"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "edita-la descripción do adxunto"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: demasiados parámetros"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr ""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "campo de cabeceira inválido"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: variable descoñecida"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s non está activada"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: erro en %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Non foi posible imprimi-las mensaxes"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "marcar mensaxes coincidintes cun patrón"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "quitar marca a mensaxes coincidintes cun patrón"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "Subscribindo a %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Subscribindo a %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Non se especificou tema."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "edita-la descripción do adxunto"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Borrando a subscripción con %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Borrando a subscripción con %s..."
++
+ #
+-#: compose.c:99
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Non hai ficheiros adxuntos"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Responder"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -913,78 +1061,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Firmar como: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "¿Responder a %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "edita-lo campo Responder-A"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Enviar"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Cancelar"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Adxuntar ficheiro"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descrip"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Non se especificou tema."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -992,7 +1140,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -1000,14 +1148,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "sí"
+@@ -1018,7 +1166,7 @@ msgstr "sí"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1026,53 +1174,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "O marcado non está soportado."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Firmar, Encriptar"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Encriptar"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Firmar"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(seguir)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<por defecto>"
+
+-#: compose.c:452
++#: compose.c:451
+ #, fuzzy
+ msgid "Encrypt with: "
+ msgstr "Encriptar"
+@@ -1082,12 +1230,12 @@ msgstr "Encriptar"
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "edita-lo campo Responder-A"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1098,7 +1246,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] xa non existe"
+@@ -1110,240 +1258,361 @@ msgstr "%s [#%d] xa non existe"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] modificado. ¿Actualizar codificación?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Adxuntos"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Non podes borra-lo único adxunto"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr ""
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Adxunto gardado"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "O adxunto actual non será convertido"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Adxunto filtrado"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Erro enviando a mensaxe"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Adxuntando ficheiros seleccionados ..."
+ msgstr[1] "Adxuntando ficheiros seleccionados ..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "¡Non foi posible adxuntar %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Abrir buzón do que adxuntar mensaxe"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Abrir buzón do que adxuntar mensaxe"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "¡Imposible bloquea-lo buzón!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Non hai mensaxes nese buzón"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "¡Marca as mensaxes que queres adxuntar"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "¡Non foi posible adxuntar"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "A recodificación só afecta ós adxuntos de texto"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "O adxunto actual non será convertido"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "O adxunto actual será convertido"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Codificación inválida"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "¿Gardar unha copia desta mensaxe?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "ver adxunto como texto"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Cambiar nome a: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, fuzzy, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Non foi atopado: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Novo ficheiro: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type é da forma base/subtipo"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Non coñezo ó Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Non fun capaz de crea-lo ficheiro %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "O que temos aquí é un fallo ó face-lo adxunto"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "¿Editar mensaxe posposta?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Escribir mensaxe ó buzón"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Escribindo mensaxe a %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Mensaxe escrita"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr ""
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr ""
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "¡Imposible bloquea-lo buzón"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "O comando de preconexión fallou."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Copiando a %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Copiando a %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Erro. Conservando ficheiro temporal: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Data relativa incorrecta: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Data relativa incorrecta: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: número de mensaxe non válido.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Día do mes inválido: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mes inválido: %s"
++
++#
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Función non permitida no modo \"adxuntar-mensaxe\"."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: número de mensaxe non válido.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: número de mensaxe non válido.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Data relativa incorrecta: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Día do mes inválido: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr ""
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: variable descoñecida"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Data relativa incorrecta: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Data relativa incorrecta: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nome de usuario en %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Contrasinal para %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Comando de consulta non definido"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1364,7 +1633,7 @@ msgstr "Conectando con %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Non foi posible conectar con %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "erro descoñecido"
+
+@@ -1378,24 +1647,24 @@ msgstr "Erro ó conectar có servidor: %s"
+ msgid "Connection to %s has been aborted"
+ msgstr "Fallou a conexión con %s."
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "erro no patrón en: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1408,138 +1677,112 @@ msgstr "O comando de preconexión fallou"
+ msgid "Connection to %s closed"
+ msgstr "Fallou a conexión con %s."
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Enchendo pozo de entropía: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s ten permisos inseguros."
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL foi deshabilitado debido á falta de entropía."
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Descoñecido"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[imposible calcular]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[ data incorrecta ]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "O certificado do servidor non é aínda válido"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "O certificado do servidor expirou"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Non hai entropía abondo no seu sistema"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Non foi posible obter un certificado do outro extremo"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Non foi posible obter un certificado do outro extremo"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr ""
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Este certificado pertence a:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Este certificado foi emitido por:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Este certificado é válido"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " a %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Fingerprint: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Fingerprint: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)exeitar, aceptar (e)sta vez, (a)ceptar sempre"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)exeitar, aceptar (e)sta vez, (a)ceptar sempre"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)exeitar, aceptar (e)sta vez"
++msgid "SHA256 Fingerprint: "
++msgstr "Fingerprint: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)exeitar, aceptar (e)sta vez"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Saír "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Atención: non foi posible garda-lo certificado"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificado gardado"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Certificado gardado"
+@@ -1547,15 +1790,15 @@ msgstr "Certificado gardado"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr ""
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, fuzzy, c-format
+ msgid "SSL failed: %s"
+ msgstr "O login fallou."
+@@ -1563,96 +1806,80 @@ msgstr "O login fallou."
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "[-- Erro: ¡non foi posible crear subproceso OpenSSL! --]\n"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Non foi posible obter un certificado do outro extremo"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "Certificado gardado"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Error iniciando terminal."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "O certificado do servidor non é aínda válido"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "O certificado do servidor expirou"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "O certificado do servidor expirou"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "O certificado do servidor non é aínda válido"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "rea"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "re"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Conectando mediante SSL usando %s (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1671,38 +1898,18 @@ msgstr "Erro ó conectar có servidor: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "sí"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "non"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "¿Saír de NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Pulsa calquera tecla para seguir..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr "('?' para lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1734,7 +1941,7 @@ msgstr ""
+ "~? esta mensaxe\n"
+ ". nunha liña, de seu, acaba a entrada\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1766,20 +1973,20 @@ msgstr ""
+ "~? esta mensaxe\n"
+ ". nunha liña, de seu, acaba a entrada\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: número de mensaxe non válido.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Un '.' de seu nunha liña remata a mensaxe)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Non hai buzón.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "A mensaxe contén:\n"
+
+@@ -1787,19 +1994,19 @@ msgstr "A mensaxe contén:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(seguir)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "falta o nome do ficheiro.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Non hai liñas na mensaxe.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: comando de editor descoñecido (~? para axuda)\n"
+@@ -1846,19 +2053,73 @@ msgstr "Non foi posible engadir á carpeta: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "¡A mensaxe multiparte non ten parámetro \"boundary\""
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Enfiamento non habilitado"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Pór indicador"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Limpar indicador"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: color non soportado polo terminal"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: non hai tal color"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: non hai tal obxeto"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: non hai tal atributo"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "colores por defecto non soportados"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: número de mensaxe non válido.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "sí"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "non"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "¿Saír de NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Pulsa calquera tecla para seguir..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr "('?' para lista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1879,23 +2140,23 @@ msgstr "[-- Automostra usando %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Chamando ó comando de automostra: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Non podo crea-lo filtro"
+
+-#: handler.c:595
++#: handler.c:594
+ #, fuzzy, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- o %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Automostra da stderr de %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Erro: mensaxe/corpo externo non ten parámetro \"access-type\"--]\n"
+
+@@ -1914,7 +2175,7 @@ msgstr "[-- Erro: mensaxe/corpo externo non ten parámetro \"access-type\"--]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1943,7 +2204,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1957,7 +2218,7 @@ msgstr[1] "[-- Este adxunto %s/%s (tamaño %s bytes) foi borrado --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1969,12 +2230,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Este adxunto %s/%s foi borrado --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nome: %s --]\n"
+@@ -1982,7 +2243,7 @@ msgstr "[-- nome: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1997,7 +2258,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2006,95 +2267,95 @@ msgstr ""
+ "[-- Este adxunto %s/%s non está incluido, --]\n"
+ "[-- e o \"access-type\" %s indicado non está soportado --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Erro: ¡Non foi posible amosar ningunha parte de Multipart/Alternative--]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Adxunto #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Adxunto #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "¡Non foi posible abri-lo ficheiro temporal"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "¡Non foi posible abri-lo ficheiro temporal"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "¡Non foi posible abri-lo ficheiro temporal"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Erro: multipart/signed non ten protocolo"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Este adxunto %s/%s (use '%s' para ver esta parte) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s non está soportado (use '%s' para ver esta parte) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Este adxunto %s/%s (cómpre que 'view-attachments' esté vinculado a unha tecla) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s non está soportado (cómpre que 'view-attachments' esté vinculado a unha tecla) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Este adxunto %s/%s --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s non está soportado --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERRO: por favor, informe deste fallo"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<DESCOÑECIDO>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Vínculos xerais:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funcións sen vínculo:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Axuda sobre %s"
+@@ -2111,41 +2372,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Non é posible facer 'unhook *' dentro doutro hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tipo descoñecido: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: non é posible borrar un %s dende dentro dun %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: non hai tal menú"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: non hai tal menú"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: non hai tal menú"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, fuzzy, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "¡Non foi posible crear o ficheiro temporal!"
+@@ -2183,30 +2444,30 @@ msgstr "Autenticación GSSAPI fallida"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN deshabilitado neste servidor"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Comezando secuencia de login ..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "O login fallou"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autenticando (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Autenticación OAUTHBEARER fallida"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, fuzzy, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autenticando (APOP)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Autenticación SASL fallida"
+
+@@ -2257,92 +2518,82 @@ msgstr "O login fallou."
+ msgid "Mailbox renamed"
+ msgstr "Buzón creado"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Buzón borrado."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Fallou a conexión con %s."
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Este servidor IMAP é moi vello. NeoMutt non traballa con el."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "O login fallou."
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Pechando conexión con %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "¿Usar conexión segura con TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr ""
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ #, fuzzy
+ msgid "Encrypted connection unavailable"
+ msgstr "Chave da sesión encriptada"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Subscribindo a %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Borrando a subscripción con %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "Subscribindo a %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Borrando a subscripción con %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Copiando %d mensaxes a %s..."
+ msgstr[1] "Copiando %d mensaxes a %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "¿Crear %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ #, fuzzy
+ msgid "Expunge failed"
+ msgstr "O login fallou."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2350,45 +2601,45 @@ msgstr[0] "Marcando %d mensaxes borradas ..."
+ msgstr[1] "Marcando %d mensaxes borradas ..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Gardando indicadores de estado da mensaxe... [%d/%d]"
+ msgstr[1] "Gardando indicadores de estado da mensaxe... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "¡Erro analizando enderezo!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Borrando mensaxes do servidor..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr ""
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Seleccionando %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ #, fuzzy
+ msgid "Error opening mailbox"
+ msgstr "¡Erro cando se estaba a escribi-lo buzón!"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Mes inválido: %s"
+@@ -2399,7 +2650,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "¡Memoria agotada"
+
+@@ -2420,7 +2671,7 @@ msgstr "Recollendo cabeceiras de mensaxes... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Non foi posible recoller cabeceiras da versión de IMAP do servidor"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Recollendo cabeceiras de mensaxes... [%d/%d]"
+@@ -2435,161 +2686,161 @@ msgstr "Enviando mensaxe ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copiando mensaxe %d a %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Recollendo mensaxe..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "O índice de mensaxes é incorrecto. Tente reabri-lo buzón."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "¿Seguir?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Saír"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Gardar"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Nova"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Responder"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupo"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "¿Responder a %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Non hai buzóns abertos"
+
+ #
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Non hai mensaxes"
+
+-#: index.c:202
++#: index.c:198
+ #, fuzzy
+ msgid "No visible messages"
+ msgstr "Non hai novas mensaxes"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "O buzón é de só lectura"
+
+ #
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Función non permitida no modo \"adxuntar-mensaxe\""
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "¡Non se pode cambiar a escritura un buzón de só lectura"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Os cambios ó buzón serán escritos á saída da carpeta"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Os cambios á carpeta non serán gardados"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "¡%s non é un buzón"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "O buzón foi modificado externamente. Os indicadores poden ser erróneos"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Novo correo neste buzón"
+
+-#: index.c:1242
++#: index.c:1247
+ #, fuzzy
+ msgid "Mailbox was externally modified"
+ msgstr "O buzón foi modificado externamente. Os indicadores poden ser erróneos"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Non hai mensaxes marcadas"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ #, fuzzy
+ msgid "Nothing to do"
+ msgstr "Conectando con %s.."
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Introduza keyID para %s: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "A mensaxe pai non é visible na vista limitada"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Borrando mensaxes do servidor..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "borrar tódalas mensaxes no fío"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Saltar á mensaxe: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "O parámetro debe ser un número de mensaxe"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Número de mensaxe inválido"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Esa mensaxe non é visible"
+
+@@ -2602,38 +2853,38 @@ msgstr "Esa mensaxe non é visible"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Non hai mensaxes recuperadas."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Borrar as mensaxes que coincidan con: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Non hai patrón limitante efectivo"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Límite: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limitar ás mensaxes que coincidan con: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "¿Saír de NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marcar as mensaxes que coincidan con: "
+
+@@ -2641,213 +2892,213 @@ msgstr "Marcar as mensaxes que coincidan con: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Non hai mensaxes recuperadas."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Recuperar as mensaxes que coincidan con: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Desmarcar as mensaxes que coincidan con: "
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "Pechando conexión ó servidor IMAP.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Non hai tema, cancelando"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Non hai tema, cancelando"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Non hai tema, cancelando"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Abrir buzón en modo de só lectura"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Abrir buzón"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Non hai buzóns con novo correo."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Abrir buzón en modo de só lectura"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "¿Saír de NeoMutt sen gardar?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Non se puido crea-lo filtro"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "gardar esta mensaxe para mandar logo"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Está na última mensaxe"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Non hai mensaxes recuperadas"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Está na primeira mensaxe"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "A mensaxe pai non é visible na vista limitada"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Non hai novas mensaxes"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "A mensaxe pai non é visible na vista limitada"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Non hai mensaxes sen ler"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "A búsqueda volveu ó principio"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "A búsqueda volveu ó final"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "amosar unha mensaxe"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Non hai máis fíos"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Está no primeiro fío"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "O fío contén mensaxes sen ler"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Non hai mensaxes recuperadas."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Non foi posible escribi-la mensaxe"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2857,7 +3108,7 @@ msgstr[1] "O buzón non cambiou"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "O buzón non cambiou"
+@@ -2866,7 +3117,7 @@ msgstr "O buzón non cambiou"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "saltar á mensaxe pai no fío"
+@@ -2874,14 +3125,14 @@ msgstr "saltar á mensaxe pai no fío"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Introduza keyID para %s: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Mensaxe posposta."
+@@ -2889,269 +3140,126 @@ msgstr "Mensaxe posposta."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Mensaxe rebotada"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Non hai mensaxes nese buzón"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Non hai mensaxes recuperadas."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Erro na liña de comando: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Erro na liña de comando: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "non foi posible determina-lo nome de usuario"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "parámetros insuficientes"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Erro en %s, liña %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Erro en %s, liña %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: erros en %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: a lectura foi abortada por haber demasiados erros in %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: erros en %s"
+-msgstr[1] "source: erros en %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: sen enderezo"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr ""
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "edita-la descripción do adxunto"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "edita-la descripción do adxunto"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "edita-la descripción do adxunto"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr ""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "campo de cabeceira inválido"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: variable descoñecida"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s non está activada"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: erro en %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Non foi posible imprimi-las mensaxes"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "marcar mensaxes coincidintes cun patrón"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "quitar marca a mensaxes coincidintes cun patrón"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Subscribindo a %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Non se especificou tema."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "edita-la descripción do adxunto"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Borrando a subscripción con %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: comando descoñecido"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Día do mes inválido: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+ #
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Función non permitida no modo \"adxuntar-mensaxe\"."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Bucle de macro detectado"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "A tecla non está vinculada"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "A tecla non está vinculada. Pulsa '%s' para axuda."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: secuencia de teclas nula"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: secuencia de teclas baleira"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ #, fuzzy
+ msgid "exec: no arguments"
+ msgstr "exec: parámetros insuficientes"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, fuzzy, c-format
+ msgid "%s: no such function"
+ msgstr "%s: función descoñecida"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ #, fuzzy
+ msgid "Enter keys (^G to abort): "
+ msgstr "Introduza keyID para %s: "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr ""
+@@ -3175,7 +3283,7 @@ msgstr "non se atopou unha entrada mailcap para o tipo %s"
+ msgid "Scanning %s..."
+ msgstr "Seleccionando %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Lendo %s..."
+@@ -3190,13 +3298,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr ""
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Escribindo %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3219,7 +3327,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3262,54 +3370,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Error iniciando terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "non foi posible determina-lo nome de usuario"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "non foi posible determina-lo directorio \"home\""
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr ""
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Non foi especificado ningún destinatario"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Non foi posible abri-lo ficheiro da mensaxe: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: non foi posible adxuntar ficheiro"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Non hai buzóns con novo correo"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Non se definiron buzóns para correo entrante"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "O buzón está valeiro"
+
+@@ -3352,52 +3460,52 @@ msgstr "¡Non foi posible reabri-lo buzón"
+ msgid "Can't write message"
+ msgstr "Non foi posible escribi-la mensaxe"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Saltar a: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Número de índice inválido"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Non hai entradas"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Non é posible moverse máis abaixo"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Non é posible moverse máis arriba"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Está na primeira páxina"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Está na derradeira páxina"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Está na derradeira entrada"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Está na primeira entrada"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Búsqueda de: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Búsqueda inversa de: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Non se atopou"
+
+@@ -3440,20 +3548,20 @@ msgstr "Agardando polo intento de flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Non podo crea-lo ficheiro temporal"
+
+@@ -3472,7 +3580,7 @@ msgstr "Depurando a nivel %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Depurando a nivel %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Erro ó conectar có servidor: %s"
+@@ -3496,17 +3604,17 @@ msgstr "Atrapado sinal %d (%s) ... Saíndo.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Atrapado sinal %d ... Saíndo.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3514,152 +3622,124 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ #, fuzzy
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "O ficheiro é un directorio, ¿gardar nel?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "O ficheiro é un directorio, ¿gardar nel?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Ficheiro no directorio: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "O ficheiro existe, ¿(s)obreescribir, (e)ngadir ou (c)ancelar?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "sec"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Non foi posible garda-la mensaxe no buzón POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "¿engadir mensaxes a %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Non é posible editar unha mensaxe no servidor POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nome de usuario en %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Contrasinal para %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Comando de consulta non definido"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Non se puido atopa-lo nome, ¿continuar?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "A entrada \"compose\" no ficheiro Mailcap require %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Fallo ó abri-lo ficheiro para analiza-las cabeceiras"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Fallo ó abri-lo ficheiro para quitar as cabeceiras"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "Fallo ó abri-lo ficheiro para analiza-las cabeceiras"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr ""
+ "Non hai entrada \"compose\" para %sno ficheiro Mailcap, creando\n"
+ " ficheiro vacío"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "A entrada \"Edit\" do ficheiro Mailcap require %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Non hai entrada \"edit\" no ficheiro Mailcap para %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Non se atopou ningunha entrada coincidente no ficheiro mailcap.Vendo como texto"
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Tipo MIME non definido. Non se pode ver-lo ficheiro adxunto."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Adxuntos"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Adxuntos"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "¡Fallo de escritura"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "¡Non lle sei cómo imprimir iso"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Búsqueda"
+
+@@ -3668,21 +3748,21 @@ msgstr "Búsqueda"
+ msgid "History '%s'"
+ msgstr "Consulta '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Día do mes inválido: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Non foi posible bloquear %s.\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ #, fuzzy
+ msgid "New mail in "
+ msgstr "Novo correo en %s."
+@@ -3706,20 +3786,20 @@ msgstr "A mensaxe pai non é visible na vista limitada"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "A mensaxe pai non é visible na vista limitada"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Búsqueda interrompida."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "¡Non foi posible adxuntar %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3731,69 +3811,69 @@ msgstr[1] "Marcando %d mensaxes borradas ..."
+ msgid "Can't open trash folder"
+ msgstr "Non foi posible engadir á carpeta: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "¿Mover mensaxes lidas a %s?"
+ msgstr[1] "¿Mover mensaxes lidas a %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "¿Purgar %d mensaxe marcada como borrada?"
+ msgstr[1] "¿Purgar %d mensaxes marcadas como borradas?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Movendo mensaxes lidas a %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "O buzón non cambiou"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d conservados, %d movidos, %d borrados"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d conservados, %d borrados"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Pulse '%s' para cambiar a modo escritura"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "¡Use 'toggle-write' para restablece-lo modo escritura"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "O buzón está marcado como non escribible. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Buzón marcado para comprobación"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr ""
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, fuzzy, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Saída PGP a continuación (hora actual: %c) --]\n"
+@@ -3802,67 +3882,67 @@ msgstr "[-- Saída PGP a continuación (hora actual: %c) --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Contrasinal PGP esquecido"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Chamando ó PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Mensaxe non enviada"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr ""
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr ""
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr ""
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+ "\n"
+ msgstr "[-- Erro: protocolo multiparte/asinado %s descoñecido --]\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+ msgstr "[-- Erro: estructura multiparte/asinada inconsistente --]\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3871,7 +3951,7 @@ msgstr ""
+ "[-- Atención: non é posible verificar sinaturas %s/%s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ #, fuzzy
+ msgid ""
+ "[-- The following data is signed --]\n"
+@@ -3880,7 +3960,7 @@ msgstr ""
+ "[-- Os datos a continuación están asinados --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3888,7 +3968,7 @@ msgstr ""
+ "[-- Atención: non se atoparon sinaturas. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -3909,236 +3989,236 @@ msgstr "Chamando ó S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Mes inválido: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Mes inválido: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Fingerprint: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "O certificado do servidor expirou"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "SSL non está accesible."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "¿Crear %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Erro na liña de comando: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4147,28 +4227,34 @@ msgstr ""
+ "\n"
+ "[-- Fin dos datos asinados --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Erro: ¡fin de ficheiro inesperado! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "Sinatura PGP verificada con éxito"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4176,11 +4262,11 @@ msgstr ""
+ "[-- COMEZA A MESAXE PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- COMEZA O BLOQUE DE CHAVE PÚBLICA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4188,25 +4274,25 @@ msgstr ""
+ "[-- COMEZA A MESAXE FIRMADA CON PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ #, fuzzy
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr ""
+ "\n"
+ "[-- FIN DA MESAXE PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FIN DO BLOQUE DE CHAVE PÚBLICA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ #, fuzzy
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr ""
+ "\n"
+ "[-- FIN DA MESAXE FIRMADA CON PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4214,11 +4300,11 @@ msgstr ""
+ "[-- Erro: ¡non se atopou o comezo da mensaxe PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Erro: ¡non foi posible crea-lo ficheiro temporal --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4227,7 +4313,7 @@ msgstr ""
+ "[-- Os datos a continuación están encriptados con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4235,32 +4321,27 @@ msgstr ""
+ "[-- Os datos a continuación están encriptados con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin dos datos con encriptación PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ #, fuzzy
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin dos datos con encriptación PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "Sinatura PGP verificada con éxito"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "Non foi posible copia-la mensaxe."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+@@ -4269,7 +4350,7 @@ msgstr ""
+ "[-- Os datos a continuación están asinados --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+@@ -4278,41 +4359,41 @@ msgstr ""
+ "[-- Os datos a continuación están encriptados con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin dos datos asinados --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- Fin dos datos con encriptación S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "Mes inválido: %s"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4320,103 +4401,103 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Encriptar"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "Certificado gardado"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr ""
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "Saír "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "Conectando con %s..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Erro ó conectar có servidor: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Erro na liña de comando: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Tódalas chaves coincidintes están marcadas como expiradas/revocadas"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Seleccionar "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Comprobar chave "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Chaves S/MIME coincidintes con \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "Chaves PGP coincidintes con \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "Chaves S/MIME coincidintes con \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "Chaves PGP coincidintes con \"%s\""
+@@ -4425,58 +4506,58 @@ msgstr "Chaves PGP coincidintes con \"%s\""
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, fuzzy, c-format
+ msgid "%s <%s>"
+ msgstr "%s [%s]\n"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, fuzzy, c-format
+ msgid "%s \"%s\""
+ msgstr "%s [%s]\n"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Esta chave non pode ser usada: expirada/deshabilitada/revocada"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Este ID expirou/foi deshabilitado/foi revocado. ¿Está seguro de querer usa-la chave?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Este ID non é de confianza. ¿Está seguro de querer usa-la chave?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Este ID é de confianza marxinal. ¿Está seguro de querer usa-la chave?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Buscando chaves que coincidan con \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "¿Usa-lo keyID = \"%s\" para %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Introduza keyID para %s: "
+@@ -4485,16 +4566,16 @@ msgstr "Introduza keyID para %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Non se atopou"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Introduza o key ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "erro no patrón en: %s"
+@@ -4502,99 +4583,99 @@ msgstr "erro no patrón en: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Chave PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "efcaio"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "efcaio"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "efcaio"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "efcaio"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "efcaio"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "efcaio"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Fallo ó abri-lo ficheiro para analiza-las cabeceiras."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Introduza o contrasinal PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Erro: ¡non foi posible crear subproceso PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4603,16 +4684,16 @@ msgstr "[-- Fin da saída PGP --]\n"
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Sinatura PGP verificada con éxito"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4620,130 +4701,130 @@ msgstr ""
+ "[-- Erro: ¡non foi posible crear un subproceso PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ #, fuzzy
+ msgid "Decryption failed"
+ msgstr "O login fallou"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "¡Non foi posible abri-lo subproceso PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Non foi posible invocar ó PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "efcaio"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "efcaio"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "efcaio"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "efcaio"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "efcaio"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas, (i)nterior, ou (o)lvidar?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "efcaio"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Recollendo chave PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ #, fuzzy
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Tódalas chaves coincidintes están marcadas como expiradas/revocadas"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Chaves PGP coincidintes con <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Chaves PGP coincidintes con \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Non foi posible abrir /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Chave PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ #, fuzzy
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Introduza o contrasinal S/MIME:"
+@@ -4753,7 +4834,7 @@ msgstr "Introduza o contrasinal S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ #, fuzzy
+ msgid "Expired "
+ msgstr "Saír "
+@@ -4763,7 +4844,7 @@ msgstr "Saír "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ #, fuzzy
+ msgid "Invalid "
+ msgstr "Mes inválido: %s"
+@@ -4773,7 +4854,7 @@ msgstr "Mes inválido: %s"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr ""
+
+@@ -4782,7 +4863,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr ""
+
+@@ -4791,7 +4872,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr ""
+
+@@ -4800,7 +4881,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr ""
+
+@@ -4809,92 +4890,92 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ #, fuzzy
+ msgid "Unknown "
+ msgstr "Descoñecido"
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, fuzzy, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Chaves S/MIME coincidintes con \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Este ID non é de confianza. ¿Está seguro de querer usa-la chave?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ #, fuzzy
+ msgid "Enter keyID: "
+ msgstr "Introduza keyID para %s: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr ""
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ #, fuzzy
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "[-- Erro: ¡non foi posible crear subproceso OpenSSL --]\n"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Non foi posible obter un certificado do outro extremo"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ #, fuzzy
+ msgid "no certfile"
+ msgstr "Non se puido crea-lo filtro"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ #, fuzzy
+ msgid "no mbox"
+ msgstr "(non hai buzón)"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr ""
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ #, fuzzy
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "¡Non foi posible abri-lo subproceso OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ #, fuzzy
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+ msgstr "[-- Fin da saída OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ #, fuzzy
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Erro: ¡non foi posible crear subproceso OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ #, fuzzy
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- Os datos a continuación están encriptados con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ #, fuzzy
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- Os datos a continuación están asinados --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4903,7 +4984,7 @@ msgstr ""
+ "\n"
+ "[-- Fin dos datos con encriptación S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4913,170 +4994,170 @@ msgstr ""
+ "[-- Fin dos datos asinados --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas ou (o)lvidar?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "efcao"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas ou (o)lvidar?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "efcao"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "¿(e)ncriptar, (f)irmar, firmar (c)omo, (a)mbas ou (o)lvidar?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "efcao"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ #, fuzzy
+ msgid "No news server defined"
+ msgstr "Non foi definido nome de usuario POP."
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr ""
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "¡O servidor pechou a conexión"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ #, fuzzy
+ msgid "No authenticators available"
+ msgstr "Autenticación SASL fallida."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Autenticación SASL fallida"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Fallou a conexión con %s."
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Recollendo a lista de mensaxes..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Buscando novas mensaxes..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "Non foi posible crea-lo buzón temporal: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Conectando con %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Conectando con %s.."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Non foi atopado: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Borrando mensaxes do servidor..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Comezando secuencia de login ..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Buscando novas mensaxes..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr ""
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5088,7 +5169,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6247,189 +6328,189 @@ msgid "show S/MIME options"
+ msgstr "amosa-las opcións S/MIME"
+
+ #
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Non dispoñible neste menú"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PáxAnt"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "SegPáx"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Ver adxunto"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Seguinte"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Amosase o final da mensaxe"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Amosase o principio da mensaxe"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Estase a amosa-la axuda"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Non hai máis texto citado"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Non hai máis texto sen citar despois do texto citado"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Erro na expresión: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "erro na expresión"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Comando de consulta non definido"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Chamando ó comando de automostra: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Día do mes inválido: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mes inválido: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Data relativa incorrecta: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Non hai mensaxes sen ler"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "¡Erro cando se estaba a escribi-lo buzón!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "¡Erro cando se estaba a escribi-lo buzón!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Non foi posible abrir /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "erro no patrón en: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "falta un parámetro"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "paréntese sen contraparte: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: comando inválido"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: non está soportado neste modo"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "falta un parámetro"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "patrón valeiro"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "erro: operador descoñecido %d (informe deste erro)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compilando patrón de búsqueda..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Executando comando nas mensaxes coincidintes..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Non hai mensaxes que coincidan co criterio"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Gardando..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "A búsqueda cheou ó final sen atopar coincidencias"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "A búsqueda chegou ó comezo sen atopar coincidencia"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Búsqueda interrompida"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "O comando TOP non está soportado polo servidor"
+
+@@ -6437,7 +6518,7 @@ msgstr "O comando TOP non está soportado polo servidor"
+ msgid "Can't write header to temporary file"
+ msgstr "Non foi posible escribi-la cabeceira ó ficheiro temporal"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "O comando UIDL non está soportado polo servidor"
+
+@@ -6452,7 +6533,7 @@ msgstr[1] "O índice de mensaxes é incorrecto. Tente reabri-lo buzón."
+ msgid "POP host is not defined"
+ msgstr "O servidor POP non está definido"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr ""
+@@ -6485,157 +6566,157 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d de %d mensaxes lidas]"
+ msgstr[1] "%s [%d de %d mensaxes lidas]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Recollendo a lista de mensaxes..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Marcando %d mensaxes borradas ..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Non foi posible escribi-la mensaxe ó ficheiro temporal"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autenticando (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autenticando (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Autenticación APOP fallida"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "O comando USER non está soportado polo servidor"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Autenticación SASL fallida"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Mes inválido: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Non foi posible deixa-las mensaxes no servidor"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Erro ó conectar có servidor: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Pechando conexión có servidor POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verificando os índices de mensaxes..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Perdeuse a conexión. ¿Volver a conectar ó servidor POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Mensaxes pospostas"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Non hai mensaxes pospostas"
+
+-#: postpone.c:480
++#: postpone.c:526
+ #, fuzzy
+ msgid "Illegal S/MIME header"
+ msgstr "Cabeceira S/MIME ilegal"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Cabeceira PGP ilegal"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Recollendo mensaxe..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nova consulta"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Facer alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Agardando resposta..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Consulta: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Consulta '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Comando de consulta non definido"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Canalizar"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Imprimir"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Gardando..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Adxunto gardado"
+ msgstr[1] "Adxunto gardado"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "¡ATENCION! Está a punto de sobreescribir %s, ¿seguir?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Adxunto filtrado"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrar a través de: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Canalizar a: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "¡Non sei cómo imprimir adxuntos %s"
+@@ -6643,60 +6724,60 @@ msgstr "¡Non sei cómo imprimir adxuntos %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "¿Imprimi-la(s) mensaxe(s) marcada(s)?"
+ msgstr[1] "¿Imprimi-la(s) mensaxe(s) marcada(s)?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "¿Imprimir adxunto?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ #, fuzzy
+ msgid "Can't decrypt encrypted message"
+ msgstr "Non foi posible atopar ningunha mensaxe marcada."
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Adxuntos"
+
+ #
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Non hai subpartes que amosar."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Non é posible borrar un adxunto do servidor POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Non é posible borrar un adxunto do servidor POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ #, fuzzy
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "O borrado de adxuntos de mensaxes PGP non está soportado"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "O borrado de adxuntos de mensaxes PGP non está soportado"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Só o borrado de adxuntos de mensaxes multiparte está soportado"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Somentes podes rebotar partes \"message/rfc822\""
+
+@@ -6735,7 +6816,7 @@ msgstr "Non foi posible crear %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Non foi posible atopar ningunha mensaxe marcada"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "¡Non se atoparon listas de correo"
+
+@@ -6752,67 +6833,67 @@ msgstr ""
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Somentes podes rebotar partes \"message/rfc822\""
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Engadir"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Insertar"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Ok"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Non foi posible recolle-lo 'type2.list' do mixmaster."
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Seleccionar unha cadea de remailers"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Erro: %s non pode ser usado como remailer final dunha cadea"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "As cadeas mixmaster están limitadas a %d elementos"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "A cadea de remailers xa está valeira"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "O primeiro elemento da cadea xa está seleccionado"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "O derradeiro elemento da cadea xa está seleccionado"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "O mixmaster non acepta cabeceiras Cc ou Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Por favor, use un valor correcto da variable 'hostname' cando use o mixmaster."
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Erro enviando mensaxe, o proceso fillo saíu con %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Erro enviando a mensaxe"
+
+@@ -6843,42 +6924,42 @@ msgstr "¿Reenviar mensaxes coma adxuntos?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "¿Responder a %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "¿Responder a %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "¿Inclui-la mensaxe na resposta?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Incluindo mensaxe citada..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "¡Non foi posible incluir tódalas mensaxes requeridas"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "¿Remitir como adxunto?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Preparando mensaxe remitida ..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: non está soportado neste modo"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "ver adxunto como texto"
+@@ -6887,197 +6968,197 @@ msgstr "ver adxunto como texto"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Non hai buzón.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "¿Editar mensaxe posposta?"
+
+-#: send.c:2228
++#: send.c:2239
+ #, fuzzy
+ msgid "Edit forwarded message?"
+ msgstr "Preparando mensaxe remitida ..."
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "¿Cancelar mensaxe sen modificar?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Mensaxe sen modificar cancelada"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Mensaxe non enviada"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Mensaxe posposta"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Non hai tema, ¿cancela-lo envío?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Non se especificou tema"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Non se especificou tema"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "edita-lo \"transfer-encoding\" do adxunto"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Enviando mensaxe..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Non foi posible envia-la mensaxe"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Mandando en segundo plano"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mensaxe enviada"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "¡Non se atopout parámetro \"boundary\" [informe deste erro]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "¡Xa non existe %s"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, fuzzy, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s non é un buzón"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Non foi posible envia-la mensaxe."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Non foi posible abrir %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Erro enviando mensaxe, o proceso fillo saíu con %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Saída do proceso de distribución"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr ""
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "O login fallou."
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "O login fallou."
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Mes inválido: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Autenticación SASL fallida."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Autenticación GSSAPI fallida"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Ordeando buzón..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "¡Non foi atopada unha función de ordeación [informe deste fallo]"
+
+@@ -7129,11 +7210,11 @@ msgstr ""
+ "NeoMutt é software libre, e vostede é benvido cando desexe redistribuilo \n"
+ "baixo certas condicións; escriba 'neomutt -vv' para ve-losdetalles.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opcións de compilación:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opcións de compilación:"
+diff --git a/po/hu.po b/po/hu.po
+index cfd33b583..a1a6af2e1 100644
+--- a/po/hu.po
++++ b/po/hu.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2003-08-01 13:56+0000\n"
+ "Last-Translator: Szabolcs Horváth <horvaths@fi.inf.elte.hu>\n"
+ "Language-Team: LME Magyaritasok Lista <magyar@lists.linux.hu>\n"
+@@ -20,16 +20,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(v)isszautasít, (e)gyszer elfogad, (m)indig elfogad"
++
++#, fuzzy
++msgid "roas"
++msgstr "vem"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(v)isszautasít, (e)gyszer elfogad, (m)indig elfogad"
++
++msgid "roa"
++msgstr "vem"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(v)isszautasít, (e)gyszer elfogad"
++
++#, fuzzy
++msgid "ros"
++msgstr "ve"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(v)isszautasít, (e)gyszer elfogad"
++
++msgid "ro"
++msgstr "ve"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Kilép"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Töröl"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Visszaállít"
+
+@@ -37,18 +65,18 @@ msgstr "Visszaállít"
+ msgid "Select"
+ msgstr "Választ"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Súgó"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Nincs bejegyzés a címjegyzékben"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Címjegyzék"
+
+@@ -57,53 +85,53 @@ msgstr "Címjegyzék"
+ msgid "Alias as: "
+ msgstr "Álnév: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Már van bejegyzés ilyen álnévvel"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Figyelmeztetés: Ez az álnév lehet, hogy nem működik. Javítsam?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Cím: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Hibás IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Név: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Rendben?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Mentés fájlba: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Hiba a fájl megjelenítéskor"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Hiba a fájl megjelenítéskor"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Cím bejegyezve"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Hiba a fájl megjelenítéskor"
+@@ -113,7 +141,7 @@ msgstr "Hiba a fájl megjelenítéskor"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s nem létezik. Létrehozzam?"
+@@ -122,8 +150,8 @@ msgstr "%s nem létezik. Létrehozzam?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Nem tudom létrehozni %s: %s"
+@@ -133,7 +161,7 @@ msgstr "Nem tudom létrehozni %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -142,7 +170,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -151,7 +179,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -160,7 +188,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -172,7 +200,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Titkosít"
+@@ -180,7 +208,7 @@ msgstr "Titkosít"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -188,7 +216,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -197,7 +225,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Nem található (érvényes) tanúsítvány ehhez: %s"
+@@ -209,12 +237,12 @@ msgstr "Nem található (érvényes) tanúsítvány ehhez: %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Nincs postafiók.\n"
+@@ -226,14 +254,14 @@ msgstr "Nincs postafiók.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "%s létrehozása?"
+@@ -241,7 +269,7 @@ msgstr "%s létrehozása?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Törlés"
+
+@@ -249,9 +277,9 @@ msgstr "Törlés"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -259,17 +287,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -278,7 +306,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -286,7 +314,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -294,12 +322,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -307,13 +335,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Hiba a könyvtár beolvasásakor"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Valóban törli a \"%s\" postafiókot?"
+@@ -331,7 +359,7 @@ msgstr "Valóban törli a \"%s\" postafiókot?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Nem tudom zárolni a postafiókot!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "hiba a mintában: %s"
+@@ -404,336 +432,287 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "A(z) %s nem könyvtár"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Könyvtárváltás"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maszk"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "%s felírása..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "%s leírása..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "A(z) %s nem könyvtár"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "%s felírása..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Postafiókok [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Felírt [%s], Fájlmaszk: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Könyvtár [%s], Fájlmaszk: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Könyvtár nem csatolható"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Nincs a fájlmaszknak megfelelő fájl"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Csak IMAP postafiókok létrehozása támogatott"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Csak IMAP postafiókok létrehozása támogatott"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Csak IMAP postafiókok törlése támogatott"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "kijelölt fájl nevének mutatása"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Valóban törli a \"%s\" postafiókot?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Postafiók törölve"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Postafiók törölve"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "A postafiók nem lett törölve"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Könyvtár: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Hiba a könyvtár beolvasásakor"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Fájlmaszk: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Fordított rendezés (d)átum, (n)év, (m)éret szerint vagy (r)endezetlen?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Rendezés (d)átum, (n)év, (m)éret szerint vagy (r)endezetlen?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Az új fájl neve: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "A könyvtár nem jeleníthető meg"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Hiba a fájl megjelenítéskor"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "%s felírása..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "%s leírása..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Nincs a fájlmaszknak megfelelő fájl"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: a terminál által nem támogatott szín"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: nincs ilyen szín"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: nincs ilyen objektum"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: túl kevés paraméter"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: nincs ilyen attribútum"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: túl sok paraméter"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "az alapértelmezett színek nem támogatottak"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: érvénytelen levélszám.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Ellenőrizzük a aláírást?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Nem lehet átmeneti fájlt létrehozni"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Nem lehet megjelenítő szűrőt létrehozni."
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "A levelet nem tudtam másolni"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME aláírás sikeresen ellenőrizve"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Az S/MIME tanúsítvány tulajdonosa nem egyezik a küldővel. "
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Az S/MIME aláírást NEM tudtam ellenőrizni"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "A PGP aláírás sikeresen ellenőrizve"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "A PGP aláírást NEM tudtam ellenőrizni"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Hiba a(z) \"%s\" futtatásakor"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Parancs: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Levél visszaküldése. Címzett: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Kijelölt levelek visszaküldése. Címzett: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Hibás cím"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Levél visszaküldése %s részére"
+ msgstr[1] "Levél visszaküldése %s részére"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "A levél nem lett visszaküldve"
+ msgstr[1] "A levél nem lett visszaküldve"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Levél visszaküldve"
+ msgstr[1] "Levél visszaküldve"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Szűrőfolyamatot nem lehet létrehozni"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Parancs, aminek továbbít: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Nincs nyomtatási parancs megadva"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Kinyomtatod a levelet?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Kinyomtatod a kijelölt leveleket?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Levél kinyomtatva"
+ msgstr[1] "Levél kinyomtatva"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -741,165 +720,334 @@ msgstr[0] "A levelet nem tudtam kinyomtatni"
+ msgstr[1] "A leveleket nem tudtam kinyomtatni"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Fordítva rendez (d)átum/(f)eladó/ér(k)/tár(g)y/(c)ímzett/(t)éma/(r)endetlen/(m)éret/(p)ontszám: "
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Rendez (d)átum/(f)eladó/ér(k)ezés/tár(g)y/(c)ímzett/(t)éma/(r)endezetlen/(m)éret/(p)ontszám: "
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfkgctrmp"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell parancs: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Dekódolás-mentés postafiókba"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekódolás-mentés kijelölt postafiókba"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Visszafejtés-mentés postafiókba"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Visszafejtés-mentés kijelölt postafiókba"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Mentés postafiókba"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Mentés kijelölt postafiókba"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekódolás-másolás postafiókba"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekódolás-másolás kijelölt postafiókba"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Visszafejtés-másolás postafiókba"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Visszafejtés-másolás kijelölt postafiókba"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Másolás postafiókba"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Másolás kijelölt postafiókba"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Másolás a(z) %s-ba..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Tartalom-típus megváltoztatva %s-ra"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Átalakítsam %s formátumra küldéskor?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Tartalom-típus megváltoztatva %s-ra"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Karakterkészlet beállítva: %s; nem alakítom át"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Karakterkészlet beállítva: %s; átalakítom"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: túl kevés paraméter"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "túl kevés paraméter"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Hiba a %s-ban, sor %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Hiba a %s-ban, sor %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: hiba a %s fájlban"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: az olvasás megszakadt, a %s fájlban túl sok a hiba"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: hiba a %s fájlban"
++msgstr[1] "source: hiba a %s fájlban"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "címjegyzék: nincs cím"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Figyelmeztetés: Hibás IDN '%s' a '%s' álnévben"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "melléklet-leírás szerkesztése"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "melléklet-leírás szerkesztése"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "melléklet-leírás szerkesztése"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: túl sok paraméter"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Figyelmeztetés: Hibás IDN '%s' a '%s' álnévben"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "érvénytelen mező a fejlécben"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: ismeretlen változó"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s beállítása törölve"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: hiba a %s-nál"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "A leveleket nem tudtam kinyomtatni"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "levelek kijelölése mintára illesztéssel"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "kijelölés megszüntetése mintára illesztéssel"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "%s felírása..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "%s felírása..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Nincs tárgy megadva."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "melléklet-leírás szerkesztése"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s leírása..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "%s leírása..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Nincs melléklet"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Válasz"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -910,78 +1058,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Aláír mint: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Válasz a %s%s címre?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "Válaszcím szerkesztése"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Küld"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Mégse"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Fájl csatolás"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Leírás"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Nincs tárgy megadva."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -989,7 +1137,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -997,14 +1145,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "igen"
+@@ -1015,7 +1163,7 @@ msgstr "igen"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1023,53 +1171,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Kijelölés nem támogatott."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Aláír, Titkosít"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Titkosít"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Aláír"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(tovább)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<alapeset>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Titkosítás: "
+
+@@ -1078,12 +1226,12 @@ msgstr "Titkosítás: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "Válaszcím szerkesztése"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1094,7 +1242,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] tovább nem létezik"
+@@ -1106,240 +1254,360 @@ msgstr "%s [#%d] tovább nem létezik"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] módosítva. Frissítsük a kódolást?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Mellékletek"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Az egyetlen melléklet nem törölhető"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Hibás IDN '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "A melléklet elmentve"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Ez a melléklet nem lesz konvertálva"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Melléklet szűrve"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Hiba a levél elküldésekor"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "A kiválasztott fájlok csatolása..."
+ msgstr[1] "A kiválasztott fájlok csatolása..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s nem csatolható"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Postafiók megnyitása levél csatolásához"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Postafiók megnyitása levél csatolásához"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Nem tudom zárolni a postafiókot!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Nincs levél ebben a postafiókban"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Jelöld ki a csatolandó levelet"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Nem lehet csatolni"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Az újrakódolás csak a szöveg mellékleteket érinti"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Ez a melléklet nem lesz konvertálva"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Ez a melléklet konvertálva lesz"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Érvénytelen kódolás"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Mented egy másolatát a levélnek?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "melléklet megtekintése szövegként"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Átnevezés: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "%s nem olvasható: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Új fájl: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "A tartalom-típus alap-/altípus formájú."
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "%s ismeretlen tartalom-típus"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Nem lehet a(z) %s fájlt létrehozni"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Hiba a melléklet csatolásakor"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Elhalasztott levél újrahívása?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Levél mentése postafiókba"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Levél mentése %s-ba ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Levél elmentve"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME már ki van jelölve. Törlés & folytatás?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP már ki van jelölve. Törlés & folytatás?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Nem tudom zárolni a postafiókot"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "A \"preconnect\" parancs nem sikerült."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Másolás a(z) %s-ba..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Másolás a(z) %s-ba..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Hiba a(z) %s ideiglenes fájl mentésekor"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Érvénytelen viszonylagos hónap: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Érvénytelen viszonylagos hónap: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: érvénytelen levélszám.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Érvénytelen a hónap napja: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Érvénytelen hónap: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "A funkció levél-csatolás módban le van tiltva."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: érvénytelen levélszám.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: érvénytelen levélszám.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Érvénytelen viszonylagos hónap: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Érvénytelen a hónap napja: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Hiba: '%s' hibás IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: ismeretlen változó"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Érvénytelen viszonylagos hónap: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Érvénytelen viszonylagos hónap: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "%s azonosító: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s jelszava: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "A lekérdezés parancs nincs megadva"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1360,7 +1628,7 @@ msgstr "Kapcsolódás %s-hez..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "%s-hoz nem lehet kapcsolódni (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "ismeretlen hiba"
+
+@@ -1374,24 +1642,24 @@ msgstr "Hiba a %s kapcsolat közben (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "%s kapcsolat lezárva"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "hiba a mintában: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1404,138 +1672,112 @@ msgstr "A \"preconnect\" parancs nem sikerült"
+ msgid "Connection to %s closed"
+ msgstr "%s kapcsolat lezárva"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Entrópiát szerzek a véletlenszámgenerátorhoz: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s jogai nem biztonságosak"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Entrópia hiány miatt az SSL letiltva"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Ismeretlen"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[nem kiszámítható]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[érvénytelen dátum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "A szerver tanúsítványa még nem érvényes"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "A szerver tanúsítványa lejárt"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Nem találtam elég entrópiát ezen a rendszeren"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "A szervertől nem lehet tanusítványt kapni"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "A szervertől nem lehet tanusítványt kapni"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Az S/MIME tanúsítvány tulajdonosa nem egyezik a küldővel. "
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Akire a tanusítvány vonatkozik:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "A tanusítványt kiállította:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Ez a tanúsítvány érvényes"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " kezdete: %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " vége: %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Ujjlenyomat: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Ujjlenyomat: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(v)isszautasít, (e)gyszer elfogad, (m)indig elfogad"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(v)isszautasít, (e)gyszer elfogad, (m)indig elfogad"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(v)isszautasít, (e)gyszer elfogad"
++msgid "SHA256 Fingerprint: "
++msgstr "Ujjlenyomat: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(v)isszautasít, (e)gyszer elfogad"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Kilép "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Figyelmeztetés: A tanúsítvány nem menthető"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "A tanúsítvány elmentve"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "A tanúsítvány elmentve"
+@@ -1543,15 +1785,15 @@ msgstr "A tanúsítvány elmentve"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O hiba"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL sikertelen: %s"
+@@ -1559,96 +1801,80 @@ msgstr "SSL sikertelen: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Hiba: nem lehet létrehozni az OpenSSL alfolyamatot!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "A szervertől nem lehet tanusítványt kapni"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "A tanúsítvány elmentve"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Hiba a terminál inicializálásakor."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "A szerver tanúsítványa még nem érvényes"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "A szerver tanúsítványa lejárt"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "A szerver tanúsítványa lejárt"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "A szerver tanúsítványa még nem érvényes"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "vem"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ve"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL kapcsolódás a(z) %s használatával (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1667,38 +1893,18 @@ msgstr "Hiba a %s kapcsolat közben (%s)"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "igen"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nem"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Kilépsz a NeoMutt-ból?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Nyomj le egy billentyűt a folytatáshoz..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1730,7 +1936,7 @@ msgstr ""
+ "~? ez az üzenet\n"
+ ". ha egyedül áll a sorban befejezi a bevitelt\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1762,20 +1968,20 @@ msgstr ""
+ "~? ez az üzenet\n"
+ ". ha egyedül áll a sorban befejezi a bevitelt\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: érvénytelen levélszám.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Levél befejezése egyetlen '.'-ot tartalmazó sorral)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Nincs postafiók.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Levél tartalom:\n"
+
+@@ -1783,19 +1989,19 @@ msgstr "Levél tartalom:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(tovább)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "hiányzó fájlnév.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Nincsenek sorok a levélben.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: ismeretlen editor parancs (~? súgó)\n"
+@@ -1842,19 +2048,73 @@ msgstr "Nem lehet hozzáfűzni a(z) %s postafiókhoz"
+ msgid "multipart message has no boundary parameter"
+ msgstr "a többrészes üzenetnek nincs határoló paramétere"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "A témázás le van tiltva"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Jelző beállítása"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Jelző törlése"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: a terminál által nem támogatott szín"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: nincs ilyen szín"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: nincs ilyen objektum"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: nincs ilyen attribútum"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "az alapértelmezett színek nem támogatottak"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: érvénytelen levélszám.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "igen"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nem"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Kilépsz a NeoMutt-ból?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Nyomj le egy billentyűt a folytatáshoz..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' lista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1875,23 +2135,23 @@ msgstr "[-- Automatikus megjelenítés a(z) %s segítségével --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Megjelenítő parancs indítása: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Szűrőt nem lehet létrehozni"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Nem futtatható: %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- A(z) %s hiba kimenete --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Hiba: az üzenetnek/külső-törzsének nincs elérési-típus paramétere --]\n"
+
+@@ -1910,7 +2170,7 @@ msgstr "[-- Hiba: az üzenetnek/külső-törzsének nincs elérési-típus param
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1939,7 +2199,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1953,7 +2213,7 @@ msgstr[1] "[-- Ez a %s/%s melléklet (mérete %s bájt) törölve lett --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1965,12 +2225,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Ez a %s/%s melléklet törölve lett --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- név: %s --]\n"
+@@ -1978,7 +2238,7 @@ msgstr "[-- név: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1994,7 +2254,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -2003,95 +2263,95 @@ msgstr ""
+ "[-- A %s/%s melléklet nincs beágyazva, --]\n"
+ "[-- és a jelzett elérési-típus, %s nincs támogatva --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Hiba: Egy Többrészes/Alternatív rész sem jeleníthető meg --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Melléklet #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Melléklet #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Nem lehet megnyitni átmeneti fájlt"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Nem lehet megnyitni átmeneti fájlt"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Nem lehet megnyitni átmeneti fájlt"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Hiba: a többrészes/aláírt részhez nincs protokoll megadva"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Ez a %s/%s melléklet (E rész megjelenítéséhez használja a(z) '%s'-t) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s nincs támogatva (E rész megjelenítéséhez használja a(z) '%s'-t) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Ez a %s/%s melléklet (a mellélet megtekintéshez billentyű lenyomás szükséges) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s nincs támogatva (a mellélet megtekintéshez billentyű lenyomás szükséges) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Ez a %s/%s melléklet --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s nincs támogatva --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "HIBA: kérlek jelezd ezt a hibát a fejlesztőknek"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<ISMERETLEN>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Alap billentyűkombinációk:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Billentyűkombináció nélküli parancsok:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Súgó: %s"
+@@ -2108,41 +2368,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Nem lehet 'unhook *'-ot végrehajtani hook parancsból"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "hozzárendelés törlése: ismeretlen hozzárendelési típus: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s-t nem lehet törölni a következőből: %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: nincs ilyen menü"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: nincs ilyen menü"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: nincs ilyen menü"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Nem lehet a %s átmeneti fájlt létrehozni"
+@@ -2180,30 +2440,30 @@ msgstr "GSSAPI azonosítás nem sikerült"
+ msgid "LOGIN disabled on this server"
+ msgstr "A LOGIN parancsot letiltották ezen a szerveren"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Bejelentkezés..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Sikertelen bejelentkezés"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Azonosítás (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER azonosítás nem sikerült"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, fuzzy, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Azonosítás (APOP)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL azonosítás nem sikerült"
+
+@@ -2252,90 +2512,80 @@ msgstr "SSL sikertelen: %s"
+ msgid "Mailbox renamed"
+ msgstr "Postafiók létrehozva"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Postafiók lezárva"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "%s kapcsolat lezárva"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Ez az IMAP kiszolgáló nagyon régi. A NeoMutt nem tud együttműködni vele."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL sikertelen: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "%s kapcsolat lezárása..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Biztonságos TLS kapcsolat?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Nem lehetett megtárgyalni a TLS kapcsolatot"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr ""
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "%s felírása..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "%s leírása..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s felírása..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s leírása..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "%d levél másolása a %s postafiókba..."
+ msgstr[1] "%d levél másolása a %s postafiókba..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s létrehozása?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Sikertelen törlés"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2343,44 +2593,44 @@ msgstr[0] "%d levél megjelölése töröltnek..."
+ msgstr[1] "%d levél megjelölése töröltnek..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Állapotjelzők mentése... [%d/%d]"
+ msgstr[1] "Állapotjelzők mentése... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Hibás cím!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Levelek törlése a szerverről..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE sikertelen"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s választása..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Hiba a postafiók megnyitásaor"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Érvénytelen "
+@@ -2391,7 +2641,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Elfogyott a memória"
+
+@@ -2412,7 +2662,7 @@ msgstr "Levélfejlécek letöltése... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Nem lehet a fejléceket letölteni ezen verziójú IMAP szerverről"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "Levélfejlécek letöltése... [%d/%d]"
+@@ -2427,157 +2677,157 @@ msgstr "Levél feltöltése..."
+ msgid "Copying message %d to %s..."
+ msgstr "%d levél másolása %s-ba ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Levél letöltése..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "A levelek tartalomjegyzéke hibás. Próbáld megnyitni újra a postafiókot."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Folytatod?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Kilép"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Ment"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Levél"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Válasz"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Csoport"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Válasz a %s%s címre?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Nincs megnyitott postafiók"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Nincs levél"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Nincs látható levél"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "A postafiók csak olvasható"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "A funkció levél-csatolás módban le van tiltva"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "A csak olvasható postafiókba nem lehet írni"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "A postafiók módosításai a postafiókból történő kilépéskor lesznek elmentve"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "A postafiók módosításai nem lesznek elmentve"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "A %s nem postafiók"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "A postafiókot más program módosította. A jelzők hibásak lehetnek."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Új levél érkezett a postafiókba"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "A postafiókot más program módosította"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Nincs kijelölt levél"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ #, fuzzy
+ msgid "Nothing to do"
+ msgstr "Kapcsolódás %s-hez.."
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Add meg a kulcsID-t: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "A nyitóüzenet nem látható a szűkített nézetben"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Levelek törlése a szerverről..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "téma összes üzenetének törlése"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Levélre ugrás: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "A paraméternek levélszámnak kell lennie"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Érvénytelen levélszám"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Ez a levél nem látható"
+
+@@ -2590,38 +2840,38 @@ msgstr "Ez a levél nem látható"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Nincs visszaállított levél."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "A mintára illeszkedő levelek törlése: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "A szűrő mintának nincs hatása"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Szűkítés: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Minta a levelek szűkítéséhez: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Kilépsz a NeoMuttból?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Minta a levelek kijelöléséhez: "
+
+@@ -2629,213 +2879,213 @@ msgstr "Minta a levelek kijelöléséhez: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Nincs visszaállított levél."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Minta a levelek visszaállításához: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Minta a levélkijelölés megszüntetéséhez:"
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "IMAP kapcsolat lezárása.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Nincs tárgy megadva, megszakítom"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Nincs tárgy megadva, megszakítom"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Nincs tárgy megadva, megszakítom"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Postafiók megnyitása csak olvasásra"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Postafiók megnyitása"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Nincs új levél egyik postafiókban sem."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Postafiók megnyitása csak olvasásra"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Kilépsz a NeoMuttból mentés nélül?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Nem lehet szűrőt létrehozni."
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "üzenet elmentése későbbi küldéshez"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Ez az utolsó levél"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Nincs visszaállított levél"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Ez az első levél"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "A nyitóüzenet nem látható a szűkített nézetben"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Nincs új levél"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "A nyitóüzenet nem látható a szűkített nézetben"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Nincs olvasatlan levél"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Keresés az elejétől"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Keresés a végétől"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "üzenet megjelenítése"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Nincs több téma"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Ez az első téma"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "A témában olvasatlan levelek vannak"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "Nincs visszaállított levél."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Nem lehet írni a levelet"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2845,7 +3095,7 @@ msgstr[1] "Postafiók változatlan"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Postafiók változatlan"
+@@ -2854,7 +3104,7 @@ msgstr "Postafiók változatlan"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "ugrás a levél előzményére ebben a témában"
+@@ -2862,14 +3112,14 @@ msgstr "ugrás a levél előzményére ebben a témában"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Add meg a kulcsID-t: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "A levél el lett halasztva."
+@@ -2877,266 +3127,123 @@ msgstr "A levél el lett halasztva."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Levél visszaküldve"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Nincs levél ebben a postafiókban"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Nincs visszaállított levél."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Hibás parancssor: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Hibás parancssor: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "meghatározhatatlan felhasználónév"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "túl kevés paraméter"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Hiba a %s-ban, sor %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Hiba a %s-ban, sor %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: hiba a %s fájlban"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: az olvasás megszakadt, a %s fájlban túl sok a hiba"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: hiba a %s fájlban"
+-msgstr[1] "source: hiba a %s fájlban"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "címjegyzék: nincs cím"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Figyelmeztetés: Hibás IDN '%s' a '%s' álnévben"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "melléklet-leírás szerkesztése"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "melléklet-leírás szerkesztése"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "melléklet-leírás szerkesztése"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Figyelmeztetés: Hibás IDN '%s' a '%s' álnévben"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "érvénytelen mező a fejlécben"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: ismeretlen változó"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s beállítása törölve"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: hiba a %s-nál"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "A leveleket nem tudtam kinyomtatni"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "levelek kijelölése mintára illesztéssel"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "kijelölés megszüntetése mintára illesztéssel"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "%s felírása..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Nincs tárgy megadva."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "melléklet-leírás szerkesztése"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "%s leírása..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: ismeretlen parancs"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Érvénytelen a hónap napja: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "A funkció levél-csatolás módban le van tiltva."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Végtelen ciklus a makróban"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "A billentyűhöz nincs funkció rendelve"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "A billentyűhöz nincs funkció rendelve. A súgóhoz nyomd meg a '%s'-t."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: üres billentyűzet-szekvencia"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: üres billentyűzet-szekvencia"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: nincs paraméter"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: nincs ilyen funkció"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Add meg a kulcsokat (^G megszakítás): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Karakter = %s, Oktális = %o, Decimális = %d"
+@@ -3160,7 +3267,7 @@ msgstr "mailcap bejegyzés a(z) %s típushoz nem található"
+ msgid "Scanning %s..."
+ msgstr "%s választása..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s olvasása..."
+@@ -3176,13 +3283,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message (): a fájlidő beállítása nem sikerült"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s írása..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3205,7 +3312,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3248,54 +3355,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Hiba a terminál inicializálásakor"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "meghatározhatatlan felhasználónév"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "meghatározhatatlan felhasználói könyvtár"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Hiba: '%s' hibás IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nincs címzett megadva"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "A(z) %s levélfájl üres"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: nem lehet csatolni a fájlt"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Nincs új levél egyik postafiókban sem"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Nincs bejövő postafiók megadva"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "A postafiók üres"
+
+@@ -3337,52 +3444,52 @@ msgstr "Nem lehetett újra megnyitni a postafiókot"
+ msgid "Can't write message"
+ msgstr "Nem lehet írni a levelet"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Ugrás: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Érvénytelen indexszám"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Nincsenek bejegyzések"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Nem lehet tovább lefelé scrollozni"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Nem lehet tovább felfelé scrollozni"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Ez az első oldal"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Ez az utolsó oldal"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Az utolsó bejegyzésen vagy"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Az első bejegyzésen vagy"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Keresés: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Keresés visszafelé: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nem található"
+
+@@ -3425,20 +3532,20 @@ msgstr "Várakozás az flock-ra... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Nem lehet ideiglenes fájlt létrehozni"
+
+@@ -3457,7 +3564,7 @@ msgstr "Hibakövetés szintje: %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Hibakövetés szintje: %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Hiba a szerverre való csatlakozás közben: %s"
+@@ -3481,17 +3588,17 @@ msgstr "%d (%s) jelzést kaptam... Kilépek.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "%d jelzést kaptam... Kilépek.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3499,150 +3606,122 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ #, fuzzy
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "A fájl egy könyvtár, elmentsem ebbe a könyvtárba?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "A fájl egy könyvtár, elmentsem ebbe a könyvtárba?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Könyvtárbeli fájlok: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "A fájl létezik, (f)elülírjam, (h)ozzáfűzzem, vagy (m)égsem?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "fhm"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Levelet nem lehet menteni POP postafiókba"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Levelek hozzáfűzése %s postafiókhoz?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "A POP kiszolgálón nem lehet szerkeszteni a levelet"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "%s azonosító: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s jelszava: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "A lekérdezés parancs nincs megadva"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Nem felel meg a névmintának, tovább?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "A mailcap-ba \"compose\" bejegyzés szükséges %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Fájl megnyitási hiba a fejléc vizsgálatakor"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Fájl megnyitási hiba a fejléc eltávolításkor"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "Fájl megnyitási hiba a fejléc vizsgálatakor"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Nincs mailcap \"compose\" bejegyzés a(z) %s esetre, üres fájl létrehozása"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "A mailcap-ba \"edit\" bejegyzés szükséges %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Nincs \"edit\" bejegyzés a mailcap-ban a(z) %s esetre"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Nincs megfelelő mailcap bejegyzés. Megjelenítés szövegként."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "A MIME típus nincs definiálva. A melléklet nem jeleníthető meg."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Mellékletek"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Mellékletek"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Írási hiba"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Nem ismert, hogy ezt hogyan kell kinyomtatni"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Keresés"
+
+@@ -3651,21 +3730,21 @@ msgstr "Keresés"
+ msgid "History '%s'"
+ msgstr "'%s' lekérdezése"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Érvénytelen a hónap napja: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Nem lehet lockolni %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Új levél: "
+
+@@ -3687,20 +3766,20 @@ msgstr "A nyitóüzenet nem látható a szűkített nézetben"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "A nyitóüzenet nem látható a szűkített nézetben"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Keresés megszakítva."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "%s nem csatolható"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3712,69 +3791,69 @@ msgstr[1] "%d levél megjelölése töröltnek..."
+ msgid "Can't open trash folder"
+ msgstr "Nem lehet hozzáfűzni a(z) %s postafiókhoz"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Az olvasott leveleket mozgassam a %s postafiókba?"
+ msgstr[1] "Az olvasott leveleket mozgassam a %s postafiókba?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Töröljem a %d töröltnek jelölt levelet?"
+ msgstr[1] "Töröljem a %d töröltnek jelölt levelet?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Olvasott levelek mozgatása a %s postafiókba..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Postafiók változatlan"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d megtartva, %d átmozgatva, %d törölve"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d megtartva, %d törölve"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Nyomd meg a '%s' gombot az írás ki/bekapcsolásához"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Használd a 'toggle-write'-ot az írás újra engedélyezéséhez"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "A postafiókot megjelöltem nem írhatónak. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "A postafiók ellenőrizve"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (pontos idő: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s kimenet következik%s --]\n"
+@@ -3783,53 +3862,53 @@ msgstr "[-- %s kimenet következik%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Jelszó elfelejtve"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP betöltés..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "A levél nem lett elküldve"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Tartalom-útmutatás nélküli S/MIME üzenetek nem támogatottak"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP kulcsok kibontása...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME tanúsítványok kibontása..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3838,7 +3917,7 @@ msgstr ""
+ "[-- Hiba: Ismeretlen többrészes/aláírt protokoll %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3847,7 +3926,7 @@ msgstr ""
+ "[-- Hiba: Ellentmondó többrészes/aláírt struktúra --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3856,7 +3935,7 @@ msgstr ""
+ "[-- Figyelmeztetés: Nem tudtam leellenőrizni a %s/%s aláírásokat. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3864,7 +3943,7 @@ msgstr ""
+ "[-- A következő adatok alá vannak írva --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3872,7 +3951,7 @@ msgstr ""
+ "[-- Figyelmeztetés: Nem találtam egy aláírást sem. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3892,236 +3971,236 @@ msgstr "S/MIME betöltés..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Érvénytelen hónap: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Érvénytelen hónap: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Ujjlenyomat: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Kulcs ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "A szerver tanúsítványa lejárt"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "SSL nem elérhető."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "%s létrehozása?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Hibás parancssor: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4130,28 +4209,34 @@ msgstr ""
+ "\n"
+ "[-- Aláírt adat vége --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Hiba: nem lehet létrehozni az ideiglenes fájlt! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "A PGP aláírás sikeresen ellenőrizve"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4159,11 +4244,11 @@ msgstr ""
+ "[-- PGP LEVÉL KEZDŐDIK --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP NYILVÁNOS KULCS KEZDŐDIK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4171,19 +4256,19 @@ msgstr ""
+ "[-- PGP ALÁÍRT LEVÉL KEZDŐDIK --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP LEVÉL VÉGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP NYILVÁNOS KULCS VÉGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP ALÁÍRT LEVÉL VÉGE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4191,11 +4276,11 @@ msgstr ""
+ "[-- Hiba: nem található a PGP levél kezdete --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Hiba: nem lehet létrehozni az ideiglenes fájlt --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4204,7 +4289,7 @@ msgstr ""
+ "[-- A következő adat PGP/MIME-vel titkosított --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4212,75 +4297,70 @@ msgstr ""
+ "[-- A következő adat PGP/MIME-vel titkosított --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME titkosított adat vége --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME titkosított adat vége --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "A PGP aláírás sikeresen ellenőrizve"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "A levelet nem tudtam másolni"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+ msgstr "[-- A következő adatok S/MIME-vel alá vannak írva --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+ msgstr "[-- A következő adat S/MIME-vel titkosított --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME aláírt adat vége --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME titkosított adat vége. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "Érvénytelen "
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4288,104 +4368,104 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "Titkosít"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "A tanúsítvány elmentve"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ #, fuzzy
+ msgid "[Revoked]"
+ msgstr "Visszavont "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "Lejárt "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "Kapcsolódás %s-hez..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Hiba a szerverre való csatlakozás közben: %s"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Hibás parancssor: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Kulcs ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Minden illeszkedő kulcs lejárt/letiltott/visszavont"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Választ "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Kulcs ellenőrzése "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP kulcsok egyeznek \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "PGP kulcsok egyeznek \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME kulcsok egyeznek \"%s\"."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "PGP kulcsok egyeznek \"%s\"."
+@@ -4394,59 +4474,59 @@ msgstr "PGP kulcsok egyeznek \"%s\"."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr ""
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Ez a kulcs nem használható: lejárt/letiltott/visszahívott"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID lejárt/letiltott/visszavont. Valóban szeretnéd használni ezt a kulcsot?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Az ID nem érvényes. Valóban szeretnéd használni ezt a kulcsot?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Az ID csak részlegesen érvényes. Valóban szeretnéd használni ezt a kulcsot?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID-nek nincs meghatározva az érvényessége. Valóban szeretnéd használni ezt a kulcsot?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Egyező \"%s\" kulcsok keresése..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Használjam a kulcsID = \"%s\" ehhez: %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Add meg a kulcsID-t %s-hoz: "
+@@ -4455,16 +4535,16 @@ msgstr "Add meg a kulcsID-t %s-hoz: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Nem található"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Kérlek írd be a kulcs ID-t: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "hiba a mintában: %s"
+@@ -4472,99 +4552,99 @@ msgstr "hiba a mintában: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP Kulcs %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "tamsbg"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "tamsbg"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "tamsbg"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "Fájl megnyitási hiba a fejléc vizsgálatakor."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Kérlek írd be a PGP jelszavadat: "
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Hiba: nem lehet létrehozni a PGP alfolyamatot --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4575,16 +4655,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "A PGP aláírás sikeresen ellenőrizve"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4592,128 +4672,128 @@ msgstr ""
+ "[-- Hiba: nem lehet a PGP alfolyamatot létrehozni --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Visszafejtés sikertelen"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP alfolyamatot nem lehet megnyitni"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP-t nem tudom meghívni"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "tamsbg"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (t)itkosít, (a)láír, aláír (m)int, titkosít é(s) aláír, (b)eágyazott, mé(g)se?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "tamsbg"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP kulcs leszedése..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Minden illeszkedő kulcs lejárt/letiltott/visszavont"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP kulcsok egyeznek <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP kulcsok egyeznek \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Nem lehet a /dev/null-t megnyitni"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP Kulcs %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Kérlek írd be az S/MIME jelszavadat: "
+
+@@ -4722,7 +4802,7 @@ msgstr "Kérlek írd be az S/MIME jelszavadat: "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Lejárt "
+
+@@ -4731,7 +4811,7 @@ msgstr "Lejárt "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Érvénytelen "
+
+@@ -4740,7 +4820,7 @@ msgstr "Érvénytelen "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Visszavont "
+
+@@ -4749,7 +4829,7 @@ msgstr "Visszavont "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Megbízható "
+
+@@ -4758,7 +4838,7 @@ msgstr "Megbízható "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Ellenőrizetlen"
+
+@@ -4767,7 +4847,7 @@ msgstr "Ellenőrizetlen"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Ellenőrzött "
+
+@@ -4776,60 +4856,60 @@ msgstr "Ellenőrzött "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Ismeretlen "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME kulcsok egyeznek \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Az ID nem érvényes. Valóban szeretnéd használni ezt a kulcsot?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Add meg a kulcsID-t: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Nem található (érvényes) tanúsítvány ehhez: %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Hiba: nem lehet létrehozni az OpenSSL alfolyamatot"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "A szervertől nem lehet tanusítványt kapni"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "nincs tanúsítványfájl"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "nincs postafiók"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Nincs kimenet az OpenSSLtől..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL alfolyamatot nem lehet megnyitni"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4837,19 +4917,19 @@ msgstr ""
+ "[-- OpenSSL kimenet vége --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Hiba: nem lehet létrehozni az OpenSSL alfolyamatot --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- A következő adat S/MIME-vel titkosított --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- A következő adatok S/MIME-vel alá vannak írva --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4857,7 +4937,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME titkosított adat vége. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4866,170 +4946,170 @@ msgstr ""
+ "[-- S/MIME aláírt adat vége --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (t)itkosít, (a)láír, titkosít (p)rg, aláír (m)int, titkosít é(s) aláír, mé(g)se?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "tapmsg"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (t)itkosít, (a)láír, titkosít (p)rg, aláír (m)int, titkosít é(s) aláír, mé(g)se?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "tapmsg"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (t)itkosít, (a)láír, titkosít (p)rg, aláír (m)int, titkosít é(s) aláír, mé(g)se?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "tapmsg"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s érvénytelen POP útvonal"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "A szerver lezárta a kapcsolatot"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Egyetlen azonosító sem érhető el"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL azonosítás nem sikerült"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "%s kapcsolat lezárva"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Üzenetek listájának letöltése..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Új levelek letöltése..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "nem lehet írni a(z) %s ideiglenes postafiókba"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Kapcsolódás %s-hez..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Kapcsolódás %s-hez.."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "%s nem olvasható: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Levelek törlése a szerverről..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Bejelentkezés..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Új levelek letöltése..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s érvénytelen POP útvonal"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5041,7 +5121,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6193,189 +6273,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "S/MIME opciók mutatása"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Nem elérhető ebben a menüben"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "ElőzőO"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "KövO"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Melléklet"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Köv."
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Ez az üzenet vége"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Ez az üzenet eleje"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "A súgó már meg van jelenítve"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Nincs több idézett szöveg"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Nincs nem idézett szöveg az idézett szöveg után"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Hiba a kifejezésben: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "hiba a kifejezésben"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "A lekérdezés parancs nincs megadva"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Megjelenítő parancs indítása: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Érvénytelen a hónap napja: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Érvénytelen hónap: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Érvénytelen viszonylagos hónap: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Nincs olvasatlan levél"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Hiba a postafiók megnyitásaor"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Hiba a postafiók megnyitásaor"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Nem lehet a /dev/null-t megnyitni"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "hiba a mintában: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "hiányzó paraméter"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "nem megegyező zárójelek: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: érvénytelen parancs"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: nincs támogatva ebben a módban"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "hiányzó paraméter"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "üres minta"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "hiba: ismeretlen operandus %d (jelentsd ezt a hibát)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Keresési minta fordítása..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Parancs végrehajtása az egyező leveleken..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Nincs a kritériumnak megfelelő levél"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Mentés..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "A kereső elérte a végét, és nem talált egyezést"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "A kereső elérte az elejét, és nem talált egyezést"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Keresés megszakítva"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "A TOP parancsot nem támogatja a szerver"
+
+@@ -6383,7 +6463,7 @@ msgstr "A TOP parancsot nem támogatja a szerver"
+ msgid "Can't write header to temporary file"
+ msgstr "Nem lehet írni az ideiglenes fájlba"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Az UIDL parancsot nem támogatja a szerver"
+
+@@ -6398,7 +6478,7 @@ msgstr[1] "A levelek tartalomjegyzéke hibás. Próbáld megnyitni újra a posta
+ msgid "POP host is not defined"
+ msgstr "POP szerver nincs megadva"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s érvénytelen POP útvonal"
+@@ -6431,156 +6511,156 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d/%d levél beolvasva]"
+ msgstr[1] "%s [%d/%d levél beolvasva]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Üzenetek listájának letöltése..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "%d levél megjelölése töröltnek..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Nem lehet a levelet beleírni az ideiglenes fájlba"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Azonosítás (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Azonosítás (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP azonosítás sikertelen"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "A USER parancsot nem ismeri ez a kiszolgáló"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL azonosítás nem sikerült"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Érvénytelen "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Nem lehet a leveleket a szerveren hagyni"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Hiba a szerverre való csatlakozás közben: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "POP kapcsolat lezárása..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Levelek tartalomjegyzékének ellenőrzése..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "A kapcsolatot elveszett. Újracsatlakozik a POP kiszolgálóhoz?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Elhalasztott levelek"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Nincsenek elhalasztott levelek"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Érvénytelen S/MIME fejléc"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Érvénytelen PGP fejléc"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Levél letöltése..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Új lekérdezés"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Álnév"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Várakozás a válaszra..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Lekérdezés: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "'%s' lekérdezése"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "A lekérdezés parancs nincs megadva"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Átküld"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Nyomtat"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Mentés..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "A melléklet elmentve"
+ msgstr[1] "A melléklet elmentve"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "FIGYELMEZTETÉS! %s-t felülírására készülsz, folytatod?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Melléklet szűrve"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Szűrőn keresztül: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Átküld: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Nem tudom hogyan kell nyomtatni a(z) %s csatolást"
+@@ -6588,57 +6668,57 @@ msgstr "Nem tudom hogyan kell nyomtatni a(z) %s csatolást"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Kinyomtassam a kijelölt melléklet(ek)et?"
+ msgstr[1] "Kinyomtassam a kijelölt melléklet(ek)et?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Kinyomtassam a mellékletet?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Nem tudtam visszafejteni a titkosított üzenetet"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Mellékletek"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Nincsenek mutatható részek"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "POP kiszolgálón nem lehet mellékletet törölni"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "POP kiszolgálón nem lehet mellékletet törölni"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Mellékletek törlése kódolt üzenetből nem támogatott"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Mellékletek törlése kódolt üzenetből nem támogatott"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Többrészes csatolásoknál csak a törlés támogatott"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Csak levél/rfc222 részeket lehet visszaküldeni"
+
+@@ -6675,7 +6755,7 @@ msgstr "Nem tudtam létrehozni: %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Nem található egyetlen kijelölt levél sem"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Nincs levelezőlista"
+
+@@ -6690,67 +6770,67 @@ msgstr "Nem tudom az összes kijelölt mellékletet visszaalakítani. A többit
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Csak levél/rfc222 részeket lehet visszaküldeni"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Hozzáfűzés"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Beszúrás"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Nem lehet beolvasni a mixmaster type2.list-jét"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Válaszd ki az újraküldő láncot"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Hiba: %s-t nem lehet használni a lánc utolsó újraküldőjeként"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "A Mixmaster lánc maximálisan %d elemből állhat"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Az újraküldő lánc már üres"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Már ki van választva a lánc első eleme"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Már ki van választva a lánc utolsó eleme"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "A Mixmaster nem fogadja el a Cc vagy a Bcc fejléceket"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Kérlek állítsd be a hostname változót a megfelelő értékre, ha mixmastert használsz"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Hiba a levél elküldésekor, a gyermek folyamat kilépett: %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Hiba a levél elküldésekor"
+
+@@ -6781,42 +6861,42 @@ msgstr "Továbbítás mellékletként?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Válasz a %s%s címre?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Válasz a %s%s címre?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Levél beillesztése a válaszba?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Idézett levél beillesztése..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Nem tudtam az összes kért levelet beilleszteni"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Továbbítás mellékletként?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Továbbított levél előkészítése..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: nincs támogatva ebben a módban"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "melléklet megtekintése szövegként"
+@@ -6825,196 +6905,196 @@ msgstr "melléklet megtekintése szövegként"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Nincs postafiók.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Elhalasztott levél újrahívása?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Továbbított levél szerkesztése?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Megszakítod a nem módosított levelet?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Nem módosított levelet megszakítottam"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "A levél nem lett elküldve"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "A levél el lett halasztva"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Nincs tárgy, megszakítsam a küldést?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Nincs tárgy megadva"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Nincs tárgy megadva"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "melléklet átviteli-kódolás szerkesztése"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Levél elküldése..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Nem tudtam a levelet elküldeni"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Küldés a háttérben"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Levél elküldve"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nem található határoló paraméter [jelentsd ezt a hibát]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s többé nem létezik"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s nem egy hagyományos fájl"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Nem tudtam a levelet elküldeni."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s nem nyitható meg"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Hiba a levél elküldése közben, a gyermek folyamat kilépett: %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "A kézbesítő folyamat kimenete"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Hibás IDN %s a resent-from mező előkészítésekor"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SSL sikertelen: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SSL sikertelen: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Érvénytelen "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL azonosítás nem sikerült."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI azonosítás nem sikerült"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Postafiók rendezése..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Nincs meg a rendező függvény [kérlek jelentsd ezt a hibát]"
+
+@@ -7066,11 +7146,11 @@ msgstr ""
+ "A NeoMutt szabad szoftver, és terjesztheted az alábbi feltételek\n"
+ "szerint; írd be a 'neomutt -vv'-t a részletekért.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Fordítási opciók:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Fordítási opciók:"
+diff --git a/po/id.po b/po/id.po
+index 2f82f31b7..362f0cec0 100644
+--- a/po/id.po
++++ b/po/id.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2007-11-07 10:39+1100\n"
+ "Last-Translator: Ronny Haryanto <ronny@haryan.to>\n"
+ "Language-Team: Indonesian <web@linux.or.id>\n"
+@@ -21,16 +21,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=1; plural=0;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(t)olak, terima (s)ekali, terima selal(u)"
++
++#, fuzzy
++msgid "roas"
++msgstr "tsu"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(t)olak, terima (s)ekali, terima selal(u)"
++
++msgid "roa"
++msgstr "tsu"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(t)olak, terima (s)ekali"
++
++#, fuzzy
++msgid "ros"
++msgstr "ts"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(t)olak, terima (s)ekali"
++
++msgid "ro"
++msgstr "ts"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Keluar"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Hapus"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Nggak jadi hapus"
+
+@@ -38,18 +66,18 @@ msgstr "Nggak jadi hapus"
+ msgid "Select"
+ msgstr "Pilih"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Bantuan"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Anda tidak punya kumpulan alias"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Kumpulan alias"
+
+@@ -58,53 +86,53 @@ msgstr "Kumpulan alias"
+ msgid "Alias as: "
+ msgstr "Alias sebagai: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Anda telah punya alias dengan nama tersebut"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Perhatian: Nama alias ini mungkin tidak akan bekerja. Betulkan?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Alamat: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "IDN salah: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nama lengkap: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Sudah betul?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Simpan ke file: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Gagal menampilkan file"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Gagal menampilkan file"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias telah ditambahkan"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Gagal menampilkan file"
+@@ -114,7 +142,7 @@ msgstr "Gagal menampilkan file"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s tidak ada. Buat?"
+@@ -123,8 +151,8 @@ msgstr "%s tidak ada. Buat?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Tidak bisa membuat %s: %s"
+@@ -134,7 +162,7 @@ msgstr "Tidak bisa membuat %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -143,7 +171,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -152,7 +180,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -161,7 +189,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -173,7 +201,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "enkripsi"
+@@ -181,7 +209,7 @@ msgstr "enkripsi"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -189,7 +217,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -198,7 +226,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Tidak ditemukan sertifikat (yg valid) utk %s"
+@@ -210,12 +238,12 @@ msgstr "Tidak ditemukan sertifikat (yg valid) utk %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Tidak ada kotak surat.\n"
+@@ -227,14 +255,14 @@ msgstr "Tidak ada kotak surat.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Buat %s?"
+@@ -242,7 +270,7 @@ msgstr "Buat %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Hapus"
+
+@@ -250,9 +278,9 @@ msgstr "Hapus"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -260,17 +288,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -279,7 +307,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -287,7 +315,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -295,12 +323,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -308,13 +336,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Gagal membaca direktori"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Yakin hapus kotak surat \"%s\"?"
+@@ -332,7 +360,7 @@ msgstr "Yakin hapus kotak surat \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Tidak bisa mengunci kotak surat!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "error saat membuat konteks gpgme: %s"
+@@ -405,496 +433,609 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s bukan direktori"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Pindah dir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Mask"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Berlangganan ke %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Berhenti langganan dari %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s bukan direktori"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Berlangganan ke %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Kotak surat [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Berlangganan [%s], File mask: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Direktori [%s], File mask: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Tidak bisa melampirkan sebuah direktori"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Tidak ada file yang sesuai dengan mask"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Pembuatan hanya didukung untuk kotak surat jenis IMAP."
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Penggantian nama hanya didukung untuk kotak surat jenis IMAP."
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Penghapusan hanya didukung untuk kotak surat jenis IMAP."
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "tampilkan nama file yang sedang dipilih"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Yakin hapus kotak surat \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Kotak surat telah dihapus"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Kotak surat telah dihapus"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Kotak surat tidak dihapus"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Pindah dir ke: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Gagal membaca direktori"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "File Mask: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Urut terbalik berdasarkan (t)anggal, (a)bjad, (u)kuran atau (n)ggak diurut?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Urut berdasarkan (t)anggal, (a)bjad, (u)kuran atau (n)ggak diurut?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nama file baru: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Tidak bisa menampilkan sebuah direktori"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Gagal menampilkan file"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Berlangganan ke %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Berhenti langganan dari %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Tidak ada file yang sesuai dengan mask"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: warna tidak didukung oleh term"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: tidak ada warna begitu"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: tidak ada objek begitu"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: parameternya kurang"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: tidak ada atribut begitu"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: parameternya terlalu banyak"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "warna default tidak didukung"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: bukan nomer surat yang betul.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Periksa tandatangan?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Tidak bisa membuat file sementara"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Tidak bisa membuat tampilan filter"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Tidak bisa menyalin surat"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Tanda tangan S/MIME berhasil diverifikasi"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Pemilik sertifikat S/MIME tidak sesuai dg pengirim"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Perhatian: Sebagian dari pesan ini belum ditandatangani"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Tanda tangan S/MIME TIDAK berhasil diverifikasi"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Tanda tangan PGP berhasil diverifikasi"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Tanda tangan PGP TIDAK berhasil diverifikasi"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Gagal menjalankan \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Perintah: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Bounce surat ke: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Bounce surat ke: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Gagal menguraikan alamat"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Bounce surat ke %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Surat tidak dibounce"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Surat telah dibounce"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Tidak bisa membuat proses filter"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Pipe ke perintah: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Perintah untuk mencetak belum didefinisikan"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Cetak surat?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Cetak surat?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Surat telah dicetak"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Surat tidak dapat dicetak"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Urut terbalik tan(g)gal/d(a)ri/t(e)rima/(s)ubj/(k)e/(t)hread/(n)ggak urut/(u)kuran/n(i)lai/s(p)am?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Urut tan(g)gal/d(a)ri/t(e)rima/(s)ubj/(k)e/(t)hread/(n)ggak urut/(u)kuran/n(i)lai/s(p)am?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "gaesktnuip"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Perintah shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Urai-simpan ke kotak surat"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Urai-simpan ke kotak surat"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dekripsi-simpan ke kotak surat"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dekripsi-simpan ke kotak surat"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Simpan ke kotak surat"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Simpan ke kotak surat"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Urai-salin ke kotak surat"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Urai-salin ke kotak surat"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dekripsi-salin ke kotak surat"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dekripsi-salin ke kotak surat"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Salin ke kotak surat"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Salin ke kotak surat"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Sedang menyalin ke %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type diubah ke %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Ubah ke %s saat mengirim?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type diubah ke %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Character set diubah ke %s; tidak melakukan konversi"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Character set diubah ke %s; melakukan konversi"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: parameternya kurang"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: tidak ada nama group"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "parameternya kurang"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Error di %s, baris %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Error di %s, baris %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: errors di %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: pembacaan dibatalkan sebab terlalu banyak error di %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: errors di %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: tidak ada alamat email"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Perhatian: IDN '%s' di alias '%s' tidak benar"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "lampiran: tidak ada disposisi"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "edit keterangan lampiran"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "lampiran: disposisi tidak benar"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: parameternya terlalu banyak"
++
++#: command_parse.c:801
++#, fuzzy, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "Tidak ada -rx atau -addr"
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Perhatian: IDN '%s' tidak benar"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "kolom header tidak dikenali"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: variable tidak diketahui"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s mati"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: error pada %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Surat-surat tidak dapat dicetak"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: tidak ada pola yg cocok"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: tidak ada pola yg cocok"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Berlangganan ke %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Berlangganan ke %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Tidak ada subjek."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "bukan lampiran: tidak ada disposisi"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "bukan lampiran: disposisi tidak benar"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Berhenti langganan dari %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Berhenti langganan dari %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Tidak ada lampiran"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Balas"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -905,78 +1046,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Tandatangani sebagai: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Balas ke %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "edit kolom Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Kirim"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Batal"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Lampirkan file"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Ket"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Tidak ada subjek."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -984,7 +1125,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -992,14 +1133,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "ya"
+@@ -1010,7 +1151,7 @@ msgstr "ya"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1018,54 +1159,54 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Penandaan tidak didukung."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Tandatangan, Enkrip"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Enkrip"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Tandatangan"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr " (inline)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ #, fuzzy
+ msgid " (S/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<default>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Enkrip dengan: "
+
+@@ -1074,12 +1215,12 @@ msgstr "Enkrip dengan: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "edit kolom Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1090,7 +1231,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] sudah tidak ada"
+@@ -1102,239 +1243,359 @@ msgstr "%s [#%d] sudah tidak ada"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] telah diubah. Update encoding?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Lampiran"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Tidak bisa menghapus satu-satunya lampiran"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "IDN di '%s' tidak benar: '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Lampiran telah disimpan"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Lampiran yg dipilih tidak akan dikonersi"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Lampiran telah difilter"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Gagal mengirim surat"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Melampirkan file-file yang dipilih..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Tidak bisa melampirkan %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Buka kotak surat untuk mengambil lampiran"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Buka kotak surat untuk mengambil lampiran"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Tidak bisa mengunci kotak surat!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Tidak ada surat di kotak tersebut"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Tandai surat-surat yang mau dilampirkan"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Tidak bisa dilampirkan"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Peng-coding-an ulang hanya berpengaruh terhadap lampiran teks"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Lampiran yg dipilih tidak akan dikonersi"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Lampiran yg dipilih akan dikonversi"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Encoding tidak betul"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Simpan salinan dari surat ini?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "tampilkan lampiran sebagai teks"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Ganti nama ke: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Tidak bisa stat %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "File baru: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type harus dalam format jenis-dasar/sub-jenis"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Content-Type %s tak dikenali"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Tidak bisa membuat file %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Gagal membuat lampiran, nih..."
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Lanjutkan surat yang ditunda sebelumnya?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Simpan surat ke kotak surat"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Menyimpan surat ke %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Surat telah disimpan"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME sudah dipilih. Bersihkan & lanjut?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP sudah dipilih. Bersihkan & lanjut?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Tidak bisa mengunci kotak surat"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Perintah pra-koneksi gagal."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Sedang menyalin ke %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Sedang menyalin ke %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Error. Menyimpan file sementara: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Bulan relatif tidak benar: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Bulan relatif tidak benar: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: bukan nomer surat yang betul.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Tidak tanggal: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Tidak ada bulan: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Fungsi ini tidak diperbolehkan pada mode pelampiran-surat"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: bukan nomer surat yang betul.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: bukan nomer surat yang betul.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Bulan relatif tidak benar: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Tidak tanggal: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Error: IDN '%s' tidak benar"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: variable tidak diketahui"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Bulan relatif tidak benar: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Bulan relatif tidak benar: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nama user di %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Password utk %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Perintah query tidak diketahui"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1355,7 +1616,7 @@ msgstr "Menghubungi %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Tidak bisa berhubungan ke %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "eh..eh.. napa nih?"
+
+@@ -1369,23 +1630,23 @@ msgstr "Kesalahan waktu menghubungi ke server %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Hubungan ke %s ditutup."
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Profil SASL tidak diketahui"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Gagal mengalokasikan koneksi SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Gagal mengeset detil keamanan SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Gagal mengeset tingkat keamanan eksternal SASL"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Gagal mengeset nama pengguna eksternal SASL"
+
+@@ -1398,138 +1659,112 @@ msgstr "Perintah pra-koneksi gagal"
+ msgid "Connection to %s closed"
+ msgstr "Hubungan ke %s ditutup."
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Mengisi pool entropy: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s mempunyai permissions yang tidak aman"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL tidak dapat digunakan karena kekurangan entropy"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Tidak diketahui"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[tidak bisa melakukan penghitungan]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[tanggal tidak betul]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Sertifikat server belum sah"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Sertifikat server sudah kadaluwarsa"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Gagal menemukan cukup entropy di sistem anda"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Tidak bisa mengambil sertifikat"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Tidak bisa mengambil sertifikat"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Pemilik sertifikat S/MIME tidak sesuai dg pengirim."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Sertifikat ini dimiliki oleh:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Sertifikat ini dikeluarkan oleh:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Sertifikat ini sah"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " dari %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
+-#, c-format
+-msgid " to %s"
+-msgstr " ke %s"
+-
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "Cap jari SHA1: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Cap jari SHA256: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(t)olak, terima (s)ekali, terima selal(u)"
++msgid " to %s"
++msgstr " ke %s"
+
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(t)olak, terima (s)ekali, terima selal(u)"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "Cap jari SHA1: %s"
+
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(t)olak, terima (s)ekali"
++msgid "SHA256 Fingerprint: "
++msgstr "Cap jari SHA256: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(t)olak, terima (s)ekali"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Keluar "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Warning: Tidak dapat menyimpan sertifikat"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sertifikat telah disimpan"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sertifikat telah disimpan"
+@@ -1537,15 +1772,15 @@ msgstr "Sertifikat telah disimpan"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Kesalahan I/O"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL gagal: %s"
+@@ -1553,90 +1788,74 @@ msgstr "SSL gagal: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Error: tidak bisa membuat subproses utk OpenSSL!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Tidak bisa mengambil sertifikat"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Error verifikasi sertifikat (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Sertifikat bukan X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Gagal menginisialisasi data sertifikat gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Gagal memproses data sertifikat"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "PERHATIAN: Sertifikat server masih belum valid"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "PERHATIAN: Sertifikat server sudah kadaluwarsa"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "PERHATIAN: Sertifikat server sudah dicabut"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "PERHATIAN: Nama host server tidak cocok dengan sertifikat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "PERHATIAN: Penandatangan sertifikat server bukan CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "tsu"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ts"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Semua protokol yg tersedia utk TLS/SSL tidak aktif"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Hubungan SSL menggunakan %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Error: tidak ada socket TLS terbuka"
+
+@@ -1655,37 +1874,17 @@ msgstr "Kesalahan tunnel saat berbicara dg %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel ke %s menghasilkan error %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ya"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nggak"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Keluar dari NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Tekan sembarang tombol untuk lanjut..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' utk lihat daftar): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1708,7 +1907,7 @@ msgstr ""
+ "~M surat2 sama seperti ~m, tapi menyertakan headers\n"
+ "~p cetak surat\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1730,20 +1929,20 @@ msgstr ""
+ "~? pesan ini\n"
+ ". di satu baris sendiri menyudahi input\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: bukan nomer surat yang betul.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Akhiri surat dengan . di satu baris sendiri)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Tidak ada kotak surat.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Surat berisi:\n"
+
+@@ -1751,19 +1950,19 @@ msgstr "Surat berisi:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(lanjut)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "nama file tidak ditemukan.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Tidak ada sebaris pun di dalam surat.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: perintah editor tidak dikenali (~? utk bantuan)\n"
+@@ -1810,19 +2009,73 @@ msgstr "Tidak bisa menambah ke kotak surat: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "surat multi bagian tidak punya parameter batas"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Tidak disetting untuk melakukan threading"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Tandai"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Batal ditandai"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: warna tidak didukung oleh term"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: tidak ada warna begitu"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: tidak ada objek begitu"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: tidak ada atribut begitu"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "warna default tidak didukung"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: bukan nomer surat yang betul.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ya"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nggak"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Keluar dari NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Tekan sembarang tombol untuk lanjut..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' utk lihat daftar): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1843,23 +2096,23 @@ msgstr "[-- Tampil-otomatis dengan %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Menjalankan perintah tampil-otomatis: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Tidak bisa membuat filter"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Tidak bisa menjalankan %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Stderr dari tampil-otomatis %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Error: message/external-body tidak punya parameter access-type --]\n"
+
+@@ -1878,7 +2131,7 @@ msgstr "[-- Error: message/external-body tidak punya parameter access-type --]\
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1904,7 +2157,7 @@ msgstr[0] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1917,7 +2170,7 @@ msgstr[0] "[-- Lampiran %s/%s ini (ukuran %s bytes) telah dihapus --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1929,12 +2182,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Lampiran %s/%s ini telah dihapus --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nama: %s --]\n"
+@@ -1942,7 +2195,7 @@ msgstr "[-- nama: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1958,7 +2211,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1967,96 +2220,96 @@ msgstr ""
+ "[-- Lampiran %s/%s ini tidak disertakan, --]\n"
+ "[-- dan tipe akses %s tsb tidak didukung --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Error: Tidak ada bagian Multipart/Alternative yg bisa ditampilkan --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Lampiran #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Lampiran #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Perhatian: Sebagian dari pesan ini belum ditandatangani."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Tidak bisa membuka file sementara"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Tidak bisa membuka file sementara"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Tidak bisa membuka file sementara"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Error: multipart/signed tidak punya protokol"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Lampiran %s/%s ini (gunakan '%s' untuk melihat bagian ini) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s tidak didukung (gunakan '%s' untuk melihat bagian ini) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Lampiran %s/%s ini (tombol untuk 'view-attachments' belum ditentukan) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s tidak didukung (tombol untuk 'view-attachments' belum ditentukan) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Lampiran %s/%s ini --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s tidak didukung --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERROR: harap laporkan bug ini"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<GAK TAU>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Penentuan tombol generik:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Fungsi-fungsi yang belum ditentukan tombolnya:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Bantuan utk %s"
+@@ -2073,41 +2326,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Tidak dapat melakukan unhook * dari hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: jenis tidak dikenali: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Tidak dapat menghapus %s dari %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: tidak ada menu begitu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: tidak ada menu begitu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: tidak ada menu begitu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Tidak bisa membuat file sementara %s"
+@@ -2145,30 +2398,30 @@ msgstr "Authentikasi GSSAPI gagal"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN tidak diaktifkan di server ini"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Sedang login..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Login gagal"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Mengauthentikasi (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Authentikasi OAUTHBEARER gagal"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Mengauthentikasi (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Authentikasi SASL gagal"
+
+@@ -2216,132 +2469,122 @@ msgstr "Penggantian nama gagal: %s"
+ msgid "Mailbox renamed"
+ msgstr "Kotak surat telah diganti namanya"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Kotak surat telah ditutup."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Hubungan ke %s ditutup."
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "IMAP server ini sudah kuno. NeoMutt tidak bisa menggunakannya."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Pencarian header tanpa nama header: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL gagal: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Menutup hubungan ke %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Gunakan hubungan aman dg TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Tidak dapat negosiasi hubungan TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Hubungan terenkripsi tidak tersedia"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Berlangganan ke %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Berhenti langganan dari %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Berlangganan ke %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Berhenti langganan dari %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Menyalin %d surat ke %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Buat %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Penghapusan gagal"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+ msgstr[0] "Menandai %d surat-surat \"dihapus\"..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Menyimpan surat2 yg berubah... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Gagal menyimpan flags. Tetap mau ditutup aja?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Gagal menyimpan flags"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Menghapus surat-surat di server..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE (hapus) gagal"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Memilih %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Error saat membuka kotak surat"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "Server SMTP tidak mendukung authentikasi"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Tdk valid "
+@@ -2352,7 +2595,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Buset, memory abis"
+
+@@ -2372,7 +2615,7 @@ msgstr "Mengambil header surat..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Tidak dapat mengambil header dari IMAP server versi ini"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Mengambil header surat..."
+
+@@ -2385,156 +2628,156 @@ msgstr "Meletakkan surat ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Menyalin surat %d ke %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Mengambil surat..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Index dari surat tidak benar. Cobalah membuka kembali kotak surat tsb."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Lanjutkan?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Keluar"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Simpan"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Surat"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Balas"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grup"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Balas ke %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Tidak ada kotak surat yang terbuka"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Tidak ada surat"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Tidak ada surat yg bisa dilihat"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Kotak surat hanya bisa dibaca"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Fungsi ini tidak diperbolehkan pada mode pelampiran-surat"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, fuzzy, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "Tidak dapat %s: tidak diijinkan oleh ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Kotak surat read-only, tidak bisa toggle write"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Perubahan ke folder akan dilakukan saat keluar dari folder"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Perubahan ke folder tidak akan dilakukan"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s bukan kotak surat"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Kotak surat diobok-obok oleh program lain. Tanda-tanda surat mungkin tidak tepat."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Surat baru di kotak ini"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Kotak surat diobok-obok oleh program lain"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Tidak ada surat yang ditandai"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Gak ngapa-ngapain"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Masukkan keyID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Surat induk tidak bisa dilihat di tampilan terbatas ini"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Menghapus surat-surat di server..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "hapus semua surat di thread"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Ke surat no: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Parameter harus berupa nomer surat"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Tidak ada nomer begitu"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Surat itu tidak bisa dilihat"
+
+@@ -2547,38 +2790,38 @@ msgstr "Surat itu tidak bisa dilihat"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "tidak jadi hapus surat"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Hapus surat-surat yang: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Pola batas (limit pattern) tidak ditentukan"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr " Batas: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Hanya surat-surat yang: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Utk melihat semua pesan, batasi dengan \"semua\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Keluar dari NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Tandai surat-surat yang: "
+
+@@ -2586,213 +2829,213 @@ msgstr "Tandai surat-surat yang: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "tidak jadi hapus surat"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Tidak jadi hapus surat-surat yang: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Tidak jadi tandai surat-surat yang: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr ""
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Tidak ada subjek, batal"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Server SMTP tidak mendukung authentikasi"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Tidak ada subjek, batal"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Tidak ada subjek, batal"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Buka kotak surat dengan mode read-only"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Buka kotak surat"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Tidak ada kotak surat dengan surat baru."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Buka kotak surat dengan mode read-only"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Keluar dari NeoMutt tanpa menyimpan?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "hubungkan thread"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Thread dipecah"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ #, fuzzy
+ msgid "Can't link threads"
+ msgstr "hubungkan thread"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Tidak ada header Message-ID: tersedia utk menghubungkan thread"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Pertama, tandai sebuah surat utk dihubungkan ke sini"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Thread dihubungkan"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Tidak ada thread yg dihubungkan"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Anda sudah di surat yang terakhir"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Tidak ada surat yang tidak jadi dihapus"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Anda sudah di surat yang pertama"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Surat induk tidak bisa dilihat di tampilan terbatas ini"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Tidak ada surat baru"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Surat induk tidak bisa dilihat di tampilan terbatas ini"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Tidak ada surat yang belum dibaca"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Pencarian kembali ke atas"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Pencarian kembali ke bawah"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "tandai surat"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ #, fuzzy
+ msgid "Can't toggle new"
+ msgstr "tandai/tidak baru"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Tidak ada thread lagi"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Anda di thread yang pertama"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Thread berisi surat yang belum dibaca"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "tidak jadi hapus surat"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Tidak dapat menulis surat"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2801,7 +3044,7 @@ msgstr[0] "Kotak surat tidak berubah"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Kotak surat tidak berubah"
+@@ -2810,7 +3053,7 @@ msgstr "Kotak surat tidak berubah"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "loncat ke surat induk di thread ini"
+@@ -2818,14 +3061,14 @@ msgstr "loncat ke surat induk di thread ini"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Masukkan keyID: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Surat ditunda."
+@@ -2833,259 +3076,123 @@ msgstr "Surat ditunda."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Surat telah dibounce"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Tidak ada surat di kotak tersebut"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "tidak jadi hapus surat"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Error di baris perintah: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Error di baris perintah: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "tidak bisa menentukan username"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: tidak ada nama group"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "parameternya kurang"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Error di %s, baris %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Error di %s, baris %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: errors di %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: pembacaan dibatalkan sebab terlalu banyak error di %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: errors di %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: tidak ada alamat email"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Perhatian: IDN '%s' di alias '%s' tidak benar"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "lampiran: tidak ada disposisi"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "edit keterangan lampiran"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "lampiran: disposisi tidak benar"
+-
+-#: init.c:1160
+-#, fuzzy, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "Tidak ada -rx atau -addr"
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Perhatian: IDN '%s' tidak benar"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "kolom header tidak dikenali"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: variable tidak diketahui"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s mati"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: error pada %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Surat-surat tidak dapat dicetak"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: tidak ada pola yg cocok"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: tidak ada pola yg cocok"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Berlangganan ke %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Tidak ada subjek."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "bukan lampiran: tidak ada disposisi"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "bukan lampiran: disposisi tidak benar"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Berhenti langganan dari %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: perintah tidak dikenali"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Tidak tanggal: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Fungsi ini tidak diperbolehkan pada mode pelampiran-surat"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Loop macro terdeteksi"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Tombol itu tidak ditentukan untuk apa"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tombol itu tidak ditentukan untuk apa. Tekan '%s' utk bantuan."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: urutan tombol kosong"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: urutan tombol kosong"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: tidak ada parameter"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: tidak ada fungsi begitu"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Masukkan kunci-kunci (^G utk batal): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Kar = %s, Oktal = %o, Desimal = %d"
+@@ -3109,7 +3216,7 @@ msgstr "entry mailcap untuk jenis %s tidak ditemukan"
+ msgid "Scanning %s..."
+ msgstr "Memindai %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Membaca %s..."
+@@ -3125,13 +3232,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): tidak dapat mengeset waktu pada file"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Menulis %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3154,7 +3261,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3197,54 +3304,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Gagal menginisialisasi terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "tidak bisa menentukan username"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "tidak bisa menentukan home direktori"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Error: IDN '%s' tidak benar"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Tidak ada penerima yang disebutkan"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Tidak bisa membuka file surat: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: tidak bisa melampirkan file"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Tidak ada kotak surat dengan surat baru"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Tidak ada kotak surat incoming yang didefinisikan"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Kotak surat kosong"
+
+@@ -3286,52 +3393,52 @@ msgstr "Tidak bisa membuka kembali mailbox"
+ msgid "Can't write message"
+ msgstr "Tidak dapat menulis surat"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Ke: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Nomer indeks tidak betul"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Tidak ada entry"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Sudah tidak bisa geser lagi. Jebol nanti"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Sudah tidak bisa geser lagi. Jebol nanti"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Anda di halaman pertama"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Anda di halaman terakhir"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Anda di entry terakhir"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Anda di entry pertama"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Cari: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Cari mundur: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Tidak ketemu"
+
+@@ -3374,20 +3481,20 @@ msgstr "Menunggu flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Format berkas sejarah salah (baris %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Tidak bisa membuat file sementara"
+
+@@ -3406,7 +3513,7 @@ msgstr "Melakukan debug tingkat %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Melakukan debug tingkat %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Kesalahan waktu menghubungi ke server: %s"
+@@ -3431,17 +3538,17 @@ msgstr "Sinyal %d (%s) tertangkap... Keluar.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Sinyal %d tertangkap... Keluar.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3449,148 +3556,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "File adalah sebuah direktori, simpan di dalamnya? (y)a, (t)idak, (s)emua"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yts"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "File adalah sebuah direktori, simpan di dalamnya?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "File di dalam direktori: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "File sudah ada, (t)impa, t(a)mbahkan, atau (b)atal?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "tab"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Tidak bisa menyimpan surat ke kotak surat POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Tambahkan surat-surat ke %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Tidak bisa menyunting surat di server POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nama user di %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Password utk %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Perintah query tidak diketahui"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Tidak cocok dengan 'nametemplate', lanjutkan?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "'compose' di file mailcap membutuhkan %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Gagal membuka file untuk menge-parse headers"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Gagal membuka file untuk menghapus headers"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Gagal mengganti nama file"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "'compose' di file mailcap tidak ditemukan untuk %s, membuat file kosong"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "'Edit' di file mailcap membutuhkan %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "'Edit' di file mailcap tidak ditemukan untuk %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Tidak ada jenis yang cocok di file mailcap. Ditampilkan sebagai teks."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Jenis MIME tidak didefinisikan. Tidak bisa melihat lampiran."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Lampiran"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Lampiran"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Gagal menulis"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Saya tidak tahu bagaimana mencetak itu"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Cari"
+
+@@ -3599,21 +3678,21 @@ msgstr "Cari"
+ msgid "History '%s'"
+ msgstr "Query '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Tidak tanggal: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Tidak bisa mengunci %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Surat baru di "
+
+@@ -3635,20 +3714,20 @@ msgstr "Surat induk tidak bisa dilihat di tampilan terbatas ini"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Surat induk tidak bisa dilihat di tampilan terbatas ini"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Pencarian dibatalkan."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Tidak bisa melampirkan %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3659,67 +3738,67 @@ msgstr[0] "Menandai surat-surat \"dihapus\"..."
+ msgid "Can't open trash folder"
+ msgstr "Tidak bisa menambah ke kotak surat: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Pindahkan surat-surat yang sudah dibaca ke %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Benar-benar hapus %d surat yang ditandai akan dihapus?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Pindahkan surat-surat yang sudah dibaca ke %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Kotak surat tidak berubah"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d disimpan, %d dipindahkan, %d dihapus"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d disimpan, %d dihapus"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Tekan '%s' untuk mengeset bisa/tidak menulis"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Gunakan 'toggle-write' supaya bisa menulis lagi"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Kotak surat ditandai tidak boleh ditulisi. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Kotak surat telah di-checkpoint"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (waktu skrg: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Keluaran dari %s%s --]\n"
+@@ -3728,55 +3807,55 @@ msgstr "[-- Keluaran dari %s%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Passphrase sudah dilupakan"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Pesan tdk bisa dikirim inline. Gunakan PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Pesan tdk bisa dikirim inline. Gunakan PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Memanggil PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Pesan tdk bisa dikirim inline. Gunakan PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Surat tidak dikirim"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Surat2 S/MIME tanpa hints pada isi tidak didukung"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Mencoba mengekstrak kunci2 PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Mencoba mengekstrak sertifikat2 S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3785,7 +3864,7 @@ msgstr ""
+ "[-- Error: Protokol multipart/signed %s tidak dikenal --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3794,7 +3873,7 @@ msgstr ""
+ "[-- Error: Struktur multipart/signed tidak konsisten --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3803,7 +3882,7 @@ msgstr ""
+ "[-- Warning: Tidak dapat mem-verifikasi tandatangan %s/%s. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3811,7 +3890,7 @@ msgstr ""
+ "[-- Data berikut ini ditandatangani --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3819,7 +3898,7 @@ msgstr ""
+ "[-- Warning: Tidak dapat menemukan tandatangan. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3838,242 +3917,242 @@ msgstr "Memanggil S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Nama ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Berlaku Dari..: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Berlaku Sampai: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Penggunaan Kunci: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Penggunaan Kunci: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Cap jari: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Nomer Seri .: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Dikeluarkan oleh: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Sub kunci..: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "error saat mengaktifkan protokol CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "error saat membuat objek data gpgme: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "error saat mengalokasikan objek data: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "error saat me-rewind objek data: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "error saat membaca objek data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "error saat menambah penerima '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "kunci rahasia '%s' tidak ditemukan: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "lebih dari satu kunci rahasia yang cocok dengan '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "error saat memasang '%s' sebagai kunci rahasia: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "kesalahan mengatur notasi tanda tangan PKA: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "error saat mengenkripsi data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "error saat menandatangani data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Perhatian: Salah satu kunci telah dicabut.\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Perhatian: Kunci yg digunakan utk membuat tandatangan telah kadaluwarsa pada: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Perhatian: Minimal satu sertifikat sudah kadaluwarsa\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Perhatian: Tandatangan sudah kadaluwarsa pada: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Tidak bisa memverifikasi karena kunci atau sertifikat tidak ditemukan\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL tidak tersedia.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "CRL yang tersedia sudah terlalu tua/lama\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Salah satu persyaratan kebijaksanaan tidak terpenuhi\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Telah terjadi suatu kesalahan di sistem"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "PERHATIAN: Masukan PKA tidak cocok dengan alamat penandatangan: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Alamat penandatangan PKA yang sudah diverifikasi adalah: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "PERHATIAN: TIDAK ada indikasi bahwa kunci tersebut dimiliki oleh orang yang namanya tertera di atas\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "PERHATIAN: Kunci tersebut TIDAK dimiliki oleh oleh orang yang namanya tertera di atas\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "PERHATIAN: TIDAK bisa dipastikan bahwa kunci tersebut dimiliki oleh orang yang namanya tertera di atas\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Buat %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Error saat mengambil informasi tentang kunci: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ #, fuzzy
+ msgid "Good signature from:"
+ msgstr "Tandatangan valid dari: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ #, fuzzy
+ msgid "*BAD* signature from:"
+ msgstr "Tandatangan valid dari: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ #, fuzzy
+ msgid "Problem signature from:"
+ msgstr "Tandatangan valid dari: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ #, fuzzy
+ msgid " expires: "
+ msgstr " alias: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Awal informasi tandatangan --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Error: verifikasi gagal: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Awal Notasi (tandatangan oleh: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Akhir Notasi ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4081,7 +4160,7 @@ msgstr ""
+ "[-- Akhir informasi tandatangan --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4090,21 +4169,26 @@ msgstr ""
+ "[-- Error: dekripsi gagal: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Error saat mengambil informasi tentang kunci: "
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Error: dekripsi/verifikasi gagal: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Surat PGP berhasil didekrip"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Error: penyalinan data gagal\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4112,11 +4196,11 @@ msgstr ""
+ "[-- AWAL SURAT PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- AWAL PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4124,19 +4208,19 @@ msgstr ""
+ "[-- AWAL SURAT DG TANDATANGAN PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- AKHIR PESAN PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- AKHIR PGP PUBLIC KEY BLOCK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- AKHIR PESAN DG TANDATANGAN PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4144,11 +4228,11 @@ msgstr ""
+ "[-- Error: tidak tahu dimana surat PGP dimulai --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Error: tidak bisa membuat file sementara --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4156,7 +4240,7 @@ msgstr ""
+ "[-- Data berikut ditandatangani dan dienkripsi dg PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4164,24 +4248,20 @@ msgstr ""
+ "[-- Data berikut dienkripsi dg PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Akhir data yang ditandatangani dan dienkripsi dg PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Akhir data yang dienkripsi dg PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Surat PGP berhasil didekrip"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Tidak bisa mendekripsi surat PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4189,7 +4269,7 @@ msgstr ""
+ "[-- Data berikut ditandatangani dg S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4197,129 +4277,129 @@ msgstr ""
+ "[-- Data berikut dienkripsi dg S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Akhir data yg ditandatangani dg S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Akhir data yang dienkripsi dg S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Tidak bisa menampilkan user ID ini (encoding tidak diketahui)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Tidak bisa menampilkan user ID ini (encoding tidak valid)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Tidak bisa menampilkan user ID ini (DN tidak valid)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Tidak valid]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+ msgstr[0] "Jenis Kunci: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "enkripsi"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "menandatangani"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "sertifikasi"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Dicabut]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Kadaluwarsa]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Tidak aktif]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Mengumpulkan data ..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Error saat mencari kunci yg mengeluarkan: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Error: rantai sertifikasi terlalu panjang - berhenti di sini\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Identifikasi kunci: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start gagal: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next gagal: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Semua kunci yang cocok ditandai kadaluwarsa/dicabut"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Pilih "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Cek key "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Kunci-kunci PGP dan S/MIME cocok"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Kunci-kunci PGP cocok"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Kunci-kunci S/MIME cocok"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "kunci-kunci cocok"
+
+@@ -4327,59 +4407,59 @@ msgstr "kunci-kunci cocok"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Kunci ini tidak dapat digunakan: kadaluwarsa/disabled/dicabut"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID telah kadaluwarsa/disabled/dicabut. Anda yakin mau menggunakan kunci tsb?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID tidak valid. Anda yakin mau menggunakan kunci tsb?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID hanya valid secara marginal. Anda yakin mau menggunakan kunci tsb?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Validitas ID tidak terdifinisikan. Anda yakin mau menggunakan kunci tsb?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Mencari kunci yg cocok dengan \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Gunakan keyID = '%s' untuk %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Masukkan keyID untuk %s: "
+@@ -4388,16 +4468,16 @@ msgstr "Masukkan keyID untuk %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "kunci rahasia '%s' tidak ditemukan: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Masukkan key ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Error saat mengambil informasi tentang kunci: "
+@@ -4405,102 +4485,102 @@ msgstr "Error saat mengambil informasi tentang kunci: "
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Kunci PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, (p)gp atau (b)ersih?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "etsdpb"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, s/(m)ime atau (b)ersih?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "etsdmb"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, (p)gp atau (b)ersih?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "etsdpb"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, s/(m)ime atau (b)ersih?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "etsdmb"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, (p)gp atau (b)ersih?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "etsdpb"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, s/(m)ime atau (b)ersih?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "etsdmb"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Gagal memverifikasi pengirim"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Gagal menentukan pengirim"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Masukkan passphrase PGP: "
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Error: tidak bisa membuat subproses utk PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4511,16 +4591,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Surat PGP berhasil didekrip"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4528,132 +4608,132 @@ msgstr ""
+ "[-- Error: tidak bisa membuat subproses PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Dekripsi gagal"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Tidak bisa membuka subproses PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Tidak dapat menjalankan PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "etsdb"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "etsdb"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "etsdb"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "etsdb"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "etsdb"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, tandatangan (s)bg, ke(d)uanya, %s, (b)ersih?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "etsdb"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Mengambil PGP key..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Semua kunci yang cocok telah kadaluwarsa, dicabut, atau disabled"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP keys yg cocok dg <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP keys yg cocok dg \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Tidak bisa membuka /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Kunci PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Masukkan passphrase S/MIME: "
+
+@@ -4662,7 +4742,7 @@ msgstr "Masukkan passphrase S/MIME: "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Kadaluwarsa"
+
+@@ -4671,7 +4751,7 @@ msgstr "Kadaluwarsa"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Tdk valid "
+
+@@ -4680,7 +4760,7 @@ msgstr "Tdk valid "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Dicabut "
+
+@@ -4689,7 +4769,7 @@ msgstr "Dicabut "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Dipercaya "
+
+@@ -4698,7 +4778,7 @@ msgstr "Dipercaya "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Blm verif."
+
+@@ -4707,7 +4787,7 @@ msgstr "Blm verif."
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Sudah verif."
+
+@@ -4716,60 +4796,60 @@ msgstr "Sudah verif."
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Tdk diketahui"
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Sertifikat2 S/MIME yg cocok dg \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID tidak valid. Anda yakin mau menggunakan kunci tsb?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Masukkan keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Tidak ditemukan sertifikat (yg valid) utk %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Error: tidak bisa membuat subproses utk OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Tidak bisa mengambil sertifikat"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "tdk ada certfile"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "tdk ada mbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Tdk ada keluaran dr OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Tdk bisa tandatangan: Kunci tdk diberikan. Gunakan Tandatangan Sbg."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Tidak bisa membuka subproses OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4777,19 +4857,19 @@ msgstr ""
+ "[-- Akhir keluaran OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Error: tidak bisa membuat subproses utk OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Data berikut dienkripsi dg S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Data berikut ditandatangani dg S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4797,7 +4877,7 @@ msgstr ""
+ "\n"
+ "[-- Akhir data yang dienkripsi dg S/MIME. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4806,170 +4886,170 @@ msgstr ""
+ "[-- Akhir data yg ditandatangani dg S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, enkrip d(g), tandatangan (s)bg, ke(d)uanya, atau (b)ersih?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "etgsdb"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, enkrip d(g), tandatangan (s)bg, ke(d)uanya, atau (b)ersih?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "etgsdb"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)nkrip, (t)andatangan, enkrip d(g), tandatangan (s)bg, ke(d)uanya, atau (b)ersih?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "etgsdb"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Pilih algoritma: (1) DES, (2) RC2, (3) AES, atau (b)atal?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123b"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s bukan path POP yang valid"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server menutup hubungan"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "Server SMTP tidak mendukung authentikasi"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Tidak ada pengauthentikasi yg bisa digunakan"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Authentikasi SASL gagal"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Hubungan ke %s ditutup."
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Mengambil daftar surat..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Memeriksa surat baru..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "Tidak bisa membuat kotak surat sementara: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Menghubungi %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Gak ngapa-ngapain"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Tidak bisa stat %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Menghapus surat-surat di server..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Sedang login..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Memeriksa surat baru..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s bukan path POP yang valid"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4981,7 +5061,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "SASL gagal membaca alamat IP lokal"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6128,187 +6208,187 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "tunjukan opsi2 S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Tidak ada di menu ini"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "HlmnSblm"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "HlmnBrkt"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Lampiran"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Brkt"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Sudah paling bawah"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Sudah paling atas"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Bantuan sedang ditampilkan"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Tidak ada lagi teks kutipan"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Tidak ada lagi teks yang tidak dikutp setelah teks kutipan"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Kesalahan pada ekspresi: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Ekspresi kosong"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Perintah query tidak diketahui"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Menjalankan perintah tampil-otomatis: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Tidak tanggal: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Tidak ada bulan: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Bulan relatif tidak benar: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Tidak ada surat yang belum dibaca"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Error saat membuka kotak surat"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Error saat membuka kotak surat"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Tidak bisa membuka /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "error pada kriteria pada: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "parameter tidak ada"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "tanda kurung tidak klop: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: pengubah pola tidak valid"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: tidak didukung pada mode ini"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "parameter tidak ada"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "kriteria kosong"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "error: %d tidak dikenali (laporkan error ini)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Menyusun kriteria pencarian..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Menjalankan perintah terhadap surat-surat yang cocok..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Tidak ada surat yang memenuhi kriteria"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Mencari..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Sudah dicari sampe bawah, tapi tidak ketemu"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Sudah dicari sampe atas, tapi tidak ketemu"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Pencarian dibatalkan"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Perintah TOP tidak didukung oleh server"
+
+@@ -6316,7 +6396,7 @@ msgstr "Perintah TOP tidak didukung oleh server"
+ msgid "Can't write header to temporary file"
+ msgstr "Tidak bisa menulis header ke file sementara"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Perintah UIDL tidak didukung oleh server"
+
+@@ -6330,7 +6410,7 @@ msgstr[0] "Index dari surat tidak benar. Cobalah membuka kembali kotak surat tsb
+ msgid "POP host is not defined"
+ msgstr "Nama server POP tidak diketahui"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s bukan path POP yang valid"
+@@ -6361,152 +6441,152 @@ msgid "%s [%d of %d message read]"
+ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d dari %d surat dibaca]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Mengambil daftar surat..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Menandai surat-surat \"dihapus\"..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Tidak bisa menulis surat ke file sementara"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Mengauthentikasi (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "Tanda waktu POP tidak valid"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Mengauthentikasi (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Authentikasi APOP gagal"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Perintah USER tidak didukung oleh server"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Authentikasi SASL gagal"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "URL SMTP tidak valid: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Tidak bisa meninggalkan surat-surat di server"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Kesalahan waktu menghubungi ke server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Menutup hubungan ke server POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Memverifikasi indeks surat..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Hubungan terputus. Hubungi kembali server POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Surat-surat tertunda"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Tidak ada surat yg ditunda"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "S/MIME header tidak betul"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Header crypto tidak betul"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Mendekripsi surat..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Query Baru"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Buat Alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Menunggu respons..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Query: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Query '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Perintah query tidak diketahui"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipa"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Cetak"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Menyimpan..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Lampiran telah disimpan"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "PERHATIAN! Anda akan menimpa %s, lanjut?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Lampiran telah difilter"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filter melalui: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Pipe ke: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Saya tidak tahu bagaimana mencetak lampiran %s"
+@@ -6514,56 +6594,56 @@ msgstr "Saya tidak tahu bagaimana mencetak lampiran %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Cetak lampiran yang ditandai?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Cetak lampiran?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Tidak dapat men-decrypt surat ini"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Lampiran"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Tidak ada sub-bagian yg bisa ditampilkan"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Tidak bisa menghapus lampiran dari server POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Tidak bisa menghapus lampiran dari server POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Penghapusan lampiran dari surat yg dienkripsi tidak didukung"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Penghapusan lampiran dari surat yg dienkripsi tidak didukung"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Hanya penghapusan lampiran dari surat multi bagian yang didukung"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Anda hanya dapat menge-bounce bagian-bagian 'message/rfc822'"
+
+@@ -6599,7 +6679,7 @@ msgstr "Tidak bisa membuat %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Tidak dapat menemukan surat yang ditandai"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Tidak ada mailing list yang ditemukan"
+
+@@ -6614,67 +6694,67 @@ msgstr "Tidak dapat menguraikan semua lampiran yang ditandai. Ubah yg lainnya ke
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Anda hanya dapat menge-bounce bagian-bagian 'message/rfc822'"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Tambahkan"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Masukkan"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Tidak dapat mengambil type2.list milik mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Pilih rangkaian remailer"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Error: %s tidak dapat digunakan sebagai akhir rangkaian remailer"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Rangkaian mixmaster dibatasi hingga %d elemen"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Rangkaian remailer sudah kosong"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Anda sudah memilih awal rangkaian"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Anda sudah memilih akhir rangkaian"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster tidak menerima header Cc maupun Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Mohon variabel hostname diisi dengan benar jika menggunakan mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Error mengirimkan surat, proses keluar dengan kode %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Gagal mengirim surat"
+
+@@ -6705,42 +6785,42 @@ msgstr "Forward sebagai lampiran?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Balas ke %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Balas ke %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Sertakan surat asli di surat balasan?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Menyertakan surat terkutip..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Tidak bisa menyertakan semua surat yang diminta"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Forward sebagai lampiran?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Mempersiapkan surat yg diforward..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: tidak didukung pada mode ini"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "tampilkan lampiran sebagai teks"
+@@ -6749,196 +6829,196 @@ msgstr "tampilkan lampiran sebagai teks"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Tidak ada kotak surat.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Lanjutkan surat yang ditunda sebelumnya?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Edit surat yg diforward?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Batalkan surat yang tidak diubah?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Surat yang tidak diubah dibatalkan"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Surat tidak dikirim"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Surat ditunda"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Tidak ada subjek, batalkan pengiriman?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Tidak ada subjek"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Tidak ada subjek"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "edit transfer-encoding dari lampiran"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Mengirim surat..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Tidak bisa mengirim surat"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Mengirim di latar belakang"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Surat telah dikirim"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Tidak ada parameter batas yang bisa ditemukan [laporkan error ini]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s tidak ada lagi"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s bukan file biasa"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Tidak bisa mengirim surat."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Tidak bisa membuka %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Error mengirimkan surat, proses keluar dengan kode %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Keluaran dari proses pengiriman"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "IDN %s pada saat mempersiapkan resent-from tidak benar"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Sesi SMTP gagal: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Sesi SMTP gagal: tidak dapat membuka %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "URL SMTP tidak valid: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Authentikasi SASL gagal"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Authentikasi GSSAPI gagal"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "Server SMTP tidak mendukung authentikasi"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Sesi SMTP gagal: kesalahan pembacaan"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Sesi SMTP gagal: kesalahan penulisan"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Mengurutkan surat-surat..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Tidak bisa menemukan fungsi pengurutan [laporkan bug ini]"
+
+@@ -6993,11 +7073,11 @@ msgstr ""
+ "NeoMutt adalah software bebas, anda diperbolehkan utk menyebarluaskannya\n"
+ "dengan beberapa persyaratan; baca 'neomutt -vv' utk jelasnya.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opsi2 saat kompilasi:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opsi2 saat kompilasi:"
+diff --git a/po/it.po b/po/it.po
+index b8fe9ad2b..4a4c34d02 100644
+--- a/po/it.po
++++ b/po/it.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2012-05-25 22:14+0200\n"
+ "Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n"
+ "Language-Team: none\n"
+@@ -21,16 +21,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)ifiuta, accetta questa v(o)lta, (a)ccetta sempre"
++
++#, fuzzy
++msgid "roas"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)ifiuta, accetta questa v(o)lta, (a)ccetta sempre"
++
++msgid "roa"
++msgstr "roa"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)ifiuta, accetta questa v(o)lta"
++
++#, fuzzy
++msgid "ros"
++msgstr "ro"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)ifiuta, accetta questa v(o)lta"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Esci"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Canc"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "DeCanc"
+
+@@ -38,18 +66,18 @@ msgstr "DeCanc"
+ msgid "Select"
+ msgstr "Seleziona"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Aiuto"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Non ci sono alias"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Alias"
+
+@@ -58,52 +86,52 @@ msgstr "Alias"
+ msgid "Alias as: "
+ msgstr "Crea l'alias: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "È già stato definito un alias con questo nome"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Attenzione: il nome di questo alias può non funzionare. Correggerlo?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Indirizzo: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "IDN non valido: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nome della persona: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Confermare?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Salva nel file: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Errore nella lettura del file degli alias"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Errore nella lettura del file degli alias"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias aggiunto"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Errore nella ricerca nel file degli alias"
+
+@@ -112,7 +140,7 @@ msgstr "Errore nella ricerca nel file degli alias"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s non esiste. Crearlo?"
+@@ -121,8 +149,8 @@ msgstr "%s non esiste. Crearlo?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Impossibile creare %s: %s"
+@@ -132,7 +160,7 @@ msgstr "Impossibile creare %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -141,7 +169,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -150,7 +178,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -159,7 +187,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -171,7 +199,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "cifratura"
+@@ -179,7 +207,7 @@ msgstr "cifratura"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -187,7 +215,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -196,7 +224,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Non è stato trovato un certificato (valido) per %s"
+@@ -208,12 +236,12 @@ msgstr "Non è stato trovato un certificato (valido) per %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Nessuna mailbox.\n"
+@@ -225,14 +253,14 @@ msgstr "Nessuna mailbox.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Creare %s?"
+@@ -240,7 +268,7 @@ msgstr "Creare %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Cancella"
+
+@@ -248,9 +276,9 @@ msgstr "Cancella"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -258,17 +286,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -277,7 +305,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -285,7 +313,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -293,12 +321,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -306,13 +334,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Errore nella lettura della directory"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Cancellare davvero la mailbox \"%s\"?"
+@@ -330,7 +358,7 @@ msgstr "Cancellare davvero la mailbox \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Impossibile bloccare la mailbox!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "errore nella creazione del contesto gpgme: %s"
+@@ -403,335 +431,286 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s non è una directory"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "CambiaDir"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maschera"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Iscritto a %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Sottoscrizione rimossa da %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s non è una directory"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Iscritto a %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Mailbox [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Iscritto [%s], maschera del file: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Directory [%s], Maschera dei file: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Impossibile allegare una directory"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Non ci sono file corrispondenti alla maschera"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "È possibile creare solo mailbox IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "È possibile rinominare solo mailbox IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "È possibile cancellare solo mailbox IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "mostra il nome del file attualmente selezionato"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Cancellare davvero la mailbox \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Mailbox cancellata"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Mailbox cancellata"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Mailbox non cancellata"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Cambia directory in: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Errore nella lettura della directory"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Maschera dei file: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ordino al contrario per (d)ata, (a)lfabetico, dimensioni(z) o (n)ulla?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ordino per (d)ata, (a)lfabetico, dimensioni(z) o (n)ulla?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nuovo nome del file: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Impossibile vedere una directory"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "C'è stato un errore nella visualizzazione del file"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Iscritto a %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Sottoscrizione rimossa da %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Non ci sono file corrispondenti alla maschera"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: il colore non è gestito dal terminale"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: colore inesistente"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: oggetto inesistente"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: troppo pochi argomenti"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: attributo inesistente"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: troppi argomenti"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "i colori predefiniti non sono gestiti"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Errore: score: numero non valido"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Verifico la firma?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Impossibile creare il file temporaneo"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Impossibile creare il filtro di visualizzazione"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Impossibile copiare il messaggio"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Firma S/MIME verificata con successo"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Il proprietario del certificato S/MIME non corrisponde al mittente"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Attenzione: una parte di questo messaggio non è stata firmata"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Non è stato possibile verificare la firma S/MIME"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Firma PGP verificata con successo"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Non è stato possibile verificare la firma PGP"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Errore eseguendo \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Comando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Attenzione: il messaggio non contiene alcun header From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Rimbalza il messaggio a: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Rimbalza i messaggi segnati a: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Errore nella lettura dell'indirizzo"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Rimbalza il messaggio a %s?"
+ msgstr[1] "Rimbalza i messaggi a %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Messaggio non rimbalzato"
+ msgstr[1] "Messaggi non rimbalzati"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Messaggio rimbalzato"
+ msgstr[1] "Messaggi rimbalzati"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Impossibile creare il processo filtro"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Apri una pipe con il comando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Non è stato definito un comando di stampa"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Stampare il messaggio?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Stampare i messaggi segnati?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Messaggio stampato"
+ msgstr[1] "Messaggi stampati"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -739,162 +718,325 @@ msgstr[0] "Impossibile stampare il messaggio"
+ msgstr[1] "Impossibile stampare i messaggi"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr ""
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr ""
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr ""
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Comando della shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Decodifica e salva nella mailbox"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decodifica e salva nella mailbox i messaggi segnati"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Decifra e salva nella mailbox"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Decifra e salva nella mailbox i messaggi segnati"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Salva nella mailbox"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Salva nella mailbox i messaggi segnati"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Decodifica e copia nella mailbox"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decodifica e copia nella mailbox i messaggi segnati"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Decifra e copia nella mailbox"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Decifra e copia nella mailbox i messaggi segnati"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Copia nella mailbox"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Copia nella mailbox i messaggi segnati"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copio in %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Il Content-Type è stato cambiato in %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Convertire in %s al momento dell'invio?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Il Content-Type è stato cambiato in %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Il set di caratteri è stato cambiato in %s; non convertito"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Il set di caratteri è stato cambiato in %s; convertito"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: troppo pochi argomenti"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: nessun nome per il gruppo"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr ""
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Errore in %s, linea %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Errore in %s, linea %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: errori in %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: lettura terminata a causa di troppi errori in %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: errori in %s"
++msgstr[1] "source: errori in %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: nessun indirizzo"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Attenzione: l'IDN '%s' nell'alias '%s' non è valido"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "allegati: nessuna disposizione"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "modifica la descrizione dell'allegato"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "allegati: disposizione non valida"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: troppi argomenti"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: -rx o -addr mancanti"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: attenzione: ID '%s' errato"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "Campo dell'header non valido"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: variabile sconosciuta"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s non è attivo"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: errore in %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Impossibile stampare i messaggi"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: nessun modello corrispondente"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: nessun modello corrispondente"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Iscritto a %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Iscritto a %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Non è stato specificato un oggetto."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr ""
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Sottoscrizione rimossa da %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Sottoscrizione rimossa da %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Non ci sono allegati"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Rispondi"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -905,79 +1047,79 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Firma come: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ # FIXME - come tradurre questo messaggio?
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Inviare un Follow-up a %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "modifica il campo Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Spedisci"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Abbandona"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Allega un file"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descr"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Non è stato specificato un oggetto."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Nessuno"
+@@ -986,7 +1128,7 @@ msgstr "Nessuno"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -994,14 +1136,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "sì"
+@@ -1012,7 +1154,7 @@ msgstr "sì"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1020,51 +1162,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Non supportato"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Firma, Crittografa"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Crittografa"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Firma"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Nessuno"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP in linea)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<predefinito>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Cifra con: "
+
+@@ -1073,12 +1215,12 @@ msgstr "Cifra con: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "modifica il campo Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1089,7 +1231,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] non esiste più"
+@@ -1101,240 +1243,360 @@ msgstr "%s [#%d] non esiste più"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] è stato modificato. Aggiornare la codifica?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Allegati"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Non si può cancellare l'unico allegato"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "IDN non valido in '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Allegato salvato"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "L'allegato corrente non sarà convertito"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Allegato filtrato"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Errore durante l'invio del messaggio"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Allego i file selezionati..."
+ msgstr[1] "Allego i file selezionati..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Impossibile allegare %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Aprire la mailbox da cui allegare il messaggio"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Aprire la mailbox da cui allegare il messaggio"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Impossibile bloccare la mailbox!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "In questo folder non ci sono messaggi"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Segnare i messaggi da allegare"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Impossibile allegare"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "La ricodifica ha effetti solo sugli allegati di testo"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "L'allegato corrente non sarà convertito"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "L'allegato corrente sarà convertito"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Codifica non valida"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Salvare una copia di questo messaggio?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "Salvare l'allegato in Fcc?"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Rinomina in: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Impossibile eseguire lo stat di %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nuovo file: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type non è nella forma base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Content-Type %s sconosciuto"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Impossibile creare il file %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Quel che abbiamo qui è l'impossibilità di fare un allegato"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Richiamare il messaggio rimandato?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Salva il messaggio nella mailbox"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Scrittura del messaggio in %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Messaggio scritto"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME già selezionato. Annullare & continuare?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP già selezionato. Annullare & continuare?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Impossibile bloccare la mailbox"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Comando di preconnessione fallito."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Copio in %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Copio in %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Errore. Preservato il file temporaneo: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Data relativa non valida: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Data relativa non valida: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Errore: score: numero non valido"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Valore per l'opzione %s non valido: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mese non valido: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funzione non permessa nella modalità attach-message."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Errore: score: numero non valido"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Errore: score: numero non valido"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Data relativa non valida: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Valore per l'opzione %s non valido: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Errore: il valore '%s' non è valido per -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: variabile sconosciuta"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Data relativa non valida: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Data relativa non valida: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nome utente su %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Password per %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Il comando della ricerca non è definito"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1355,7 +1617,7 @@ msgstr "Connessione a %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Impossibile connettersi a %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "errore sconosciuto"
+
+@@ -1369,23 +1631,23 @@ msgstr "Errore di comunicazione con %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Connessione a %s chiusa."
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Profilo SASL sconosciuto"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Errore nell'allocare la connessione SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Errore nell'impostare le proprietà di sicurezza SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Errore nell'impostare il nome utente SASL esterno"
+
+@@ -1398,136 +1660,110 @@ msgstr "Comando di preconnessione fallito"
+ msgid "Connection to %s closed"
+ msgstr "Connessione a %s chiusa."
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Riempimento del pool di entropia: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s ha permessi insicuri"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL disabilitato a causa della mancanza di entropia"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Sconosciuto"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[impossibile da calcolare]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[data non valida]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Il certificato del server non è ancora valido"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Il certificato del server è scaduto"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Impossibile trovare abbastanza entropia nel sistema"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "impossibile ottenere il soggetto del certificato"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "Impossibile ottenere il nome comune del certificato"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "il proprietario del certificato non corrisponde al nome host %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Questo certificato appartiene a:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Questo certificato è stato emesso da:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Questo certificato è valido"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " da %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+-msgstr " a %s"
+-
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "Fingerprint SHA1: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Fingerprint SHA256: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr "Verifica del certificato SSL (certificato %zu di %zu nella catena)"
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)ifiuta, accetta questa v(o)lta, (a)ccetta sempre"
++msgstr " a %s"
+
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)ifiuta, accetta questa v(o)lta, (a)ccetta sempre"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "Fingerprint SHA1: %s"
+
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)ifiuta, accetta questa v(o)lta"
++msgid "SHA256 Fingerprint: "
++msgstr "Fingerprint SHA256: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)ifiuta, accetta questa v(o)lta"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr "Verifica del certificato SSL (certificato %zu di %zu nella catena)"
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Esci "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Attenzione: impossibile salvare il certificato"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificato salvato"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Verifica nome host del certificato fallita: %s"
+@@ -1535,15 +1771,15 @@ msgstr "Verifica nome host del certificato fallita: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "errore di I/O"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL fallito: %s"
+@@ -1551,90 +1787,74 @@ msgstr "SSL fallito: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Errore: impossibile creare il sottoprocesso di OpenSSL!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Impossibile ottenere il certificato dal peer"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Errore nella verifica del certificato (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Il certificato non è X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Errore nell'inizializzazione dei dati del certificato gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Errore nell'analisi dei dati del certificato"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ATTENZIONE: il certificato del server non è ancora valido"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ATTENZIONE: il certificato del server è scaduto"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ATTENZIONE: il certificato del server è stato revocato"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ATTENZIONE: il nome host del server non corrisponde al certificato"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "ATTENZIONE: il firmatario del certificato del server non è una CA valida"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Attenzione: il certificato del server è stato firmato con un algoritmo non sicuro"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Disabilitati tutti i protocolli di connessione disponibili per TLS/SSL"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Connessione SSL/TLS con %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Errore: nessun socket TLS aperto"
+
+@@ -1653,38 +1873,18 @@ msgstr "Errore del tunnel nella comunicazione con %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Il tunnel verso %s ha restituito l'errore %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "sì"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Uscire da neomutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Premere un tasto per continuare..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' per la lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1707,7 +1907,7 @@ msgstr ""
+ "~Mmessaggi come ~m, ma include anche gli header\n"
+ "~p stampa il messaggio\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1729,20 +1929,20 @@ msgstr ""
+ "~? questo messaggio\n"
+ "~. da solo su una linea termina l'input\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: numero del messaggio non valido.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Termina il messaggio con un . su una linea da solo)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Nessuna mailbox.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Il messaggio contiene:\n"
+
+@@ -1750,19 +1950,19 @@ msgstr "Il messaggio contiene:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continua)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "manca il nome del file.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Non ci sono linee nel messaggio.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: comando dell'editor sconosciuto (~? per l'aiuto)\n"
+@@ -1809,19 +2009,73 @@ msgstr "Impossibile accodare al folder: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "il messaggio multipart non ha il parametro boundary"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Il threading non è attivo"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Imposta il flag"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Cancella il flag"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: il colore non è gestito dal terminale"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: colore inesistente"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: oggetto inesistente"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: attributo inesistente"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "i colori predefiniti non sono gestiti"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Errore: score: numero non valido"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "sì"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Uscire da neomutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Premere un tasto per continuare..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' per la lista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1842,23 +2096,23 @@ msgstr "[-- Visualizzato automaticamente con %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Richiamo il comando di autovisualizzazione: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Impossibile creare il filtro"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Impossibile eseguire %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- stderr dell'autoview di %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Errore: message/external-body non ha un parametro access-type --]\n"
+
+@@ -1877,7 +2131,7 @@ msgstr "[-- Errore: message/external-body non ha un parametro access-type --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1906,7 +2160,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1920,7 +2174,7 @@ msgstr[1] "[-- Questo allegato %s/%s (dimensioni %s byte) è stato cancellato --
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1932,12 +2186,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Questo allegato %s/%s è stato cancellato -- ]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nome: %s --]\n"
+@@ -1945,7 +2199,7 @@ msgstr "[-- nome: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1961,7 +2215,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1970,95 +2224,95 @@ msgstr ""
+ "[-- Questo allegato %s/%s non è incluso, --]\n"
+ "[-- e il l'access-type %s indicato non è gestito --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Errore: impossibile visualizzare ogni parte di multipart/alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Allegato #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Allegato #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Uno o più parti di questo messaggio potrebbero non essere mostrate"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Impossibile aprire il file temporaneo"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Impossibile aprire il file temporaneo"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Impossibile aprire il file temporaneo"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Errore: multipart/signed non ha protocollo"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Questo è un allegato (usa '%s' per vederlo) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s non è gestito (usa '%s' per vederlo) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Questo è un allegato ('view-attachments' deve essere assegnato a un tasto) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s non è gestito ('view-attachments' deve essere assegnato a un tasto) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Questo è un allegato --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s non è gestito --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERRORE: per favore segnalare questo bug"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<SCONOSCIUTO>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Assegnazioni generiche:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funzioni non assegnate:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Aiuto per %s"
+@@ -2075,41 +2329,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: impossibile usare unhook * dentro un hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tipo di hook sconosciuto: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: impossibile cancellare un %s dentro un %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: menù inesistente"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: menù inesistente"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: menù inesistente"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Impossibile creare il file temporaneo %s"
+@@ -2147,30 +2401,30 @@ msgstr "Autenticazione GSSAPI fallita"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN non è abilitato su questo server"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Faccio il login..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Login fallito"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autenticazione in corso (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Autenticazione OAUTHBEARER fallita"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autenticazione in corso (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Autenticazione SASL fallita"
+
+@@ -2218,90 +2472,80 @@ msgstr "Impossibile rinominare: %s"
+ msgid "Mailbox renamed"
+ msgstr "Mailbox rinominata"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Mailbox chiusa"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Connessione a %s chiusa."
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Questo server IMAP è troppo vecchio, neomutt non può usarlo."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Ricerca header senza nome dell'header: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE fallito: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Chiusura della connessione a %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Vuoi usare TLS per rendere sicura la connessione?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Impossibile negoziare la connessione TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Connessione cifrata non disponibile"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Iscrizione a %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Rimozione della sottoscrizione da %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Iscritto a %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Sottoscrizione rimossa da %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Copia di %d messaggi in %s..."
+ msgstr[1] "Copia di %d messaggi in %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Creare %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Expunge fallito"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2309,44 +2553,44 @@ msgstr[0] "Segno cancellati %d messaggi..."
+ msgstr[1] "Segno cancellati %d messaggi..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Salvataggio dei messaggi modificati... [%d/%d]"
+ msgstr[1] "Salvataggio dei messaggi modificati... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Errore nel salvare le flag. Chiudere comunque?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Errore nel salvataggio delle flag"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Cancellazione dei messaggi dal server..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE fallito"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Seleziono %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Errore durante l'apertura della mailbox"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "Il server SMTP non supporta l'autenticazione"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Non valido "
+@@ -2357,7 +2601,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Memoria esaurita"
+
+@@ -2377,7 +2621,7 @@ msgstr "Scaricamento header dei messaggi..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Impossibile scaricare gli header da questa versione del server IMAP"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Scaricamento header dei messaggi..."
+
+@@ -2390,157 +2634,157 @@ msgstr "Invio messaggio..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copia messaggio %d in %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Scaricamento messaggio..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "L'indice dei messaggi non è corretto; provare a riaprire la mailbox."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Continuare?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Esci"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Salva"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Mail"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Rispondi"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Gruppo"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+ # FIXME - come tradurre questo messaggio?
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Inviare un Follow-up a %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Nessuna mailbox aperta"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Non ci sono messaggi"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Non ci sono messaggi visibili"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "La mailbox è di sola lettura"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funzione non permessa nella modalità attach-message"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, fuzzy, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "Impossibile %s: operazione non permessa dalle ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Impossibile (dis)abilitare la scrittura a una mailbox di sola lettura"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "I cambiamenti al folder saranno scritti all'uscita dal folder"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "I cambiamenti al folder non saranno scritti"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s non è una mailbox"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "La mailbox è stata modificata dall'esterno. I flag possono essere sbagliati."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "C'è nuova posta in questa mailbox"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "La mailbox è stata modificata dall'esterno"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Nessun messaggio segnato"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Niente da fare"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Inserire il keyID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Il messaggio padre non è visibil in questa visualizzazione limitata"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Cancellazione dei messaggi dal server..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "cancella tutti i messaggi nel thread"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Salta al messaggio: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "L'argomento deve essere il numero di un messaggio"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Numero del messaggio non valido"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Questo messaggio non è visibile"
+
+@@ -2553,38 +2797,38 @@ msgstr "Questo messaggio non è visibile"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "ripristina messaggio"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Cancella i messaggi corrispondenti a: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Non è attivo alcun modello limitatore"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limita: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limita ai messaggi corrispondenti a: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Per visualizzare tutti i messaggi, limitare ad \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Uscire da NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Segna i messaggi corrispondenti a: "
+
+@@ -2592,213 +2836,213 @@ msgstr "Segna i messaggi corrispondenti a: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "ripristina messaggio"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Ripristina i messaggi corrispondenti a: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Togli il segno ai messaggi corrispondenti a: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Sessione con i server IMAP terminata"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Nessun oggetto, abbandonato"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Il server SMTP non supporta l'autenticazione"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Nessun oggetto, abbandonato"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Nessun oggetto, abbandonato"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Apri la mailbox in sola lettura"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Apri la mailbox"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Nessuna mailbox con nuova posta."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Apri la mailbox in sola lettura"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Uscire da NeoMutt senza salvare?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "collega thread"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Thread corrotto"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Il thread non può essere corrotto, il messaggio non fa parte di un thread"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ #, fuzzy
+ msgid "Can't link threads"
+ msgstr "collega thread"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Nessun header Message-ID: disponibile per collegare il thread"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Segnare prima il messaggio da collegare qui"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Thread collegati"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Nessun thread collegato"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Sei all'ultimo messaggio"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Nessun messaggio ripristinato"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Sei al primo messaggio"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Il messaggio padre non è visibil in questa visualizzazione limitata"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Non ci sono nuovi messaggi"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Il messaggio padre non è visibil in questa visualizzazione limitata"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Non ci sono messaggi non letti"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "La ricerca è ritornata all'inizio"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "La ricerca è ritornata al fondo"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "aggiungi flag al messaggio"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ #, fuzzy
+ msgid "Can't toggle new"
+ msgstr "(dis)abilita nuovo"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Non ci sono altri thread"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Sei al primo thread"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Il thread contiene messaggi non letti"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "ripristina messaggio"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Impossibile scrivere il messaggio"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2808,7 +3052,7 @@ msgstr[1] "La mailbox non è stata modificata"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "La mailbox non è stata modificata"
+@@ -2817,7 +3061,7 @@ msgstr "La mailbox non è stata modificata"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "segna messaggio(i) come letto(i)"
+@@ -2825,14 +3069,14 @@ msgstr "segna messaggio(i) come letto(i)"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Inserire il keyID: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Il messaggio è stato rimandato."
+@@ -2840,260 +3084,123 @@ msgstr "Il messaggio è stato rimandato."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Messaggio rimbalzato"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "In questo folder non ci sono messaggi"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "ripristina messaggio"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Errore nella riga di comando: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Errore nella riga di comando: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "impossibile determinare l'username"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: nessun nome per il gruppo"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr ""
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Errore in %s, linea %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Errore in %s, linea %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: errori in %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: lettura terminata a causa di troppi errori in %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: errori in %s"
+-msgstr[1] "source: errori in %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: nessun indirizzo"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Attenzione: l'IDN '%s' nell'alias '%s' non è valido"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "allegati: nessuna disposizione"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "modifica la descrizione dell'allegato"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "allegati: disposizione non valida"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: -rx o -addr mancanti"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: attenzione: ID '%s' errato"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "Campo dell'header non valido"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: variabile sconosciuta"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s non è attivo"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: errore in %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Impossibile stampare i messaggi"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: nessun modello corrispondente"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: nessun modello corrispondente"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Iscritto a %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Non è stato specificato un oggetto."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr ""
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Sottoscrizione rimossa da %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: comando sconosciuto"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Valore per l'opzione %s non valido: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funzione non permessa nella modalità attach-message."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Individuato un loop di macro"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Il tasto non è assegnato"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Il tasto non è assegnato. Premere '%s' per l'aiuto."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: sequenza di tasti nulla"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: sequenza di tasti nulla"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: non ci sono argomenti"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: la funzione non esiste"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Inserisci i tasti (^G per annullare): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Car = %s, Ottale = %o, Decimale = %d"
+@@ -3117,7 +3224,7 @@ msgstr "La voce di mailcap per il tipo %s non è stata trovata"
+ msgid "Scanning %s..."
+ msgstr "Scansione di %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Lettura di %s..."
+@@ -3132,13 +3239,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message():·impossibile impostare l'orario del file"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Scrittura di %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3161,7 +3268,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3204,54 +3311,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Errore nell'inizializzazione del terminale"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "impossibile determinare l'username"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "impossibile determinare la home directory"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Errore: il valore '%s' non è valido per -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Impossibile analizzare il collegamento mailto:"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nessun destinatario specificato"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Impossibile aprire il file del messaggio: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: impossibile allegare il file"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Nessuna mailbox con nuova posta"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Non è stata definita una mailbox di ingresso"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "La mailbox è vuota"
+
+@@ -3293,52 +3400,52 @@ msgstr "Impossibile riaprire la mailbox"
+ msgid "Can't write message"
+ msgstr "Impossibile scrivere il messaggio"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Salta a: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Numero dell'indice non valido"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Nessuna voce"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Non puoi spostarti più in basso"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Non puoi spostarti più in alto"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Sei alla prima pagina"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Sei all'ultima pagina"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Sei all'ultima voce"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Sei alla prima voce"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Cerca: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Cerca all'indietro: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Non trovato"
+
+@@ -3381,20 +3488,20 @@ msgstr "In attesa del lock flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Formato del file della cronologia errato (riga %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Impossibile creare il file temporaneo"
+
+@@ -3413,7 +3520,7 @@ msgstr "Debugging al livello %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Debugging al livello %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Errore nella connessione al server: %s"
+@@ -3437,17 +3544,17 @@ msgstr "Catturato il segnale %d (%s) ... in uscita.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Catturato il segnale %d ... in uscita.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3455,149 +3562,121 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Il file è una directory, salvare all'interno? (s)ì, (n)o, (t)utti"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "snt"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Il file è una directory, salvare all'interno?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "File nella directory: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Il file esiste, s(o)vrascrivere, (a)ccodare, o (c)ancellare l'operazione?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Impossibile salvare il messaggio nella mailbox POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Accodo i messaggi a %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Impossibile modificare i messaggi sul server POP"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nome utente su %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Password per %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Il comando della ricerca non è definito"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+ # FIXME
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Il 'nametemplate' non corrisponde, continuare?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "La voce compose di mailcap richiede %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Errore nell'apertura del file per analizzare gli header"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Errore nell'apertura del file per rimuovere gli header"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Errore nel rinominare il file"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Manca la voce compose di mailcap per %s, creo un file vuoto"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "La voce edit di mailcap richiede %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Manca la voce edit di mailcap per %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Non è stata trovata la voce di mailcap corrispondente. Visualizzo come testo."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Tipo MIME non definito. Impossibile visualizzare l'allegato."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Comando: %-20.20s Descrizione: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Comando: %-30.30s Allegato: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Allegato: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Allegato: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Errore di scrittura"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Non so come stamparlo"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Cerca"
+
+@@ -3606,21 +3685,21 @@ msgstr "Cerca"
+ msgid "History '%s'"
+ msgstr "Ricerca '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Valore per l'opzione %s non valido: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Impossibile fare il lock di %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nuova posta in "
+
+@@ -3642,20 +3721,20 @@ msgstr "Il messaggio padre non è visibil in questa visualizzazione limitata"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Il messaggio padre non è visibil in questa visualizzazione limitata"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Ricerca interrotta."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Impossibile allegare %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3667,69 +3746,69 @@ msgstr[1] "Segno i messaggi come cancellati..."
+ msgid "Can't open trash folder"
+ msgstr "Impossibile accodare al folder: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Spostare i messaggi letti in %s?"
+ msgstr[1] "Spostare i messaggi letti in %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Eliminare %d messaggio cancellato?"
+ msgstr[1] "Eliminare %d messaggi cancellati?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Spostamento dei messaggi letti in %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "La mailbox non è stata modificata"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d tenuti, %d spostati, %d cancellati"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d tenuti, %d cancellati"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Premere '%s' per (dis)abilitare la scrittura"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Usare 'toggle-write' per riabilitare la scrittura"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "La mailbox è indicata non scrivibile. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Effettuato il checkpoint della mailbox"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (orario attuale: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Segue l'output di %s%s --]\n"
+@@ -3738,55 +3817,55 @@ msgstr "[-- Segue l'output di %s%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Passphrase dimenticata/e"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Il messaggio non può essere inviato in linea. Riutilizzare PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Il messaggio non può essere inviato in linea. Riutilizzare PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Eseguo PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Il messaggio non può essere inviato in linea. Riutilizzare PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Il messaggio non è stato inviato"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "I messaggi S/MIME senza suggerimenti del contenuto non sono gestiti"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Cerco di estrarre le chiavi PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Cerco di estrarre i certificati S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3795,7 +3874,7 @@ msgstr ""
+ "[-- Errore: protocollo multipart/signed %s sconosciuto --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3804,7 +3883,7 @@ msgstr ""
+ "[-- Errore: struttura multipart/signed incoerente --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3813,7 +3892,7 @@ msgstr ""
+ "[-- Attenzione: impossibile verificare firme %s/%s. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3821,7 +3900,7 @@ msgstr ""
+ "[-- I seguenti dati sono firmati --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3829,7 +3908,7 @@ msgstr ""
+ "[-- Attenzione: non è stata trovata alcuna firma. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3848,237 +3927,237 @@ msgstr "Richiamo S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Nome ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Valido da : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Valido fino a ..: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Uso della chiave .: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Uso della chiave .: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingerprint: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Numero di serie .: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Emesso da .: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Subkey ....: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "errore nell'abilitazione del protocollo CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "errore nell'aggiunta dell'indirizzo '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "chiave segreta '%s' non trovata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "specifica della chiave segreta '%s' ambigua"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "errore nell'impostazione della chiave segreta '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "errore nell'impostare la notazione della firma PKA: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "errore nella cifratura dei dati: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "errore nel firmare i dati: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Attenzione: una delle chiavi è stata revocata\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Attenzione: la chiave usata per creare la firma è scaduta il: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Attenzione: almeno una chiave di certificato è scaduta\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Attenzione: la firma è scaduta il: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Impossibile verificare a causa di chiave o certificato mancante\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "La CRL non è disponibile\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "La CRL disponibile è deprecata\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Si è verificato un errore di sistema"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "ATTENZIONE: la voce PKA non corrisponde all'indirizzo del firmatario: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "L'indirizzo del firmatario verificato PKA è: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "ATTENZIONE: Non abbiamo NESSUNA indicazione che la chiave appartenga alla persona citata\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ATTENZIONE: la chiave NON APPARTIENE alla persona citata\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ATTENZIONE: NON è certo che la chiave appartenga alla persona citata\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "creato: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Errore nel prelevare le informazioni sulla chiave: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Firma valida da:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "Firma *NON VALIDA* da:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problema con la firma da:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " scade: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Inizio dei dati firmati --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Errore: verifica fallita: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Inizio notazione (firma di %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Fine notazione ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4086,7 +4165,7 @@ msgstr ""
+ "[-- Fine dei dati firmati --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4095,21 +4174,26 @@ msgstr ""
+ "[-- Errore: decifratura fallita: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Errore nell'estrazione dei dati della chiave!"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Errore: decifratura/verifica fallita: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Messaggio PGP decifrato con successo"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Errore: copia dei dati fallita\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4117,11 +4201,11 @@ msgstr ""
+ "[-- INIZIO DEL MESSAGGIO PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- INIZIO DEL BLOCCO DELLA CHIAVE PUBBLICA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4129,19 +4213,19 @@ msgstr ""
+ "[-- INIZIO DEL MESSAGGIO FIRMATO CON PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- FINE DEL MESSAGGIO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FINE DEL BLOCCO DELLA CHIAVE PUBBLICA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- FINE DEL MESSAGGIO FIRMATO CON PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4149,11 +4233,11 @@ msgstr ""
+ "[-- Errore: impossibile trovare l'inizio del messaggio di PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Errore: impossibile creare il file temporaneo --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4161,7 +4245,7 @@ msgstr ""
+ "[-- I seguenti dati sono firmati e cifrati con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4169,24 +4253,20 @@ msgstr ""
+ "[-- I seguenti dati sono cifrati con PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Fine dei dati firmati e cifrati con PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Fine dei dati cifrati con PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Messaggio PGP decifrato con successo"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Impossibile decifrare il messaggio PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4194,7 +4274,7 @@ msgstr ""
+ "[-- I seguenti dati sono firmati con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4202,34 +4282,34 @@ msgstr ""
+ "[-- I seguenti dati sono cifrati con S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Fine dei dati firmati com S/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Fine dei dati cifrati con S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Impossibile mostrare questo ID utente (codifica sconosciuta)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Impossibile mostrare questo ID utente (codifica non valida)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Impossibile mostrare questo ID utente (DN non valido)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Non valido]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4237,95 +4317,95 @@ msgstr[0] "Tipo di chiave ..: %s, %lu bit %s\n"
+ msgstr[1] "Tipo di chiave ..: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "cifratura"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "firma"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certificazione"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revocato]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Scaduto]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Disabilitato]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Raccolta dei dati..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Errore nella ricerca dell'emittente della chiave: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Errore: catena di certificazione troppo lunga - stop\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start fallito: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next fallito: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Tutte le chiavi corrispondenti sono scadute/revocate"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Seleziona "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Controlla chiave "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Chiavi PGP e S/MIME corrispondenti"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Chiavi PGP corrispondenti"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Chiavi S/MIME corrispondenti"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Chiavi corrispondenti"
+
+@@ -4333,59 +4413,59 @@ msgstr "Chiavi corrispondenti"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Questa chiave non può essere usata: è scaduta/disabilitata/revocata"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "L'ID è scaduto/disabilitato/revocato. Vuoi veramente usare questa chiave?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "L'ID non è valido. Vuoi veramente usare questa chiave?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "L'ID è solo marginalmente valido. Vuoi veramente usare questa chiave?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "L'ID ha validità indefinita. Vuoi veramente usare questa chiave?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Ricerca chiavi corrispondenti a \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Uso il keyID \"%s\" per %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Inserisci il keyID per %s: "
+@@ -4394,16 +4474,16 @@ msgstr "Inserisci il keyID per %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "chiave segreta '%s' non trovata: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Inserire il key ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Errore nell'estrazione dei dati della chiave!"
+@@ -4411,98 +4491,98 @@ msgstr "Errore nell'estrazione dei dati della chiave!"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Chiave PGP %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME cifra(e), firma(s), firma (c)ome, entram(b)i, (p)gp, annullare(c)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "escbpc"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, s/(m)ime, annullare(c)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "escbmc"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME cifra(e), firma(s), firma (c)ome, entram(b)i, (p)gp, annullare(c)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "escbpc"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, s/(m)ime, annullare(c)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "escbmc"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME cifra(e), firma(s), firma (c)ome, entram(b)i, (p)gp, annullare(c)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "escbpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, s/(m)ime, annullare(c)?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "escbmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Errore nella verifica del mittente"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Errore nel rilevamento del mittente"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Inserisci la passphrase di PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Errore: impossibile creare il sottoprocesso PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4513,16 +4593,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Messaggio PGP decifrato con successo"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4530,127 +4610,127 @@ msgstr ""
+ "[-- Errore: non è stato possibile creare un sottoprocesso PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Decifratura fallita"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Impossibile aprire il sottoprocesso PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Impossibile eseguire PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)n linea"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, formato %s, (a)nnullare?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "escba"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "escba"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, formato %s, (a)nnullare?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "escba"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "escba"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, formato %s, (a)nnullare?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "escba"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP: cifra(e), firma(s), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr ""
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Prendo la chiave PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Tutte le chiavi corrispondenti sono scadute, revocate o disattivate"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Chiavi PGP corrispondenti a <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Chiavi PGP corrispondenti a \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Impossibile aprire /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Chiave PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Inserisci la passphrase per S/MIME:"
+
+@@ -4659,7 +4739,7 @@ msgstr "Inserisci la passphrase per S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Scaduto "
+
+@@ -4668,7 +4748,7 @@ msgstr "Scaduto "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Non valido "
+
+@@ -4677,7 +4757,7 @@ msgstr "Non valido "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Revocato "
+
+@@ -4686,7 +4766,7 @@ msgstr "Revocato "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Fidato "
+
+@@ -4695,7 +4775,7 @@ msgstr "Fidato "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Non verificato"
+
+@@ -4704,7 +4784,7 @@ msgstr "Non verificato"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Verificato "
+
+@@ -4713,60 +4793,60 @@ msgstr "Verificato "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Sconosciuto "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Certificati S/MIME corrispondenti a \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "L'ID non è valido. Vuoi veramente usare questa chiave?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Inserire il keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Non è stato trovato un certificato (valido) per %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Errore: impossibile creare il sottoprocesso di OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Impossibile ottenere il certificato dal peer"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "manca il file del certificato"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "manca la mailbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Nessun output da OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Impossibile firmare: nessuna chiave specificata. Usare Firma come."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Impossibile aprire il sottoprocesso di OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4774,19 +4854,19 @@ msgstr ""
+ "[-- Fine dell'output di OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Errore: impossibile creare il sottoprocesso di OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- I seguenti dati sono cifrati con S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- I seguenti dati sono firmati con S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4794,7 +4874,7 @@ msgstr ""
+ "\n"
+ "[-- Fine dei dati cifrati con S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4803,168 +4883,168 @@ msgstr ""
+ "[-- Fine dei dati firmati com S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME cifra(e), firma(s), cifra come(w), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eswcba"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME cifra(e), firma(s), cifra come(w), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswcba"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME cifra(e), firma(s), cifra come(w), firma (c)ome, entram(b)i, (a)nnullare?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswcba"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Scegliere la famiglia dell'algoritmo: (1) DES, (2) RC2, (3) AES o annullare(c)?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s non è un percorso POP valido"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Il server ha chiuso la connessione"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "Il server SMTP non supporta l'autenticazione"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Non ci sono autenticatori disponibili."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Autenticazione SASL fallita"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Connessione a %s chiusa."
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Prendo la lista dei messaggi..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Verifica nuovi messaggi..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "impossibile scrivere il folder temporaneo: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Connessione a %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Niente da fare"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Impossibile eseguire lo stat di %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Cancellazione dei messaggi dal server..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Faccio il login..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Verifica nuovi messaggi..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s non è un percorso POP valido"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4976,7 +5056,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Impossibile analizzare il collegamento mailto:\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6123,187 +6203,187 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "mostra le opzioni S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Non disponibile in questo menù"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PgPrec"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "PgSucc"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Vedi Allegato"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Succ"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Il messaggio finisce qui"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "L'inizio del messaggio è questo"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "L'help è questo"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Non c'è altro testo citato"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Non c'è altro testo non citato dopo quello citato"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Errore nell'espressione: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Espressione vuota"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Il comando della ricerca non è definito"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Richiamo il comando di autovisualizzazione: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Giorno del mese non valido: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mese non valido: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Data relativa non valida: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Non ci sono messaggi non letti"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Errore durante l'apertura della mailbox"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Errore durante l'apertura della mailbox"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Impossibile aprire /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "errore nel modello in: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "modello mancante: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "parentesi fuori posto: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: modello per il modificatore non valido"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: non gestito in questa modalità"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "parametro mancante"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "modello vuoto"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "errore: unknown op %d (segnala questo errore)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compilo il modello da cercare..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Eseguo il comando sui messaggi corrispondenti..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Nessun messaggio corrisponde al criterio"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Ricerca..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "La ricerca è arrivata in fondo senza trovare una corrispondenza"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "La ricerca è arrivata all'inizio senza trovare una corrispondenza"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Ricerca interrotta"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Il comando TOP non è gestito dal server"
+
+@@ -6311,7 +6391,7 @@ msgstr "Il comando TOP non è gestito dal server"
+ msgid "Can't write header to temporary file"
+ msgstr "Impossibile scrivere l'header nel file temporaneo"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Il comando UIDL non è gestito dal server"
+
+@@ -6326,7 +6406,7 @@ msgstr[1] "%d messaggi sono andati persi. Tentativo di riaprire la mailbox."
+ msgid "POP host is not defined"
+ msgstr "L'host POP non è stato definito"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s non è un percorso POP valido"
+@@ -6359,153 +6439,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d messaggi letti su %d]"
+ msgstr[1] "%s [%d messaggi letti su %d]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Prendo la lista dei messaggi..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Segno i messaggi come cancellati..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Impossibile scrivere il messaggio nel file temporaneo"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autenticazione in corso (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "Marca temporale POP non valida"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autenticazione in corso (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Autenticazione APOP fallita"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Il comando USER non è gestito dal server"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Autenticazione SASL fallita"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "URL del server POP non valido: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Impossibile lasciare i messaggi sul server"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Errore nella connessione al server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Chiusura della connessione al server POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verifica degli indici dei messaggi..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Connessione persa. Riconnettersi al server POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Messaggi rimandati"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Non ci sono messaggi rimandati"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Header S/MIME non consentito"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Header crittografico non consentito"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Decifratura messaggio..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nuova ricerca"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Crea un alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "In attesa di risposta..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Cerca: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Ricerca '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Il comando della ricerca non è definito"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipe"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Stampa"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Salvataggio..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Allegato salvato"
+ msgstr[1] "Allegato salvato"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ATTENZIONE! %s sta per essere sovrascritto, continuare?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Allegato filtrato"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtra attraverso: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Manda con una pipe a: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Non so come stampare %s allegati"
+@@ -6513,57 +6593,57 @@ msgstr "Non so come stampare %s allegati"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Stampare gli allegati segnati?"
+ msgstr[1] "Stampare gli allegati segnati?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Stampare l'allegato?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Impossibile decifrare il messaggio cifrato"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Allegati"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Non ci sono sottoparti da visualizzare"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Impossibile cancellare l'allegato dal server POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Impossibile cancellare l'allegato dal server POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "La cancellazione di allegati da messaggi cifrati non è gestita"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "La cancellazione di allegati da messaggi cifrati non è gestita"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "È gestita solo la cancellazione degli allegati multiparte"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Puoi rimbalzare solo parti message/rfc822"
+
+@@ -6600,7 +6680,7 @@ msgstr "Impossibile creare %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Non ci sono messaggi segnati"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Non è stata trovata alcuna mailing list"
+
+@@ -6615,67 +6695,67 @@ msgstr "Impossibile decodificare tutti gli allegati segnati. Uso MIME per gli al
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Puoi rimbalzare solo parti message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Accoda"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Inserisce"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Non trovo type2.list di mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Seleziona una catena di remailer"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Errore: %s non può essere usato come remailer finale di una catena"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Le catene mixmaster sono limitate a %d elementi"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "La catena di remailer è già vuota"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Hai già selezionato il primo elemento della catena"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Hai già selezionato l'ultimo elemento della catena"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster non accetta header Cc o Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Impostare la variabile hostname ad un valore corretto quando si usa mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Errore nell'invio del messaggio, il figlio è uscito con %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Errore durante l'invio del messaggio"
+
+@@ -6706,43 +6786,43 @@ msgstr "Inoltro come allegati?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Rispondere a %s%s?"
+
+ # FIXME - come tradurre questo messaggio?
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Inviare un Follow-up a %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Includo il messaggio nella risposta?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Includo il messaggio citato..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Non ho potuto includere tutti i messaggi richiesti"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Inoltro come allegato?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Preparo il messaggio inoltrato..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: non gestito in questa modalità"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Salvare l'allegato in Fcc?"
+
+@@ -6750,196 +6830,196 @@ msgstr "Salvare l'allegato in Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Nessuna mailbox.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Richiamare il messaggio rimandato?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Modificare il messaggio da inoltrare?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Abbandonare il messaggio non modificato?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Ho abbandonato il messaggio non modificato"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Il messaggio non è stato inviato"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Il messaggio è stato rimandato"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Nessun oggetto, abbandonare l'invio?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Non è stato specificato un oggetto"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Non è stato specificato un oggetto"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "modifica il transfer-encoding dell'allegato"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Invio il messaggio..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Impossibile spedire il messaggio"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Invio in background"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Messaggio spedito"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nessun parametro limite trovato [segnalare questo errore]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s non esiste più"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s non è un file regolare"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Impossibile spedire il messaggio."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Impossibile aprire %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Errore nell'invio del messaggio, il figlio è uscito con %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Output del processo di consegna"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Trovato l'IDN %s non valido preparando l'header resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Sessione SMTP fallita: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Sessione SMTP fallita: impossibile aprire %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "URL del server SMTP non valido: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "autenticazione %s fallita, tentativo col metodo successivo"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Autenticazione GSSAPI fallita"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "Il server SMTP non supporta l'autenticazione"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Nessun indirizzo \"from\" fornito"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Sessione SMTP fallita: errore di lettura"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Sessione SMTP fallita: errore di scrittura"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Risposta del server non valida"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Ordinamento della mailbox..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Impossibile trovare la funzione di ordinamento [segnala questo bug]"
+
+@@ -6994,11 +7074,11 @@ msgstr ""
+ "NeoMutt è software libero e sei invitato a ridistribuirlo\n"
+ "sotto certe condizioni; scrivere 'neomutt -vv' per i dettagli.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opzioni di compilazione:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opzioni di compilazione:"
+diff --git a/po/ja.po b/po/ja.po
+index ddf7ddb8f..01fcd2f97 100644
+--- a/po/ja.po
++++ b/po/ja.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2018-05-31 13:50+0000\n"
+ "Last-Translator: TAKAHASHI Tamotsu <ttakah@lapis.plala.or.jp>\n"
+ "Language-Team: neomutt-j <neomutt-j-users@lists.osdn.me>\n"
+@@ -20,16 +20,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=1; plural=0;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "r:拒否, o:今回のみ承認, a:常に承認, s:無視"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "r:拒否, o:今回のみ承認, a:常に承認"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "r:拒否, o:今回のみ承認, s:無視"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "r:拒否, o:今回のみ承認"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "戻る"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "削除"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "削除を取り消し"
+
+@@ -37,18 +61,18 @@ msgstr "削除を取り消し"
+ msgid "Select"
+ msgstr "選択"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "ヘルプ"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "別名がない"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "別名"
+
+@@ -57,52 +81,52 @@ msgstr "別名"
+ msgid "Alias as: "
+ msgstr "別名入力: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "すでにこの名前の別名がある"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "警告: この別名は正常に動作しないかもしれない。修正?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "アドレス: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "不正な IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "個人名: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] 了解?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "保存するファイル: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "別名ファイルの読み出しエラー"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "別名ファイルの読み出しエラー"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "別名を追加した。"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "別名ファイルの末端検出エラー"
+
+@@ -111,7 +135,7 @@ msgstr "別名ファイルの末端検出エラー"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s が存在しない。作成?"
+@@ -120,8 +144,8 @@ msgstr "%s が存在しない。作成?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "%s が %s のために作成できない。"
+@@ -131,7 +155,7 @@ msgstr "%s が %s のために作成できない。"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "新規 autocrypt アカウントを作成?"
+
+@@ -140,7 +164,7 @@ msgstr "新規 autocrypt アカウントを作成?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "autocrypt アカウントのアドレス: "
+
+@@ -149,7 +173,7 @@ msgstr "autocrypt アカウントのアドレス: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "メールアドレスをひとつだけ入力せよ"
+
+@@ -158,7 +182,7 @@ msgstr "メールアドレスをひとつだけ入力せよ"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "そのアドレスには既に autocrypt アカウントがある"
+
+@@ -170,14 +194,14 @@ msgstr "そのアドレスには既に autocrypt アカウントがある"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "可能な限り暗号化 (prefer-encrypt)?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "autocrypt アカウント作成は成功した"
+
+@@ -185,7 +209,7 @@ msgstr "autocrypt アカウント作成は成功した"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "autocrypt アカウント作成は中止された。"
+
+@@ -194,7 +218,7 @@ msgstr "autocrypt アカウント作成は中止された。"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "%s の (正しい) autocrypt 鍵が見つからない。"
+@@ -206,12 +230,12 @@ msgstr "%s の (正しい) autocrypt 鍵が見つからない。"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Autocrypt ヘッダをスキャンしたいメールボックスがある?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "スキャンするメールボックス"
+
+@@ -222,21 +246,21 @@ msgstr "スキャンするメールボックス"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Autocrypt ヘッダをスキャンするメールボックスがまだある?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "作成"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "削除"
+
+@@ -244,9 +268,9 @@ msgstr "削除"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "有効切替"
+
+@@ -254,17 +278,17 @@ msgstr "有効切替"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "暗号優先"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "可能な限り暗号化"
+
+@@ -273,7 +297,7 @@ msgstr "可能な限り暗号化"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "手動でのみ暗号化"
+
+@@ -281,7 +305,7 @@ msgstr "手動でのみ暗号化"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "有効"
+
+@@ -289,12 +313,12 @@ msgstr "有効"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "無効"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt アカウント"
+
+@@ -302,12 +326,12 @@ msgstr "Autocrypt アカウント"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "アカウントデータの更新エラー"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "本当にアカウント \"%s\" を削除?"
+@@ -325,7 +349,7 @@ msgstr "本当にアカウント \"%s\" を削除?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "autocrypt データベースがオープンできない (%s)"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "gpgme コンテクスト作成エラー: %s"
+@@ -398,490 +422,603 @@ msgstr "autocrypt データベースバージョンが新しすぎる"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s はディレクトリではない。"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "ディレクトリ変更"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "マスク"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "リスト"
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "%s を購読を開始した"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "%s の購読を取り消した"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s はディレクトリではない。"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "%s を購読を開始した"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "メールボックス [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "購読 [%s], ファイルマスク: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "ディレクトリ [%s], ファイルマスク: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "ディレクトリは添付できない"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "ファイルマスクに一致するファイルがない"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "作成機能は IMAP メールボックスのみのサポート"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "リネーム (移動) 機能は IMAP メールボックスのみのサポート"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "削除機能は IMAP メールボックスのみのサポート"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "選択中のファイル名を表示"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "本当にメールボックス \"%s\" を削除?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "メールボックスは削除された。"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "メールボックス削除が失敗した。"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "メールボックスは削除されなかった。"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "ディレクトリ変更先: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "ディレクトリのスキャンエラー。"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "ファイルマスク: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "逆順の整列 (d)日付, (a)ABC順, (z)サイズ, (n)整列しない"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "整列 (d)日付, (a)ABC順, (z)サイズ, (n)整列しない"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "新規ファイル名: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "ディレクトリは閲覧できない"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "ファイル閲覧エラー"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "%s を購読を開始した"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "%s の購読を取り消した"
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "マスクに一致するニュースグループがない"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "色 %s はこの端末ではサポートされていない"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s という色はない"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s というオブジェクトはない"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: 引数が少なすぎる"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s という属性はない"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: 引数が多すぎる"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "既定値の色がサポートされていない"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "エラー: score: 不正な数値"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "署名を検証?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "一時ファイルを作成できなかった"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "表示用フィルタを作成できない"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "メッセージをコピーできなかった"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME 署名の検証に成功した。"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME 証明書所有者が送信者に一致しない。"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "警告: メッセージの一部は署名されていない。"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME 署名は検証できなかった。"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP 署名の検証に成功した。"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP 署名は検証できなかった。"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "\"%s\" 実行エラー"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "コマンド: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "警告: メッセージに From: ヘッダがない"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "メッセージの再送先: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "タグ付きメッセージの再送先: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "アドレス解析エラー"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "%s へメッセージ再送"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "メッセージは再送されなかった。"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "メッセージを再送した。"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "フィルタプロセスを作成できない"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "コマンドへのパイプ: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "印刷コマンドが未定義。"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "メッセージを印刷?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "タグ付きメッセージを印刷?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "メッセージは印刷された"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "メッセージは印刷できなかった"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "逆順 (d)時 (f)送者 (r)着順 (s)題 (o)宛 (t)スレ (u)無 (z)長 (c)得点 (p)スパム (l)ラベル"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "整列 (d)時 (f)送者 (r)着順 (s)題 (o)宛 (t)スレ (u)無 (z)長 (c)得点 (p)スパム (l)ラベル"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "シェルコマンド: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "メールボックスにデコードして保存"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスにデコードして保存"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "メールボックスに復号化して保存"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスに復号化して保存"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "メールボックスに保存"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスに保存"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "メールボックスにデコードしてコピー"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスにデコードしてコピー"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "メールボックスに復号化してコピー"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスに復号化してコピー"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "メールボックスにコピー"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "タグ付きメッセージをメールボックスにコピー"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "%s にコピー中..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Typeを %s に変更した。"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "送信時に %s に変換?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Typeを %s に変更した。"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "文字セットを %s に変更した; 変換なし。"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "文字セットを %s に変更した; 変換あり。"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: 引数が少なすぎる"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: グループ名がない"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "引数が少なすぎる"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "エラー: このパスはビルドできない. '%s'"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "エラー: 設定ファイルが巡回している'%s'"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "%s 中の %d 行目でエラー: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "%s 中の %d 行目でエラー: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: %s 中でエラー"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: %s 中にエラーが多すぎるので読み出し中止"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %s 中でエラー"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias (別名): アドレスがない"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "警告: 不正な IDN '%s' がエイリアス '%s' 中にある。"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: 引数 disposition の指定がない"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "添付ファイルの内容説明文を編集"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: 引数 disposition が不正"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: 引数が多すぎる"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: -rx か -addr が必要。"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: 警告: 不正な IDN '%s'。"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "エラー: '%s'"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "不正なへッダフィールド"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s は不明な変数"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s は未設定"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: %s でエラー"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "メッセージは印刷できなかった"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: 一致するパターンがない"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: 一致するパターンがない"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "%s を購読を開始した"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "%s を購読を開始した"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "題名が指定されていない。"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: 引数 disposition の指定がない"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: 引数 disposition が不正"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s の購読を取り消した"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "%s の購読を取り消した"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "添付ファイルがない。"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "暗号と署名: "
+
+@@ -892,78 +1029,78 @@ msgstr "暗号と署名: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "署名に使う鍵: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "ニュースグループ: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "%s%s へのフォローアップ?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "Reply-To フィールドを編集"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "送信"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "中止"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "宛先"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "件名"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "ファイル添付"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "内容説明"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "題名が指定されていない。"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+-msgstr ""
++msgstr "機能オフ"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "暗号化不可"
+
+@@ -971,7 +1108,7 @@ msgstr "暗号化不可"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "暗号化非推奨"
+
+@@ -979,14 +1116,14 @@ msgstr "暗号化非推奨"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "選択可能"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "暗号化する"
+
+@@ -996,7 +1133,7 @@ msgstr "暗号化する"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: e:暗号化, c:なし, a:自動選択 "
+
+@@ -1004,51 +1141,51 @@ msgstr "Autocrypt: e:暗号化, c:なし, a:自動選択 "
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "サポートされていない"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "署名 + 暗号化"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "暗号化"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "署名"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "なし"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (インライン PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (日和見暗号)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<既定値>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr " 暗号化方式: "
+
+@@ -1057,11 +1194,11 @@ msgstr " 暗号化方式: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "暗号推奨: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1072,7 +1209,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "添付ファイル #%d はもはや存在しない: %s"
+@@ -1084,239 +1221,359 @@ msgstr "添付ファイル #%d はもはや存在しない: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "添付ファイル #%d は変更された。エンコード更新? (%s)"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- 添付ファイル"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "唯一の添付ファイルを削除してはいけない。"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "'%s' 中に不正な IDN: '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "添付ファイルを保存した。"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "現在の添付ファイルは変換されない。"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "添付ファイルはコマンドを通してある。"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "メッセージ送信エラー。"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "選択されたファイルを添付中..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s は添付できない"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "中のメッセージを添付するためにメールボックスをオープン"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "中のメッセージを添付するためにニュースグループをオープン"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "メールボックス %s がオープンできない"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "そのフォルダにはメッセージがない。"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "添付したいメッセージにタグを付けよ"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "添付できない"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "コード変換はテキスト型添付ファイルにのみ有効。"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "現在の添付ファイルは変換されない。"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "現在の添付ファイルは変換される。"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "不正なエンコード法。"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "このメッセージのコピーを保存?"
+
+ # OP_COMPOSE_RENAME_ATTACHMENT つまり名前を変えるとき
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "添付ファイルを別の名前で送る: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "リネーム (移動) 先: "
+
+ # system call の stat() を「属性調査」と訳している
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "%s を属性調査できない: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "新規ファイル: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type は base/sub という形式にすること"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "%s は不明な Content-Type"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "ファイル %s を作成できない"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "つまり添付ファイルの作成に失敗したということだ"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "書きかけのメッセージを呼び出す?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "メッセージをメールボックスに書き込む"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "メッセージを %s に書き込み中..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "メッセージは書き込まれた。"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "PGP バックエンドが設定されていない"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME が既に選択されている。解除して継続?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "S/MIME バックエンドが設定されていない"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP が既に選択されている。解除して継続?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "append-hook か close-hook がないと追加できない : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "メールボックスロック不能"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "%s を展開中"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "圧縮ファイルの内容を識別できない"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "メールボックス形式 %d に合う関数が見つからない"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "圧縮コマンドが失敗した: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "追加を未サポートのメールボックス形式。"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "close-hook がないと圧縮ファイルを同期できない"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "%s を圧縮中"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "%s に圧縮追加中..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "エラー。一時ファイル %s は保管"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "%s は不正な相対月日"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "%s は不正な相対月日"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "エラー: score: 不正な数値"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "変数 %s には不正な値: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "%s は不正な月"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "オプション %s はセットできない, もしくはpagerによりリセットされた"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "オプション %s はセットできない, もしくはpagerによりリセットされた"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "エラー: score: 不正な数値"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "エラー: score: 不正な数値"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "%s は不正な相対月日"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "変数 %s には不正な値: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "エラー: 値 '%s' は -d には不正。"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s は不明な変数"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "%s は不正な相対月日"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "%s は不正な相対月日"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "%s のユーザ名: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s のパスワード: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "問い合わせコマンドは定義されていない。"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "refreshコマンドが実行できない"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "コマンドの戻り値が空文字列(empty string)"
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1337,7 +1594,7 @@ msgstr "%s に接続中..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "%s に接続できなかった (%s)。"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "不明なエラー"
+
+@@ -1351,23 +1608,23 @@ msgstr "%s への交信エラー (%s)。"
+ msgid "Connection to %s has been aborted"
+ msgstr "%s への接続を終了した"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "不明な SASL プロファイル"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "SASL 接続の割り当てエラー"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "SASL セキュリティ情報の設定エラー"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "SASL 外部セキュリティ強度の設定エラー"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "SASL 外部ユーザ名の設定エラー"
+
+@@ -1380,133 +1637,109 @@ msgstr "事前接続コマンドが失敗。"
+ msgid "Connection to %s closed"
+ msgstr "%s への接続を終了した"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "乱雑さプールを充填中: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s に脆弱なパーミッションがある"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "乱雑さ不足のため SSL は無効になった"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "不明"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[計算不能]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[不正な日付]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "サーバの証明書はまだ有効でない"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "サーバの証明書が期限切れ"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "実行中のシステムには十分な乱雑さを見つけられなかった"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "証明書の subject を得られない"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "証明書の common name を得られない"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "証明書所有者がホスト名に一致しない: %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "この証明書の所属先:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "この証明書の発行元:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "この証明書の有効期間は"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " %s から"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " %s まで"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "SHA1 フィンガープリント: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "SHA1 フィンガープリント: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr "SSL 証明書検査 (連鎖内 %2$zu のうち %1$zu 個目)"
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "roas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "r:拒否, o:今回のみ承認, a:常に承認, s:無視"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "r:拒否, o:今回のみ承認, a:常に承認"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "SHA1 フィンガープリント: %s"
+
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "r:拒否, o:今回のみ承認, s:無視"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++#, fuzzy
++msgid "SHA256 Fingerprint: "
++msgstr "SHA1 フィンガープリント: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "r:拒否, o:今回のみ承認"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr "SSL 証明書検査 (連鎖内 %2$zu のうち %1$zu 個目)"
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "終了 "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "警告: 証明書を保存できなかった"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "証明書を保存した"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "証明書ホスト検査に不合格: %s"
+@@ -1514,15 +1747,15 @@ msgstr "証明書ホスト検査に不合格: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "警告: TLS SNI のホスト名が設定不能"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O エラー"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL は %s で失敗。"
+@@ -1530,89 +1763,73 @@ msgstr "SSL は %s で失敗。"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "SSL コンテクスト作成不能"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "警告: ssl_verify_partial_chains エラー"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "接続先から証明書を得られなかった"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "証明書の検証エラー (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "証明書が X.509 でない"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "gnutls 証明書データ初期化エラー"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "証明書データ処理エラー"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "警告: サーバの証明書はまだ有効でない"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "警告: サーバの証明書が期限切れ"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "警告: サーバの証明書が廃棄済み"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "警告: サーバのホスト名が証明書と一致しない"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "警告: サーバの証明書は署名者が CA でない"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "警告: 安全でないアルゴリズムで署名されたサーバ証明書"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "TLS/SSL 接続に利用可能なプロトコルがすべて無効"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "$ssl_ciphers による明示的な暗号スイート選択はサポートされていない"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "%s を使った SSL/TLS 接続 (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "エラー: TLS ソケットが開いていない"
+
+@@ -1631,37 +1848,17 @@ msgstr "%s へのトンネル交信エラー: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "%s へのトンネルがエラー %d (%s) を返した"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "利用できる復号化エンジンがない"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "yes"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt を抜ける?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "続けるには何かキーを..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr "('?' で一覧): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1683,7 +1880,7 @@ msgstr ""
+ "~M messages ヘッダを含めることを除けば ~m と同じ\n"
+ "~p メッセージを印刷\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1705,20 +1902,20 @@ msgstr ""
+ "~? このメッセージ\n"
+ ". この文字のみの行で入力を終了\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d は不正なメッセージ番号。\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(メッセージの終了は . のみの行を入力)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "メールボックスの指定がない。\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "メッセージ内容:\n"
+
+@@ -1727,19 +1924,19 @@ msgstr "メッセージ内容:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(継続せよ)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "ファイル名の指定がない。\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "メッセージに内容が一行もない。\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s は不明なエディタコマンド (~? でヘルプ)\n"
+@@ -1787,19 +1984,73 @@ msgstr "フォルダに追加できない: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "マルチパートのメッセージだが boundary パラメータがない"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "スレッド表示が有効になっていない。"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "フラグ設定"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "フラグ解除"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "色 %s はこの端末ではサポートされていない"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s という色はない"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s というオブジェクトはない"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s という属性はない"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "既定値の色がサポートされていない"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "エラー: score: 不正な数値"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "yes"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt を抜ける?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "続けるには何かキーを..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr "('?' で一覧): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1820,24 +2071,24 @@ msgstr "[-- %s を使った自動表示 --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "自動表示コマンド %s 起動"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "フィルタを作成できない"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- %s を実行できない。 --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- %s の標準エラー出力を自動表示 --]\n"
+
+ # 「指定」って必要?はみでそうなんですけど
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- エラー: message/external-body に access-type パラメータの指定がない --]\n"
+
+@@ -1856,7 +2107,7 @@ msgstr "[-- エラー: message/external-body に access-type パラメータの
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1882,7 +2133,7 @@ msgstr[0] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1895,7 +2146,7 @@ msgstr[0] "[-- この %s/%s 形式添付ファイル(%s バイト)は削除済
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1907,12 +2158,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- この %s/%s 形式添付ファイルは削除済み --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- 名前: %s --]\n"
+@@ -1921,7 +2172,7 @@ msgstr "[-- 名前: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1938,7 +2189,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1947,94 +2198,94 @@ msgstr ""
+ "[-- この %s/%s 形式添付ファイルは含まれておらず、 --]\n"
+ "[-- かつ、指定された access-type %s は未サポート --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- エラー: どの Multipart/Alternative パートも表示できなかった --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- 添付ファイル #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- 添付ファイル #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "メッセージの一部は表示できなかった"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "一時ファイルをオープンできない"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "一時ファイルをオープンできない"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "'memory stream' をリオープンするのに失敗"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "エラー: multipart/signed にプロトコルがない。"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- 添付ファイル (このパートを表示するには '%s' を使用) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s 形式は未サポート (このパートを表示するには '%s' を使用) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- 添付ファイル (キーに 'view-attachments' を割り当てる必要がある) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s 形式は未サポート (キーに 'view-attachments' を割り当てる必要がある) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- 添付ファイル --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s 形式は未サポート --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "エラー: このバグをレポートせよ"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<不明>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "一般的なキーバインド:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "未バインドの機能:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s のヘルプ"
+@@ -2052,41 +2303,41 @@ msgstr "メールボックス記号ショートカットが空の正規表現に
+ msgid "badly formatted command string"
+ msgstr "不適切なコマンド文字列"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: フック内からは unhook * できない"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: %s は不明なフックタイプ"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s を %s 内から削除できない。"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s というメニューはない"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s というメニューはない"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s というメニューはない"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "一時ファイル %s を作成できなかった"
+@@ -2124,28 +2375,28 @@ msgstr "GSSAPI 認証に失敗した。"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN はこのサーバでは無効になっている"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "ログイン中..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "ログインに失敗した。"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "認証中 (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER 認証に失敗した"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "認証中 (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL 認証に失敗した"
+
+@@ -2193,133 +2444,123 @@ msgstr "リネーム (移動) 失敗: %s"
+ msgid "Mailbox renamed"
+ msgstr "メールボックスがリネーム (移動) された。"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "メールボックスを閉じた"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "%s への接続がタイムアウトした"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "この IMAP サーバは古い。これでは NeoMutt はうまく機能しない。"
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "検索するヘッダ名の指定がない: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "サーバサイドカスタム検索はサポートされていない: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE 失敗: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "%s への接続を終了中..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "TLS を使った安全な接続?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "TLS 接続を確立できなかった"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "暗号化された接続が利用できない"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "%s の購読を開始中..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "%s の購読を取り消し中..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s を購読を開始した"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s の購読を取り消した"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "%d メッセージを %s にコピー中..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s を作成?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "削除に失敗した"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+ msgstr[0] "%d 個のメッセージに削除をマーク中..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "メッセージ変更を保存中... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "フラグ保存エラー。それでも閉じる?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "フラグ保存エラー"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "サーバからメッセージを削除中..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: 削除に失敗した"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s を選択中..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "メールボックスオープン時エラー"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP サーバがユーザ認証をサポートしていない"
+
+ # 不正より不信か?
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "不正 "
+@@ -2330,7 +2571,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "ダウンロードを中止してメールボックスを閉じるか?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "メモリ不足"
+
+@@ -2351,7 +2592,7 @@ msgstr "メッセージヘッダ取得中..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "このバージョンの IMAP サーバからはへッダを取得できない。"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "メッセージヘッダ取得中..."
+
+@@ -2364,157 +2605,157 @@ msgstr "メッセージをアップロード中..."
+ msgid "Copying message %d to %s..."
+ msgstr "メッセージ %d を %s にコピー中..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "メッセージ取得中..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "メッセージ索引が不正。メールボックスを再オープンしてみること。"
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "継続?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "中止"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "保存"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "メール"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "返信"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "全員に返信"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "投稿"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "%s%s へのフォローアップ?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "開いているメールボックスがない。"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "メッセージがない。"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "可視メッセージがない。"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "メールボックスは読み出し専用。"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "この機能はメッセージ添付モードでは許可されていない。"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: 操作が ACL で許可されていない"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "読み出し専用メールボックスでは変更の書き込みを切替できない"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "フォルダ脱出時にフォルダへの変更が書き込まれる。"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "フォルダへの変更は書き込まれない。"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s はメールボックスではない"
+
+ # 「不正な可能性あり」だと重大なことのように思えてしまうので変更した。
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "メールボックスが外部から変更された。フラグが正確でないかもしれない。"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "このメールボックスに新着メール。"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "メールボックスが外部から変更された。"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "タグ付きメッセージがない。"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "何もしない。"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "鍵ID入力: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "ルートメッセージはこの制限された表示範囲では不可視。"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "サーバからメッセージを削除中..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "記事 %s はこのサーバ上で見つからなかった"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Message-Idがないので操作を実行できない."
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "スレッドのメッセージをすべて削除"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "メッセージ番号を指定: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "引数はメッセージ番号でなければならない。"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "不正なメッセージ番号。"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "そのメッセージは可視ではない。"
+
+@@ -2527,38 +2768,38 @@ msgstr "そのメッセージは可視ではない。"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "メッセージを削除できない"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "メッセージを削除するためのパターン: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "現在有効な制限パターンはない。"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "制限パターン: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "メッセージの表示を制限するパターン: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "メッセージをすべて見るには制限を \"all\" にする。"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt を中止?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "メッセージにタグを付けるためのパターン: "
+
+@@ -2566,203 +2807,203 @@ msgstr "メッセージにタグを付けるためのパターン: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "メッセージの削除状態を解除できない"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "メッセージの削除を解除するためのパターン: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "メッセージのタグを外すためのパターン: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "IMAP サーバからログアウトした。"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "無題で中止する。"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "クエリの作成に失敗. 中止する."
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "スレッドの読み込みに失敗. 中止する."
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP サーバがユーザ認証をサポートしていない"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "無題で中止する。"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "タグを更新中..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "タグの変更に失敗した. 中止する."
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "無題で中止する。"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "notmuchのバーチャルフォルダを読み込んでいない"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "読み出し専用モードでメールボックスをオープン"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "メールボックスをオープン"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "新着メールのあるメールボックスはない"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "読み出し専用モードでニュースグループをオープン"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "ニュースグループを開く"
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "保存しないで NeoMutt を抜ける?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "スレッドをつなげられない"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "スレッドが外された"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "スレッドを外せない。メッセージがスレッドの一部ではない"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "スレッドをつなげられない"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Message-ID ヘッダが利用できないのでスレッドをつなげられない"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "その前に、ここへつなげたいメッセージにタグを付けておくこと"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "スレッドがつながった"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "スレッドはつながらなかった"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "すでに最後のメッセージ。"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "未削除メッセージがない。"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "すでに最初のメッセージ。"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "この制限された表示範囲には新着メッセージがない。"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "新着メッセージがない。"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "この制限された表示範囲には未読メッセージがない。"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "未読メッセージがない。"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "検索は一番上に戻った。"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "検索は一番下に戻った。"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "メッセージにフラグを設定できない"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "新着フラグを切替できない"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "もうスレッドがない。"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "すでに最初のスレッド。"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "スレッド中に未読メッセージがある。"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "メッセージを削除できない"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "メッセージを編集できない"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2771,7 +3012,7 @@ msgstr[0] "%d 個のラベルが変更された。"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "ラベルは変更されなかった。"
+
+@@ -2779,7 +3020,7 @@ msgstr "ラベルは変更されなかった。"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "メッセージを既読にマークできない"
+@@ -2788,269 +3029,133 @@ msgstr "メッセージを既読にマークできない"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "マクロ名を入力: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "(mark-message キー)"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "メッセージは %s に割り当てられた。"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "マクロ化するための Message-ID がない。"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "このニュースグループはモデレートであり、投稿は許可されていない。続ける?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "メッセージの削除状態を解除できない"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "コマンドラインでエラー: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "コマンドラインでエラー: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "uname() でノード名を識別できない"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: グループ名がない"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "引数が少なすぎる"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "エラー: このパスはビルドできない. '%s'"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "エラー: 設定ファイルが巡回している'%s'"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "%s 中の %d 行目でエラー: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "%s 中の %d 行目でエラー: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: %s 中でエラー"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: %s 中にエラーが多すぎるので読み出し中止"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %s 中でエラー"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias (別名): アドレスがない"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "警告: 不正な IDN '%s' がエイリアス '%s' 中にある。"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: 引数 disposition の指定がない"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "添付ファイルの内容説明文を編集"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: 引数 disposition が不正"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: -rx か -addr が必要。"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: 警告: 不正な IDN '%s'。"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "エラー: '%s'"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "不正なへッダフィールド"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s は不明な変数"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s は未設定"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: %s でエラー"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "メッセージは印刷できなかった"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: 一致するパターンがない"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: 一致するパターンがない"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "%s を購読を開始した"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "題名が指定されていない。"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: 引数 disposition の指定がない"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: 引数 disposition が不正"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "%s の購読を取り消した"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: 不明なコマンド"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "'charset'はただ1つの文字セットでなければならない"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "変数 %s には不正な値: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "オプション %s はセットできない, もしくはpagerによりリセットされた"
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "この機能はメッセージ添付モードでは許可されていない。"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "マクロのループが検出された。"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "キーはバインドされていない。"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "キーはバインドされていない。'%s' を押すとヘルプ"
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: キーシーケンスがない"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "関数 '%s' は メニュー '%s' で利用できない"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: キーシーケンスがない"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: 引数がない"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s という機能はない"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "キーを押すと開始 (終了は ^G): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "文字 = %s, 8進 = %o, 10進 = %d"
+@@ -3074,7 +3179,7 @@ msgstr "%s 形式用の mailcap エントリが見つからなかった"
+ msgid "Scanning %s..."
+ msgstr "%s をスキャン中..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s 読み出し中..."
+@@ -3089,13 +3194,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): ファイルに時刻を設定できない"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s 書き込み中..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3118,7 +3223,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3161,54 +3266,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "端末初期化エラー"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "ユーザ名を識別できない"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ホームディレクトリを識別できない"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "エラー: 値 '%s' は -d には不正。"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "\"mailto:\" リンクの解析に失敗"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "受信者が指定されていない。"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "標準入力には -E フラグを使用できない"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "メッセージファイルをオープンできない: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: ファイルを添付できない"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "新着メールのあるメールボックスはない。"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "到着用メールボックスが未定義。"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "メールボックスが空。"
+
+@@ -3250,52 +3355,52 @@ msgstr "メールボックスを再オープンできなかった"
+ msgid "Can't write message"
+ msgstr "メッセージを書き込めない"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "移動先インデックス番号を指定: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "不正なインデックス番号。"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "エントリがない。"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "これより下にはスクロールできない。"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "これより上にはスクロールできない。"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "すでに最初のページ。"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "すでに最後のページ。"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "すでに最後のエントリ。"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "すでに最初のエントリ。"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "検索パターン: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "逆順検索パターン: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "見つからなかった。"
+
+@@ -3338,20 +3443,20 @@ msgstr "flock ロック待ち... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "不正な履歴ファイル形式 (%d 行目)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "一時ファイルを作成できない"
+
+@@ -3370,7 +3475,7 @@ msgstr "レベル %d でデバッグ中。\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "レベル %d でデバッグ中。\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "サーバ %s への接続エラー。"
+@@ -3395,17 +3500,17 @@ msgstr "シグナル %d (%s) を受け取った。終了。\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "シグナル %d を受け取った。終了。\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3414,149 +3519,121 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "そこはディレクトリ。その中に保存? (y)する, (n)しない, (a)すべて保存)"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ # 参考: "Save to file: " => "保存するファイル: " (alias.c, recvattach.c)
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "そこはディレクトリ。その中に保存?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "ディレクトリ配下のファイル: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "ファイルが存在する。(o)上書き, (a)追加, (c)中止"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "POP メールボックスにはメッセージを保存できない"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "%s にメッセージを追加?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "サーバにメッセージを残せない。"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "%s のユーザ名: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s のパスワード: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "問い合わせコマンドは定義されていない。"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "refreshコマンドが実行できない"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "コマンドの戻り値が空文字列(empty string)"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "名前のテンプレートに一致させられない。続行?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap 編集エントリに %%s が必要"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "ヘッダ解析のためのファイルオープンに失敗。"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "ヘッダ削除のためのファイルオープンに失敗。"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "ファイルのリネーム (移動) に失敗。"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "%s のための mailcap 編集エントリがないので空ファイルを作成。"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap 編集エントリには %%s が必要"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "%s のための mailcap 編集エントリがない"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "mailcap に一致エントリがない。テキストとして表示中。"
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME 形式が定義されていない。添付ファイルを表示できない。"
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---コマンド: %-20.20s 内容説明: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---コマンド: %-30.30s 添付ファイル形式: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---添付ファイル: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---添付ファイル: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "書き込み失敗"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "どのように印刷するか不明"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "検索"
+
+@@ -3565,21 +3642,21 @@ msgstr "検索"
+ msgid "History '%s'"
+ msgstr "問い合わせ '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "変数 %s には不正な値: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "%s をロックできなかった\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "新着メールあり: "
+
+@@ -3600,20 +3677,20 @@ msgstr "ルートメッセージはこの制限された表示範囲では不可
+ msgid "Parent message is not visible in this limited view"
+ msgstr "親メッセージはこの制限された表示範囲では不可視。"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "検索が中断された。"
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "%s は添付できない"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3623,67 +3700,67 @@ msgstr[0] "メッセージは削除されなかった"
+ msgid "Can't open trash folder"
+ msgstr "ごみ箱をオープンできない"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "全ての記事を既読にするか?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "既読の %d メッセージを %s に移動?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "削除された %d メッセージを廃棄?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "%s に既読メッセージを移動中..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "メールボックスは変更されなかった"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d 保持、%d 移動、%d 廃棄"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d 保持、%d 廃棄"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " '%s' を押すと変更を書き込むかどうかを切替"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "'toggle-write' を使って書き込みを有効にせよ"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "メールボックスは書き込み不能にマークされた。%s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "メールボックスのチェックポイントを採取した。"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (現在時刻: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s 出力は以下の通り%s --]\n"
+@@ -3692,53 +3769,53 @@ msgstr "[-- %s 出力は以下の通り%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "パスフレーズがすべてメモリから消去された。"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "添付ファイルがあるとインライン PGP にできない。PGP/MIME を使う?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "メールは未送信: 添付ファイルがあるとインライン PGP にできない。"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "format=flowed にインライン PGP は使えない。PGP/MIME に戻す?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "メールは未送信: format=flowed にインライン PGP は使えない。"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP 起動中..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "メッセージをインラインで送信できない。PGP/MIME を使う?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "メールは未送信。"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "内容ヒントのない S/MIME メッセージは未サポート。"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP 鍵の展開を試行中...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME 証明書の展開を試行中..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3747,7 +3824,7 @@ msgstr ""
+ "[-- エラー: 不明な multipart/signed プロトコル %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3755,7 +3832,7 @@ msgstr ""
+ "[-- エラー: multipart/signed 署名が欠落または不正 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3764,7 +3841,7 @@ msgstr ""
+ "[-- 警告: この NeoMutt では %s/%s 署名を検証できない --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3772,7 +3849,7 @@ msgstr ""
+ "[-- 以下のデータは署名されている --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3780,7 +3857,7 @@ msgstr ""
+ "[-- 警告: 一つも署名を検出できなかった --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3799,229 +3876,229 @@ msgstr "S/MIME 起動中..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "名前: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "別名: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "発効期日: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "有効期限: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "鍵種別: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "鍵能力: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "フィンガープリント: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "シリアル番号: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "発行者: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "副鍵: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "CMS プロトコル起動エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "gpgme データオブジェクト作成エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "データオブジェクト割り当てエラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "データオブジェクト巻き戻しエラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "データオブジェクト読み出しエラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "受信者 %s の追加でエラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "秘密鍵 %s が見付からない: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "秘密鍵の指定があいまい: %s"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "秘密鍵 %s 設定中にエラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "PKA 署名の表記法設定エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "データ暗号化エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "データ署名エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as が未設定で、既定鍵が ~/.gnupg/gpg.conf に指定されていない"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "警告: 廃棄済みの鍵がある\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "警告: 署名を作成した鍵は期限切れ: 期限は "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "警告: 少なくとも一つの証明書で鍵が期限切れ\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "警告: 署名が期限切れ: 期限は "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "鍵や証明書の不足により、検証できない\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL が利用できない\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "利用できる CRL は古すぎる\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "ポリシーの条件が満たされなかった\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "システムエラーが発生"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "警告: PKA エントリが署名者アドレスと一致しない: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA で検証された署名者アドレス: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "警告: この鍵が上記の人物のものかどうかを示す証拠は一切ない\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "警告: この鍵は上記の人物のものではない!\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "警告: この鍵が確実に上記の人物のものだとは言えない\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "鍵ID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "作成日時: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "鍵ID %s の鍵情報の取得エラー: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "正しい署名:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "**不正な** 署名:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "問題のある署名:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " 期限: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- 署名情報開始 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "エラー: 検証に失敗した: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** 註釈開始 (%s の署名に関して) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** 註釈終了 ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4029,7 +4106,7 @@ msgstr ""
+ "[-- 署名情報終了 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4038,21 +4115,26 @@ msgstr ""
+ "[-- エラー: 復号化に失敗した: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "鍵の抽出エラー: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "エラー: 復号化/検証が失敗した: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP メッセージの復号化に成功した。"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "エラー: データのコピーに失敗した\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4060,11 +4142,11 @@ msgstr ""
+ "[-- PGP メッセージ開始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公開鍵ブロック開始 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4072,19 +4154,19 @@ msgstr ""
+ "[-- PGP 署名メッセージ開始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGPメッセージ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公開鍵ブロック終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP 署名メッセージ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4092,11 +4174,11 @@ msgstr ""
+ "[-- エラー: PGP メッセージの開始点を発見できなかった --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- エラー: 一時ファイルを作成できなかった --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4104,7 +4186,7 @@ msgstr ""
+ "[-- 以下のデータは PGP/MIME で署名および暗号化されている --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4112,24 +4194,20 @@ msgstr ""
+ "[-- 以下のデータは PGP/MIME で暗号化されている --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME 署名および暗号化データ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME 暗号化データ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP メッセージの復号化に成功した。"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "PGP メッセージを復号化できなかった"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4137,7 +4215,7 @@ msgstr ""
+ "[-- 以下のデータは S/MIME で署名されている --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4145,128 +4223,128 @@ msgstr ""
+ "[-- 以下のデータは S/MIME で暗号化されている --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME 署名データ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME 暗号化データ終了 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[このユーザ ID は表示できない (文字コードが不明)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[このユーザ ID は表示できない (文字コードが不正)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[このユーザ ID は表示できない (DN が不正)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[不正]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+ msgstr[0] "%s, %lu ビット %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "暗号化"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr " + "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "署名"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "証明"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[廃棄済み]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[期限切れ]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[使用不可]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "データ収集中..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "発行者鍵の取得エラー: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "エラー: 証明書の連鎖が長すぎる - ここでやめておく\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "鍵 ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start 失敗: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next 失敗: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "一致した鍵はすべて期限切れか廃棄済み。"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "選択 "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "鍵検査 "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "一致する PGP および S/MIME 鍵"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "一致する PGP 鍵"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "一致する S/MIME 鍵"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "一致する鍵"
+
+@@ -4275,59 +4353,59 @@ msgstr "一致する鍵"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "<%2$s> に%1$s。"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "「%2$s」に%1$s。"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "この鍵は期限切れか使用不可か廃棄済みのため、使えない。"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID は期限切れか使用不可か廃棄済み。 本当にこの鍵を使用?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID は信用されていない。 本当にこの鍵を使用?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID はかろうじて信用されている。 本当にこの鍵を使用?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID は信用度が未定義。 本当にこの鍵を使用?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "\"%s\" に一致する鍵を検索中..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "\"%s\" と一致する鍵が見つからない"
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "鍵 ID = \"%s\" を %s に使う?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "%s の鍵 ID 入力: "
+@@ -4336,15 +4414,15 @@ msgstr "%s の鍵 ID 入力: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "秘密鍵が見付からない"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "鍵 ID を入力: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "鍵の抽出エラー: %s"
+@@ -4353,93 +4431,93 @@ msgstr "鍵の抽出エラー: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP Key 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP プロトコルが利用できない"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS プロトコルが利用できない"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)署名, (a)署名鍵選択, (p)PGP, (c)なし, (o)日和見暗号オフ "
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)署名, (a)署名鍵選択, (m)S/MIME, (c)なし, (o)日和見暗号オフ "
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ # 80-columns 幅にギリギリおさまるか?
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (p)PGP, (c)なし, (o)日和見暗号 "
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "esabpco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (m)S/MIME, (c)なし, (o)日和見暗号 "
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (p)PGP, (c)なし "
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (m)S/MIME, (c)なし "
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "送信者の検証に失敗した"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "送信者の識別に失敗した"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "PGP パスフレーズ入力:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- エラー: PGP 子プロセスを作成できなかった --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4450,16 +4528,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP メッセージの復号化に成功した。"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "内部エラー。バグレポートを提出せよ。"
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4467,125 +4545,125 @@ msgstr ""
+ "[-- エラー: PGP 子プロセスを作成できなかった --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "復号化に失敗した。"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP 子プロセスをオープンできない"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP 起動できない"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "i:PGP/MIME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "i:インライン"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)署名, (a)署名鍵選択, %s形式, (c)なし, (o)日和見暗号オフ "
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)署名, (a)署名鍵選択, (c)なし, (o)日和見暗号オフ "
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, %s形式, (c)なし, (o)日和見暗号 "
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (c)なし, (o)日和見暗号 "
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, %s形式, (c)なし "
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)暗号化, (s)署名, (a)署名鍵選択, (b)暗号+署名, (c)なし "
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP 鍵を取得中..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "一致した鍵はすべて期限切れか廃棄済み、または使用禁止。"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP 鍵は <%s> に一致。"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP 鍵は \"%s\" に一致。"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "/dev/null をオープンできない"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP 鍵 %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "S/MIME パスフレーズ入力:"
+
+@@ -4594,7 +4672,7 @@ msgstr "S/MIME パスフレーズ入力:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "期限切れ "
+
+@@ -4604,7 +4682,7 @@ msgstr "期限切れ "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "不正 "
+
+@@ -4613,7 +4691,7 @@ msgstr "不正 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "廃棄済み "
+
+@@ -4622,7 +4700,7 @@ msgstr "廃棄済み "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "信用済み "
+
+@@ -4631,7 +4709,7 @@ msgstr "信用済み "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "未検証 "
+
+@@ -4640,7 +4718,7 @@ msgstr "未検証 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "検証済み "
+
+@@ -4649,59 +4727,59 @@ msgstr "検証済み "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "不明 "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME 証明書は \"%s\" に一致。"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID は信用されていない。 本当にこの鍵を使用?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "鍵ID入力: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "%s の (正しい) 証明書が見つからない。"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "エラー: OpenSSL 子プロセス作成不能"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "証明書のラベル: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "証明書ファイルがない"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "メールボックスがない"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL から出力がない..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "鍵が未指定のため署名不能: 「署名鍵選択」をせよ。"
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL 子プロセスオープン不能"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4709,19 +4787,19 @@ msgstr ""
+ "[-- OpenSSL 出力終了 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- エラー: OpenSSL 子プロセスを作成できなかった --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- 以下のデータは S/MIME で暗号化されている --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- 以下のデータは S/MIME で署名されている --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4729,7 +4807,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME 暗号化データ終了 --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4738,169 +4816,169 @@ msgstr ""
+ "[-- S/MIME 署名データ終了 --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)署名, (w)暗号選択, (a)署名鍵選択, (c)なし, (o)日和見暗号オフ "
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ # 80-column 幅に入りきらないのでスペースなし
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)暗号化,(s)署名,(w)暗号選択,(a)署名鍵選択,(b)暗号+署名,(c)なし,(o)日和見暗号 "
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)暗号化, (s)署名, (w)暗号選択, (a)署名鍵選択, (b)暗号+署名, (c)なし "
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "アルゴリズムを選択: (1) DES系, (2) RC2系, (3) AES系, c:なし?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) トリプルDES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ # ちょっとどうかと思うが互換性のため残す
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "グループの一覧をキャッシュから読み込み中..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "ニュースサーバが指定されていない"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s は不正な POP パス"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "サーバが接続を切った"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP サーバがユーザ認証をサポートしていない"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "利用できる認証処理がない"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL 認証に失敗した。"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "%s への接続を終了した"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "メッセージリストを取得中..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "新着メッセージ検出中..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "一時メールフォルダに書き込めなかった: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "%s に接続中..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "何もしない。"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+ # system call の stat() を「属性調査」と訳している
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "%s を属性調査できない: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "サーバからメッセージを削除中..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "ログイン中..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "新着メッセージ検出中..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "サーバがXPATコマンドに対応していないため、子記事を見つけることができない"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s は不正な POP パス"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4912,7 +4990,7 @@ msgstr "notmuch クエリをパースするのに失敗: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "\"mailto:\" リンクの解析に失敗\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6043,187 +6121,187 @@ msgstr "サイドバーを(不)可にする"
+ msgid "show S/MIME options"
+ msgstr "S/MIME オプションを表示"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "このメニューでは利用できない。"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "前頁"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "次頁"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "添付ファイル"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "次"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "メッセージの一番下が表示されている"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "メッセージの一番上が表示されている"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "現在ヘルプを表示中"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "これ以上の引用文はない。"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "引用文の後にはもう非引用文がない。"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "右記の式中にエラー: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "空の正規表現"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "問い合わせコマンドは定義されていない。"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "自動表示コマンド %s 起動"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "%s は不正な日付"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "%s は不正な月"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "%s は不正な相対月日"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "未読メッセージがない。"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "メールボックスオープン時エラー"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "メールボックスオープン時エラー"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "/dev/null をオープンできない"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "%s パターン中にエラー"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "パターンが不足: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "対応する括弧がない: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c は不正なパターン修飾子"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c はこのモードではサポートされていない"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "パラメータがない"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "パターンが空"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "エラー: サーバカスタム検索はIMAPのみで有効"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "エラー: 不明な op %d (このエラーを報告せよ)。"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "検索パターンをコンパイル中..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "メッセージパターン検索のためにコマンド実行中..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "パターンに一致するメッセージがなかった。"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "検索中..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "一番下まで、何も検索に一致しなかった。"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "一番上まで、何も検索に一致しなかった。"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "検索が中断された。"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "コマンド TOP をサーバがサポートしていない。"
+
+@@ -6231,7 +6309,7 @@ msgstr "コマンド TOP をサーバがサポートしていない。"
+ msgid "Can't write header to temporary file"
+ msgstr "ヘッダを一時ファイルに書き込めない"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "コマンド UIDL をサーバがサポートしていない。"
+
+@@ -6245,7 +6323,7 @@ msgstr[0] "%d 通が消えている。メールボックスを再オープンし
+ msgid "POP host is not defined"
+ msgstr "POP ホストが定義されていない。"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s は不正な POP パス"
+@@ -6276,152 +6354,152 @@ msgid "%s [%d of %d message read]"
+ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d / %d メッセージ読み出し]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "メッセージリストを取得中..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "メッセージに削除をマーク中..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "メッセージを一時ファイルに書き込めない"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "認証中 (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POPタイムスタンプが不正"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "認証中 (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP 認証に失敗した。"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "コマンド USER はサーバがサポートしていない。"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL 認証に失敗した"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "不正な POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "サーバにメッセージを残せない。"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "サーバ %s への接続エラー。"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "POP サーバへの接続終了中..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "メッセージ索引検証中..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "接続が切れた。POP サーバに再接続?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "書きかけのメッセージ"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "書きかけメッセージがない。"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "不正な S/MIME ヘッダ"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "不正なセキュリティヘッダ"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "メッセージ復号化中..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "新規問い合わせ"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "別名作成"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "応答待ち..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "問い合わせ: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "問い合わせ '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "問い合わせコマンドは定義されていない。"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "パイプ"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "印刷"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "保存中..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "添付ファイルを保存した。"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "警告! %s を上書きしようとしている。継続?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "添付ファイルはコマンドを通してある。"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "表示のために通過させるコマンド: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "パイプするコマンド: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "どのように添付ファイル %s を印刷するか不明"
+@@ -6429,55 +6507,55 @@ msgstr "どのように添付ファイル %s を印刷するか不明"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "タグ付き添付ファイルを印刷?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "添付ファイルを印刷?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "復号化されたメッセージの構造変更はサポートされていない"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "暗号化メッセージを復号化できない"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "添付ファイル"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "表示すべき副パートがない"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "POP サーバから添付ファイルを削除できない。"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "POP サーバから添付ファイルを削除できない。"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "暗号化メッセージからの添付ファイルの削除はサポートされていない。"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "署名メッセージからの添付ファイルの削除は署名を不正にすることがある。"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "マルチパート添付ファイルの削除のみサポートされている。"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "message/rfc822 パートのみ再送してもよい。"
+
+@@ -6513,7 +6591,7 @@ msgstr "%s を作成できない。"
+ msgid "Can't find any tagged messages"
+ msgstr "タグ付きメッセージが一つも見つからない。"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "メーリングリストが見つからなかった"
+
+@@ -6528,67 +6606,67 @@ msgstr "タグ付き添付ファイルすべての復号化は失敗。成功分
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "message/rfc822 パートのみ再送してもよい。"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "追加"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "挿入"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "承認(OK)"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "mixmaster の type2.list 取得できず"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "remailer チェーンを選択。"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "エラー: %s は最後の remailer チェーンには使えない。"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster チェーンは %d エレメントに制限されている。"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "remailer チェーンはすでに空。"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "すでに最初のチェーンエレメントを選択している。"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "すでに最後のチェーンエレメントを選択している。"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster は Cc または Bcc ヘッダを受けつけない。"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "mixmaster を使う時には、hostname 変数に適切な値を設定せよ。"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "メッセージ送信エラー、子プロセスが %d で終了。\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "メッセージ送信エラー。"
+
+@@ -6620,42 +6698,42 @@ msgstr "添付ファイルとして転送?"
+ # ここで no だと from に返信する。
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "%s%s への返信?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "%s%s へのフォローアップ?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "返信にメッセージを含めるか?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "引用メッセージを取り込み中..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "すべての要求されたメッセージを取り込めなかった"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "添付ファイルとして転送?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "転送メッセージを準備中..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c はこのモードではサポートされていない"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Fcc に添付ファイルも保存?"
+
+@@ -6663,194 +6741,194 @@ msgstr "Fcc に添付ファイルも保存?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fccに失敗. (r)etry 再試行, alternate (m)ailbox 別のメールボックス, (s)kip スキップ "
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "メールボックスの指定がない。\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "書きかけのメッセージを呼び出す?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "転送メッセージを編集?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "メッセージは未変更。中止?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "未変更のメッセージを中止した。"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "暗号バックエンドの設定がない. メッセージのセキュリティ設定を無効化した."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "記事は未投稿。"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "メッセージは書きかけで保留された。"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "題名がない。送信を中止?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "題名が指定されていない。"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "ニュースグループが指定されていない。"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "添付ファイルの content-trasfer-encoding を編集"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "メッセージは \"$abort_noattach_regex\" を含んでいる.送信しない."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "送信中..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "メッセージを送信できなかった。"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "バックグラウンドで送信。"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "記事を投稿した。"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "メールを送信した。"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "boundary パラメータがみつからない [このエラーを報告せよ]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s はもはや存在しない"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s は通常のファイルではない。"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "メッセージを送信できなかった。"
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s をオープンできなかった"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail を設定しないとメールを送信できない。"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "メッセージ送信エラー。子プロセスが %d (%s) で終了した。"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "配信プロセスの出力"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "不正な IDN %s を resent-from の準備中に発見。"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP セッション失敗: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP セッション失敗: %s をオープンできなかった"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "不正な SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP認証の方法 %s はSASLが必要"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s 認証に失敗した。次の方法で試行中"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI 認証に失敗した。"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP サーバがユーザ認証をサポートしていない"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "From アドレスが指定されていない"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP セッション失敗: 読み出しエラー"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP セッション失敗: 書き込みエラー"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "サーバからの不正な応答"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "メールボックス整列中..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "整列機能が見つからなかった [このバグを報告せよ]"
+
+@@ -6911,12 +6989,12 @@ msgid ""
+ "under certain conditions; type 'neomutt -vv' for details.\n"
+ msgstr ""
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "コンパイル時オプション:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "コンパイル時オプション:"
+
+@@ -6949,3 +7027,12 @@ msgstr "コンパイル時オプション:"
+
+ #~ msgid "select a new mailbox from the browser in read only mode"
+ #~ msgstr "ブラウザから新しいメールボックスを読出専用モードで選択"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "autocrypt 鍵の作成エラー: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "c:新規作成, s:既存のGPG鍵 "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: e:暗号化, c:なし, a:自動選択 "
+diff --git a/po/ko.po b/po/ko.po
+index cc4555b38..5a3c09b63 100644
+--- a/po/ko.po
++++ b/po/ko.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2004-03-03 10:25+900\n"
+ "Last-Translator: Im Eunjea <eunjea@kldp.org>\n"
+ "Language-Team: Im Eunjea <eunjea@kldp.org>\n"
+@@ -21,16 +21,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=1; plural=0;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "거부(r), 이번만 허가(o), 언제나 허가(a)"
++
++#, fuzzy
++msgid "roas"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "거부(r), 이번만 허가(o), 언제나 허가(a)"
++
++msgid "roa"
++msgstr "roa"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "거부(r), 이번만 허가(o)"
++
++#, fuzzy
++msgid "ros"
++msgstr "ro"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "거부(r), 이번만 허가(o)"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "종료"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "삭제"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "복구"
+
+@@ -38,18 +66,18 @@ msgstr "복구"
+ msgid "Select"
+ msgstr "선택"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "도움말"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "별칭이 없음"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "별칭"
+
+@@ -58,53 +86,53 @@ msgstr "별칭"
+ msgid "Alias as: "
+ msgstr "사용 별칭: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "같은 이름의 별칭이 이미 있음"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "경고: 이 알리아스는 작동하지 않습니다. 고칠까요?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "주소: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "잘못된 IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "이름: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] 추가할까요?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "파일로 저장: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "파일 보기 시도 중 오류"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "파일 보기 시도 중 오류"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "별칭 추가됨"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "파일 보기 시도 중 오류"
+@@ -114,7 +142,7 @@ msgstr "파일 보기 시도 중 오류"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s가 없음. 만들까요?"
+@@ -123,8 +151,8 @@ msgstr "%s가 없음. 만들까요?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "%s를 만들 수 없음: %s"
+@@ -134,7 +162,7 @@ msgstr "%s를 만들 수 없음: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -143,7 +171,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -152,7 +180,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -161,7 +189,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -173,7 +201,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "암호화"
+@@ -181,7 +209,7 @@ msgstr "암호화"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -189,7 +217,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -198,7 +226,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "%s를 위한 인증서를 찾을 수 없음"
+@@ -210,12 +238,12 @@ msgstr "%s를 위한 인증서를 찾을 수 없음"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "메일함 없음.\n"
+@@ -227,14 +255,14 @@ msgstr "메일함 없음.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "%s를 만들까요?"
+@@ -242,7 +270,7 @@ msgstr "%s를 만들까요?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "삭제"
+
+@@ -250,9 +278,9 @@ msgstr "삭제"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -260,17 +288,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -279,7 +307,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -287,7 +315,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -295,12 +323,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -308,13 +336,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "디렉토리 검사중 오류"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "정말로 \"%s\" 메일함을 지울까요?"
+@@ -332,7 +360,7 @@ msgstr "정말로 \"%s\" 메일함을 지울까요?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "메일함을 잠글 수 없음!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "패턴 오류: %s"
+@@ -405,497 +433,616 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s는 디렉토리가 아닙니다"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "디렉토리 이동"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "매스크"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "%s에 가입 중..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "%s에서 가입 탈퇴 중..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s는 디렉토리가 아닙니다"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "%s에 가입 중..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "메일함 [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "가입 [%s], 파일 매스크: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "디렉토리 [%s], 파일 매스크: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "디렉토리는 첨부할 수 없음"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "파일 매스크와 일치하는 파일 없음."
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "생성은 IMAP 메일함에서만 지원됨"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "생성은 IMAP 메일함에서만 지원됨"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "삭제는 IMAP 메일함에서만 지원됨"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "현재 선택된 파일의 이름 보기"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "정말로 \"%s\" 메일함을 지울까요?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "메일함 삭제됨"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "메일함 삭제됨"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "메일함이 삭제되지 않음"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "이동할 디렉토리: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "디렉토리 검사중 오류"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "파일 매스크: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "역순정렬 방법: 날짜(d), 낱말(a), 크기(z), 안함(n)?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "정렬 방법: 날짜(d), 글자(a), 크기(z), 안함(n)?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "새 파일 이름: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "디렉토리를 볼 수 없음"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "파일 보기 시도 중 오류"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "%s에 가입 중..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "%s에서 가입 탈퇴 중..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "파일 매스크와 일치하는 파일 없음."
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: 터미널에서 지원되지 않는 색."
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: 색상 없음."
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: 항목 없음"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: 인수가 부족함"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: 속성 없음."
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: 인수가 너무 많음"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "기본 색상들이 지원되지 않음"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: 잘못된 메일 번호.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "서명을 확인할까요?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "임시 파일을 만들 수 없음"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "표시 필터를 만들 수 없음"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "메일을 복사할 수 없음"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME 서명 확인에 성공함"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME 인증서 소유자와 보낸이가 일치하지 않음"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME 서명 검증에 실패함"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP 서명 확인에 성공함"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP 서명 검증에 실패함"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "\"%s\" 실행 오류"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "명령어: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "메일을 전달할 주소: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "메일을 전달할 주소: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "주소 분석 중 오류"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "%s에게 메일 전달"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "메일이 전달 되지 않음"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "메일이 전달됨"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "필터과정을 생성할 수 없음"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "명령어로 연결: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "프린트 명령이 정의되지 않음"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "메일을 프린트 할까요?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "메일을 프린트 할까요?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "메일을 프린트함"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "메일을 프린트 할 수 없음"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "역순정렬: (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "정렬: (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzc"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "쉘 명령어: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "복호화-저장 메일함으로"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "복호화-저장 메일함으로"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "해독-저장 메일함으로"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "해독-저장 메일함으로"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "저장 메일함으로"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "저장 메일함으로"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "복호화-복사 메일함으로"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "복호화-복사 메일함으로"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "해독-복사 메일함으로"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "해독-복사 메일함으로"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "복사 메일함으로"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "복사 메일함으로"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "%s로 복사..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "%s로 Content-Type이 바뀜"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "보낼때 %s로 변환할까요?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "%s로 Content-Type이 바뀜"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "문자셋이 %s에서 변환하지 않음로 바뀜"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "문자셋이 %s에서 변환중로 바뀜"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: 인수가 부족함"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "인수가 부족함"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "%s의 %d번 줄에 오류: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "%s의 %d번 줄에 오류: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: %s에 오류"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: %s에 오류가 많으므로 읽기 취소"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %s에 오류"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "별칭: 주소 없음"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "경고: 잘못된 IDN '%s' 알리아스 '%s'"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "첨부물 설명 편집"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "첨부물 설명 편집"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "첨부물 설명 편집"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: 인수가 너무 많음"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "경고: 잘못된 IDN '%s' 알리아스 '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "잘못된 헤더 필드"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: 알 수 없는 변수"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s 설정 해제"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: %s에 오류"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "메일들을 프린트 할 수 없음"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "패턴과 일치하는 메일에 태그 붙임"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "패턴과 일치하는 메일의 태그 해제"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "%s에 가입 중..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "%s에 가입 중..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "제목이 지정되지 않음."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "첨부물 설명 편집"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s에서 가입 탈퇴 중..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "%s에서 가입 탈퇴 중..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "첨부물이 없음"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "답장"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -906,78 +1053,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "사용 서명: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "%s%s에게 댓글?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "Reply-To 필드 편집"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "보냄"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "취소"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "파일 첨부"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "설명"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "제목이 지정되지 않음."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -985,7 +1132,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -993,14 +1140,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "yes"
+@@ -1011,7 +1158,7 @@ msgstr "yes"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1019,53 +1166,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "태그를 붙이는 것을 지원하지 않음."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "서명, 암호화"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "암호화"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "서명"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(계속)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<기본값>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "암호화 방식: "
+
+@@ -1074,12 +1221,12 @@ msgstr "암호화 방식: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "Reply-To 필드 편집"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1090,7 +1237,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d]는 더 이상 존재하지 않음"
+@@ -1102,239 +1249,359 @@ msgstr "%s [#%d]는 더 이상 존재하지 않음"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] 변경됨. 다시 인코딩할까요?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- 첨부물"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "첨부물만을 삭제할 수는 없습니다"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "잘못된 IDN '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "첨부물 저장됨"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "현재 첨부물은 변환할수 없음"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "첨부물 필터됨"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "메일 보내는 중 오류"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "선택된 파일을 첨부중..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s를 첨부할 수 없음"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "메일을 첨부하기 위해 메일함을 염"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "메일을 첨부하기 위해 메일함을 염"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "메일함을 잠글 수 없음!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "폴더에 메일이 없음"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "첨부하고자 하는 메일을 표시하세요."
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "첨부할 수 없음"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "저장은 텍스트 첨부물에만 적용됨"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "현재 첨부물은 변환할수 없음"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "현재 첨부물은 변환 가능함"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "잘못된 인코딩"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "이 메일의 복사본을 저장할까요?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "첨부물을 text로 보기"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "이름 바꾸기: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "%s: %s의 상태를 알수 없음."
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "새 파일: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type이 base/sub 형식임."
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "알 수 없는 Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "%s 파일을 만들 수 없음"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "여기에 있는 것들은 첨부 과정에서 실패한 것들입니다."
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "발송 연기된 메일을 다시 부를까요?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "메일함에 메일 쓰기"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "%s에 메일 쓰는중..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "메일 쓰기 완료"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "이미 S/MIME이 선택됨. 지우고 계속할까요?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP가 선택됨. 지우고 계속할까요?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "메일함을 잠글 수 없음"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "초기 접속(preconnect) 명령 실패."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "%s로 복사..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "%s로 복사..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "임시 파일을 저장하는 중 오류: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: 잘못된 메일 번호.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "잘못된 달 입력: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "메일 첨부 모드에서 허가되지 않는 기능임."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: 잘못된 메일 번호.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: 잘못된 메일 번호.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "오류: '%s'는 잘못된 IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: 알 수 없는 변수"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "잘못된 날짜 입력: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "잘못된 날짜 입력: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "이름 바꾸기 (%s): "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s의 암호: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "질의 명령이 정의되지 않음"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1355,7 +1622,7 @@ msgstr "%s로 연결 중..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "%s (%s)로 연결할 수 없음"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "알 수 없는 오류"
+
+@@ -1369,24 +1636,24 @@ msgstr "%s (%s) 오류"
+ msgid "Connection to %s has been aborted"
+ msgstr "%s의 접속이 끊어짐"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "패턴 오류: %s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1399,138 +1666,112 @@ msgstr "초기 접속(preconnect) 명령 실패"
+ msgid "Connection to %s closed"
+ msgstr "%s의 접속이 끊어짐"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "엔트로피를 채우는 중: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s는 안전하지 않은 퍼미션을 가지고 있음"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "엔트로피 부족으로 인해 SSL 사용 불가"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "알 수 없음"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[계산할 수 없음]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[잘못된 날짜]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "서버 인증서가 아직 유효하지 않음 "
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "서버 인증서가 만기됨"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "시스템에서 충분한 엔트로피를 찾을 수 없음"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "지정한 곳에서 인증서를 가져올 수 없음"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "지정한 곳에서 인증서를 가져올 수 없음"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "S/MIME 인증서 소유자와 보낸이가 일치하지 않음."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "이 인증서는 다음에 속함:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "이 인증서의 발행인은:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "이 인증서는 유효함"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " from %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " to %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Fingerprint: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Fingerprint: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "거부(r), 이번만 허가(o), 언제나 허가(a)"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "거부(r), 이번만 허가(o), 언제나 허가(a)"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "거부(r), 이번만 허가(o)"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++#, fuzzy
++msgid "SHA256 Fingerprint: "
++msgstr "Fingerprint: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "거부(r), 이번만 허가(o)"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "끝내기 "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "경고: 인증서를 저장하지 못함"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "인증서 저장됨"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "인증서 저장됨"
+@@ -1538,15 +1779,15 @@ msgstr "인증서 저장됨"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "입/출력 오류"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL 실패: %s"
+@@ -1554,96 +1795,80 @@ msgstr "SSL 실패: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "오류: OpenSSL 하부 프로세스를 생성할 수 없음!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "지정한 곳에서 인증서를 가져올 수 없음"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "인증서 저장됨"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "터미널 초기화 오류."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "서버 인증서가 아직 유효하지 않음 "
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "서버 인증서가 만기됨"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "서버 인증서가 만기됨"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "서버 인증서가 아직 유효하지 않음 "
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "%s를 사용해 SSL 연결 (%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1662,37 +1887,17 @@ msgstr "%s (%s) 오류"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "yes"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt을 종료할까요?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "아무키나 누르면 계속합니다..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr "(목록 보기 '?'): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1723,7 +1928,7 @@ msgstr ""
+ "~? 현재 메세지\n"
+ ". 줄에 홀로 있을 경우 입력 종료\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1754,20 +1959,20 @@ msgstr ""
+ "~? 현재 메세지\n"
+ ". 줄에 홀로 있을 경우 입력 종료\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: 잘못된 메일 번호.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(줄에 . 홀로 사용하여 메세지 끝내기)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "메일함 없음.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "메세지에 포함됨:\n"
+
+@@ -1775,19 +1980,19 @@ msgstr "메세지에 포함됨:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(계속)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "파일이름이 빠짐.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "메세지에 내용 없음.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: 알 수 없는 편집 명령 (~? 도움말)\n"
+@@ -1834,19 +2039,73 @@ msgstr "폴더에 첨가할 수 없음: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "다중 파트 메일에 경계 변수가 없음"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "글타래 모드가 아님"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "플래그 설정"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "플래그 지움"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: 터미널에서 지원되지 않는 색."
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: 색상 없음."
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: 항목 없음"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: 속성 없음."
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "기본 색상들이 지원되지 않음"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: 잘못된 메일 번호.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "yes"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt을 종료할까요?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "아무키나 누르면 계속합니다..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr "(목록 보기 '?'): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1867,23 +2126,23 @@ msgstr "[-- %s를 사용한 자동 보기 --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "자동 보기 명령 실행: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "필터를 만들 수 없음"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- %s를 실행할 수 없음. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- %s의 자동 보기 오류 --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- 오류: message/external-body에 access-type 변수가 없음 --]\n"
+
+@@ -1902,7 +2161,7 @@ msgstr "[-- 오류: message/external-body에 access-type 변수가 없음 --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1928,7 +2187,7 @@ msgstr[0] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1941,7 +2200,7 @@ msgstr[0] "[ -- %s/%s 첨부물 (크기: %s 바이트) 삭제 되었음 --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1953,12 +2212,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[ -- %s/%s 첨부물 삭제 되었음 --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- 이름: %s --]\n"
+@@ -1966,7 +2225,7 @@ msgstr "[-- 이름: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1981,7 +2240,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1990,95 +2249,95 @@ msgstr ""
+ "[-- 이 %s/%s 첨부물은 포함되지 않음, --]\n"
+ "[-- 지정된 access-type %s는 지원되지 않음 --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- 오류: Multipart/Alternative 부분을 표시 수 없음 --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- 첨부물 #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- 첨부물 #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "임시 파일을 열 수 없음"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "임시 파일을 열 수 없음"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "임시 파일을 열 수 없음"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "오류: multipart/signed 프로토콜이 없음"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[ -- %s/%s 첨부물 ('%s' 키: 부분 보기) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- '%s/%s'는 지원되지 않음 ('%s' 키: 부분 보기) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[ -- %s/%s 첨부물 ('첨부물 보기' 글쇠 정의가 필요함) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- '%s/%s'는 지원되지 않음 ('첨부물 보기' 글쇠 정의가 필요함) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[ -- %s/%s 첨부물 --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- '%s/%s'는 지원되지 않음 --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "오류: 이 버그를 보고 해주세요"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<알수 없음>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "기본 글쇠 정의:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "글쇠가 정의되지 않은 기능:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s 도움말"
+@@ -2095,41 +2354,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: unhook * 할 수 없음"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: 알 수 없는 hook 유형: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s를 %s에서 지울 수 없음"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: 그런 메뉴 없음"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: 그런 메뉴 없음"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: 그런 메뉴 없음"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "임시 파일 %s를 만들 수 없음!"
+@@ -2167,30 +2426,30 @@ msgstr "GSSAPI 인증에 실패함"
+ msgid "LOGIN disabled on this server"
+ msgstr "이 서버는 LOGIN이 허용되지 않음"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "접속 중..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "접속 실패"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "인증 중 (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER 인증에 실패함"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "인증 중 (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL 인증에 실패함"
+
+@@ -2239,132 +2498,122 @@ msgstr "SSL 실패: %s"
+ msgid "Mailbox renamed"
+ msgstr "메일함이 생성됨"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "메일함이 닫힘"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "%s의 접속이 끊어짐"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "오래된 버젼의 IMAP 서버로 NeoMutt와 사용할 수 없습니다."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL 실패: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "%s와의 연결을 닫는중..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "TLS를 사용하여 연결 할까요?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "TLS 연결 할수 없음"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr ""
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "%s에 가입 중..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "%s에서 가입 탈퇴 중..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s에 가입 중..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s에서 가입 탈퇴 중..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "%d개의 메세지를 %s로 복사 중..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s를 만들까요?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "삭제 실패"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+ msgstr[0] "%d개의 메일을 삭제 표시함..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "메세지 상태 플래그 저장... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "주소 분석 중 오류!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "서버에서 메세지 삭제 중..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: 삭제 실패"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s 선택 중..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "메일함 여는중 오류"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "무효 "
+@@ -2375,7 +2624,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "메모리 부족"
+
+@@ -2396,7 +2645,7 @@ msgstr "메세지 헤더 가져오는 중... [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "이 버젼의 IAMP 서버에서 헤더를 가져올 수 없습니다"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "메세지 헤더 가져오는 중... [%d/%d]"
+@@ -2411,156 +2660,156 @@ msgstr "메일을 업로드 하는 중..."
+ msgid "Copying message %d to %s..."
+ msgstr "메세지 %d를 %s로 복사 중..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "메세지 가져오는 중..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "잘못된 메일 인덱스. 메일함 열기 재시도."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "계속할까요?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "종료"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "저장"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "메일"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "답장"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "그룹"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "%s%s에게 댓글?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "열린 메일함이 없음"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "메일이 없음"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "메일 없음"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "읽기 전용 메일함"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "메일 첨부 모드에서 허가되지 않는 기능임"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "읽기 전용 메일함에 쓸수 없음"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "변경 사항은 폴더를 닫을때 기록됨"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "변경 사항을 기록 하지 않음"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s는 메일함이 아님"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "외부에서 메일함이 변경됨. 플래그가 틀릴 수 있음"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "현재 메일함에 새 메일 도착"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "외부에서 메일함이 변경됨"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "표시된 메일이 없음"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "아무것도 하지 않음"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "keyID 입력: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "제한된 보기로 부모 메일은 보이지 않는 상태임"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "서버에서 메세지 삭제 중..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "글타래의 모든 메일 지우기"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "이동: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "메일의 번호만 가능"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "잘못된 메일 번호"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "메일이 볼 수 없는 상태임"
+
+@@ -2573,38 +2822,38 @@ msgstr "메일이 볼 수 없는 상태임"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "삭제 취소된 메일 없음."
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "일치하는 메일 삭제: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "제한 패턴이 없음"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "패턴: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "패턴과 일치하는 메일: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt을 종료할까요?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "일치하는 메일에 표시함: "
+
+@@ -2612,213 +2861,213 @@ msgstr "일치하는 메일에 표시함: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "삭제 취소된 메일 없음."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "일치하는 메일을 삭제 취소: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "일치하는 메일을 표시 해제: "
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "IMAP 서버 접속 닫는 중.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "제목 없음. 끝냅니다"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "제목 없음. 끝냅니다"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "제목 없음. 끝냅니다"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "읽기 전용으로 메일함 열기"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "메일함 열기"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "새 메일이 도착한 메일함 없음."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "읽기 전용으로 메일함 열기"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "저장하지 않고 NeoMutt을 끝낼까요?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "필터를 만들 수 없음"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "현재 메일을 저장 후 나중에 보냄"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "마지막 메세지입니다"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "삭제 취소된 메일 없음"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "첫번째 메세지입니다"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "제한된 보기로 부모 메일은 보이지 않는 상태임"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "새 메일 없음"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "제한된 보기로 부모 메일은 보이지 않는 상태임"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "읽지 않은 메일 없음"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "위부터 다시 검색"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "아래부터 다시 검색"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "메일 보기"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "더 이상 글타래 없음"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "처음 글타래입니다"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "글타래에 읽지 않은 메세지 있음"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "삭제 취소된 메일 없음."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "메일을 쓰지 못함"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2827,7 +3076,7 @@ msgstr[0] "메일함이 변경되지 않음"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "메일함이 변경되지 않음"
+@@ -2836,7 +3085,7 @@ msgstr "메일함이 변경되지 않음"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "글타래의 부모 메일로 이동"
+@@ -2844,14 +3093,14 @@ msgstr "글타래의 부모 메일로 이동"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "keyID 입력: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "발송 연기됨."
+@@ -2859,265 +3108,123 @@ msgstr "발송 연기됨."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "메일이 전달됨"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "폴더에 메일이 없음"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "삭제 취소된 메일 없음."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "명령어 오류: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "명령어 오류: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "사용자 이름을 알수 없음"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "인수가 부족함"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "%s의 %d번 줄에 오류: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "%s의 %d번 줄에 오류: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: %s에 오류"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: %s에 오류가 많으므로 읽기 취소"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %s에 오류"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "별칭: 주소 없음"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "경고: 잘못된 IDN '%s' 알리아스 '%s'"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "첨부물 설명 편집"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "첨부물 설명 편집"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "첨부물 설명 편집"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "경고: 잘못된 IDN '%s' 알리아스 '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "잘못된 헤더 필드"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: 알 수 없는 변수"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s 설정 해제"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: %s에 오류"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "메일들을 프린트 할 수 없음"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "패턴과 일치하는 메일에 태그 붙임"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "패턴과 일치하는 메일의 태그 해제"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "%s에 가입 중..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "제목이 지정되지 않음."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "첨부물 설명 편집"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "%s에서 가입 탈퇴 중..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: 알 수 없는 명령어"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "잘못된 날짜 입력: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "메일 첨부 모드에서 허가되지 않는 기능임."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "매크로 루프가 발생"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "정의되지 않은 글쇠"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "정의되지 않은 글쇠. 도움말 보기는 '%s'"
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: 공백 글쇠 시퀀스"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: 빈 글쇠 시퀀스"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: 인수가 없음"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: 그런 기능 없음"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "키 입력 (^G 취소): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Char = %s, Octal = %o, Decimal = %d"
+@@ -3141,7 +3248,7 @@ msgstr "%s 형식을 mailcap 항목에서 찾을 수 없음"
+ msgid "Scanning %s..."
+ msgstr "%s 선택 중..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s 읽는 중..."
+@@ -3157,13 +3264,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): 파일 시간을 설정할 수 없음"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s 쓰는 중..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3186,7 +3293,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3229,54 +3336,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "터미널 초기화 오류"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "사용자 이름을 알수 없음"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "홈 디렉토리를 찾을 수 없음"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "오류: '%s'는 잘못된 IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "수신자가 지정되지 않음"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "메세지 파일을 열 수 없음: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: 파일을 첨부할 수 없음"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "새 메일이 도착한 메일함 없음"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "수신 메일함이 정의되지 않음"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "메일함이 비었음"
+
+@@ -3318,52 +3425,52 @@ msgstr "메일함을 다시 열 수 없음"
+ msgid "Can't write message"
+ msgstr "메일을 쓰지 못함"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "이동할 위치: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "잘못된 색인 번호"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "항목이 없음"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "더 이상 내려갈 수 없음"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "더 이상 올라갈 수 없음"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "첫번째 페이지입니다"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "마지막 페이지입니다"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "마지막 항목에 위치하고 있습니다"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "첫번째 항목에 위치하고 있습니다"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "찾아보기: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "반대 방향으로 찾아보기: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "찾을 수 없음"
+
+@@ -3406,20 +3513,20 @@ msgstr "flock 시도를 기다리는 중... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "임시 파일을 만들 수 없음"
+
+@@ -3438,7 +3545,7 @@ msgstr "디버깅 레벨 %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "디버깅 레벨 %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "%s 서버와의 연결 오류"
+@@ -3462,17 +3569,17 @@ msgstr "%d (%s) 신호 발견... 종료함.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "%d 신호 발견... 종료함.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3480,149 +3587,121 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "파일이 아니라 디렉토리입니다, 그 아래에 저장할까요? (y)네, (n)아니오, (a)모두"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "파일이 아니라 디렉토리입니다, 그 아래에 저장할까요?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "디렉토리안에 저장할 파일:"
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "파일이 존재함, 덮어쓰기(o), 첨가(a), 취소(c)?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "POP 메일함에 메일을 저장할 수 없음"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "%s에 메일을 첨가할까요?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "POP 서버의 메일을 수정할 수 없음"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "이름 바꾸기 (%s): "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s의 암호: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "질의 명령이 정의되지 않음"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "이름 템플레이트와 일치하지 않음. 계속할까요?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap 작성 항목은 %%s가 필요함"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "헤더를 분석하기 위한 파일 열기 실패"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "헤더 제거를 위한 파일 열기 실패"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "헤더를 분석하기 위한 파일 열기 실패"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "%s의 mailcap 작성 항목이 없음, 빈 파일 생성"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap 편집 항목은 %%s가 필요함"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "편집을 위한 %s의 mailcap 항목이 없음"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "mailcap 항목에서 일치하는 것을 찾을 수 없음. text로 보기."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "정의되지 않은 MIME 형식. 첨부물을 볼 수 없음."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- 첨부물"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- 첨부물"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "쓰기 실패"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "어떻게 출력할 지 알 수 없음"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "찾기"
+
+@@ -3631,21 +3710,21 @@ msgstr "찾기"
+ msgid "History '%s'"
+ msgstr "질의 '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "잘못된 날짜 입력: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "%s를 잠글 수 없음.\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "새 메일 도착 "
+
+@@ -3667,20 +3746,20 @@ msgstr "제한된 보기로 부모 메일은 보이지 않는 상태임"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "제한된 보기로 부모 메일은 보이지 않는 상태임"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "찾는 도중 중단됨."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "%s를 첨부할 수 없음"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3691,67 +3770,67 @@ msgstr[0] "%d개의 메일을 삭제 표시함..."
+ msgid "Can't open trash folder"
+ msgstr "폴더에 첨가할 수 없음: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "읽은 메일을 %s로 옮길까요?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "삭제 표시된 메일(%d)을 삭제할까요?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "읽은 메일을 %s로 옮기는 중..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "메일함이 변경되지 않음"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d개 보관, %d개 이동, %d개 삭제"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d개 보관, %d개 삭제"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " 쓰기 상태 바꾸기; '%s'를 누르세요"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "다시 쓰기를 가능하게 하려면 'toggle-write'를 사용하세요"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "메일함이 쓰기 불가능으로 표시 되었음. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "메일함이 표시됨"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (현재 시간: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s 출력 결과 %s --]\n"
+@@ -3760,53 +3839,53 @@ msgstr "[-- %s 출력 결과 %s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "암호 문구 잊음"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP를 구동합니다..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "보내지 않음"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "내용에 S/MIME 표시가 없는 경우는 지원하지 않음"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP 열쇠를 추출하는 중...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME 인증서 추출하는 중..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3815,7 +3894,7 @@ msgstr ""
+ "[-- 오류: 알 수 없는 multipart/signed 프로토콜 %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3824,7 +3903,7 @@ msgstr ""
+ "[-- 오류: 일치하지 않는 multipart/signed 구조 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3833,7 +3912,7 @@ msgstr ""
+ "[-- Warning: %s/%s 서명을 확인 할 수 없음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3841,7 +3920,7 @@ msgstr ""
+ "[-- 아래의 자료는 서명 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3849,7 +3928,7 @@ msgstr ""
+ "[-- 경고: 서명을 찾을 수 없음. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3869,236 +3948,236 @@ msgstr "S/MIME를 구동합니다..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "잘못된 달 입력: %s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "잘못된 달 입력: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "Fingerprint: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "열쇠 ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "서버 인증서가 만기됨"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "SSL 사용 불가."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "%s를 만들까요?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "명령어 오류: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4107,28 +4186,34 @@ msgstr ""
+ "\n"
+ "[-- 서명 자료의 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- 오류: 임시 파일을 만들 수가 없음! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "패턴 오류: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "PGP 서명 확인에 성공함"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4136,11 +4221,11 @@ msgstr ""
+ "[-- PGP 메일 시작 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 공개 열쇠 부분 시작 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4148,19 +4233,19 @@ msgstr ""
+ "[-- PGP 서명 메일 시작 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP 메일 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 공개 열쇠 부분 끝--]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP 서명 메일 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4168,11 +4253,11 @@ msgstr ""
+ "[-- 오류: PGP 메일의 시작을 찾을 수 없음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- 오류: 임시 파일을 만들 수가 없음 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4181,7 +4266,7 @@ msgstr ""
+ "[-- 아래의 자료는 PGP/MIME 암호화 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4189,27 +4274,22 @@ msgstr ""
+ "[-- 아래의 자료는 PGP/MIME 암호화 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME 암호화 자료 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME 암호화 자료 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP 서명 확인에 성공함"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "메일을 복사할 수 없음"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+@@ -4218,7 +4298,7 @@ msgstr ""
+ "[-- 아래의 자료는 S/MIME 서명 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+@@ -4227,145 +4307,145 @@ msgstr ""
+ "[-- 아래의 자료는 S/MIME 암호화 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME 서명 자료 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME 암호화 자료 끝 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "무효 "
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+ msgstr[0] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "암호화"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "인증서 저장됨"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ #, fuzzy
+ msgid "[Revoked]"
+ msgstr "취소됨 "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "만기됨 "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "%s로 연결 중..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "%s 서버와의 연결 오류"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "명령어 오류: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "열쇠 ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "모든 키가 만기/취소/사용 불가 입니다"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "선택 "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "열쇠 확인 "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP 키가 \"%s\"와 일치함."
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "PGP 키가 \"%s\"와 일치함."
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME 인증서가 \"%s\"와 일치."
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "PGP 키가 \"%s\"와 일치함."
+@@ -4374,59 +4454,59 @@ msgstr "PGP 키가 \"%s\"와 일치함."
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr ""
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "이 키는 사용할 수 없습니다: 만기/사용중지/취소됨"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "이 키는 만기/사용중지/취소됨. 이 키를 정말로 사용을 하겠습니까?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "이 ID는 확실하지 않음. 이 키를 정말로 사용을 하겠습니까?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "이 ID는 신용도가 낮음. 이 키를 정말로 사용을 하겠습니까?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID의 인증자가 정의되지 않음. 이 키를 정말로 사용을 하겠습니까?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "\"%s\"와 일치하는 키를 찾는 중..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "keyID = \"%s\"를 %s에 사용할까요?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "%s의 keyID 입력: "
+@@ -4435,16 +4515,16 @@ msgstr "%s의 keyID 입력: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "찾을 수 없음"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "열쇠 ID 를 입력하십시요: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "패턴 오류: %s"
+@@ -4452,103 +4532,103 @@ msgstr "패턴 오류: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP 키 %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "esabif"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "esabif"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "esabif"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "esabif"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "esabif"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "esabif"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "헤더를 분석하기 위한 파일 열기 실패"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "PGP 암호 문구 입력:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- 오류: PGP 하부 프로세스를 생성할 수 없음 --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4559,16 +4639,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP 서명 확인에 성공함"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4576,132 +4656,132 @@ msgstr ""
+ "[-- Error: PGP 하부 프로세스를 생성할 수 없음 --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "해독 실패"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP 하부 프로세스를 열 수 없음"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP를 실행하지 못함"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "esabif"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "esabif"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabif"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabif"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabif"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP 암호화(e), 서명(s), 사용 서명(a), 둘 다(b), (i)nline, 취소(f)?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabif"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP 열쇠 가져오는 중..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "모든 키가 만기/취소/사용 불가 입니다"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP 키가 <%s>와 일치함"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP 키가 \"%s\"와 일치함"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "/dev/null를 열 수 없음"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP 키 %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "S/MIME 암호 문구 입력:"
+
+@@ -4710,7 +4790,7 @@ msgstr "S/MIME 암호 문구 입력:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "만기됨 "
+
+@@ -4719,7 +4799,7 @@ msgstr "만기됨 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "무효 "
+
+@@ -4728,7 +4808,7 @@ msgstr "무효 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "취소됨 "
+
+@@ -4737,7 +4817,7 @@ msgstr "취소됨 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "신용할 수 있음 "
+
+@@ -4746,7 +4826,7 @@ msgstr "신용할 수 있음 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "미확인됨"
+
+@@ -4755,7 +4835,7 @@ msgstr "미확인됨"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "확인됨 "
+
+@@ -4764,60 +4844,60 @@ msgstr "확인됨 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "알 수 없음 "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME 인증서가 \"%s\"와 일치"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "이 ID는 확실하지 않음. 이 키를 정말로 사용을 하겠습니까?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "keyID 입력: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "%s를 위한 인증서를 찾을 수 없음"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "오류: OpenSSL 하부 프로세스를 생성할 수 없음"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "지정한 곳에서 인증서를 가져올 수 없음"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "인증파일 없음"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "메일함 없음"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL으로 부터 출력이 없음..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL 하부 프로세스를 열 수 없음"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4825,23 +4905,23 @@ msgstr ""
+ "[-- OpenSSL 출력 끝 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- 오류: OpenSSL 하부 프로세스를 생성할 수 없음 --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- 아래의 자료는 S/MIME 암호화 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- 아래의 자료는 S/MIME 서명 되었음 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4849,7 +4929,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME 암호화 자료 끝 --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4858,170 +4938,170 @@ msgstr ""
+ "[-- S/MIME 서명 자료 끝 --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME 암호화(e), 서명(s), 방식(w), 사용 서명(a), 둘 다(b), 취소(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME 암호화(e), 서명(s), 방식(w), 사용 서명(a), 둘 다(b), 취소(f)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME 암호화(e), 서명(s), 방식(w), 사용 서명(a), 둘 다(b), 취소(f)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "eswabf"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s는 잘못된 POP 패스"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "서버와 연결이 끊어짐"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "인증자가 없음."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL 인증에 실패함"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "%s의 접속이 끊어짐"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "메일의 목록을 가져오는 중..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "새 메일을 확인중..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "임시 메일 폴더를 쓸 수 없음: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "%s로 연결 중..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "아무것도 하지 않음"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "%s: %s의 상태를 알수 없음."
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "서버에서 메세지 삭제 중..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "접속 중..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "새 메일을 확인중..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s는 잘못된 POP 패스"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5033,7 +5113,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6184,189 +6264,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "S/MIME 옵션 보기"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "이 메뉴에선 유효하지 않음"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "이전페이지"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "다음페이지"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "첨부물보기"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "다음"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "메세지의 끝입니다"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "메세지의 처음입니다"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "현재 도움말을 보고 있습니다"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "더 이상의 인용문 없음"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "인용문 이후에 더 이상의 비 인용문 없음"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "표현식에서 오류: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "표현식 오류"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "질의 명령이 정의되지 않음"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "자동 보기 명령 실행: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "잘못된 날짜 입력: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "잘못된 달 입력: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "잘못된 날짜 입력: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "읽지 않은 메일 없음"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "메일함 여는중 오류"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "메일함 여는중 오류"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "/dev/null를 열 수 없음"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "패턴 오류: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "변수가 빠짐"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "삽입 어구가 맞지 않음: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: 잘못된 명령어"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: 이 모드에서 지원되지 않음"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "변수가 빠짐"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "빈 패턴"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "오류: 알 수 없는 작동 %d (오류 보고 바람)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "검색 패턴 컴파일 중..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "선택된 메일에 명령 실행중..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "기준과 일치하는 메일이 없음"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "저장중..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "일치하는 결과가 아래에 없음"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "일치하는 결과가 위에 없음"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "찾는 도중 중단됨"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "명령어 TOP이 서버에서 지원되지 않음"
+
+@@ -6374,7 +6454,7 @@ msgstr "명령어 TOP이 서버에서 지원되지 않음"
+ msgid "Can't write header to temporary file"
+ msgstr "임시 파일 만들 수 없음"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "명령어 UIDL이 서버에서 지원되지 않음"
+
+@@ -6388,7 +6468,7 @@ msgstr[0] "잘못된 메일 인덱스. 메일함 열기 재시도."
+ msgid "POP host is not defined"
+ msgstr "POP 서버가 지정되지 않음"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s는 잘못된 POP 패스"
+@@ -6419,155 +6499,155 @@ msgid "%s [%d of %d message read]"
+ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d - %d 메일 읽음]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "메일의 목록을 가져오는 중..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "%d개의 메일을 삭제 표시함..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "메일을 임시 파일에 쓸수 없음"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "인증 중 (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "인증 중 (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP 인증에 실패함"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "명령어 USER를 서버에서 지원하지 않음"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL 인증에 실패함"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "무효 "
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "서버에 메일을 남겨 둘 수 없음"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "%s 서버와의 연결 오류"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "POP 서버와의 연결을 닫는중..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "메일 인덱스를 확인중..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "연결이 끊어짐. POP 서버와 다시 연결 할까요?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "발송 연기 됨"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "발송 연기된 메일 없음"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "잘못된 S/MIME 헤더"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "잘못된 PGP 헤더"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "메세지 가져오는 중..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "새 질문"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "별칭 만들기"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "응답을 기다리는 중..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "질의: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "질의 '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "질의 명령이 정의되지 않음"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "연결"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "출력"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "저장중..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "첨부물 저장됨"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "주의! %s를 덮어 씌웁니다, 계속할까요?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "첨부물 필터됨"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "필터: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "연결: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "첨부물 %s의 출력 방법을 알 수 없음"
+@@ -6575,56 +6655,56 @@ msgstr "첨부물 %s의 출력 방법을 알 수 없음"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "태그가 붙은 첨부물 출력?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "첨부물 출력?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "암호화된 메일을 해독할 수 없음"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "첨부물"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "더 이상 첨부물이 없습니다."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "POP 서버에서 첨부물을 삭제 할수 없음"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "POP 서버에서 첨부물을 삭제 할수 없음"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "암호화된 메일의 첨부물 삭제는 지원되지 않음"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "암호화된 메일의 첨부물 삭제는 지원되지 않음"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "다중체계 첨부물의 삭제만이 지원됩니다"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "message/rfc822 부분만 전달할 수 있습니다"
+
+@@ -6660,7 +6740,7 @@ msgstr "%s를 만들 수 없음"
+ msgid "Can't find any tagged messages"
+ msgstr "표시된 메일이 없습니다"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "메일링 리스트를 찾을 수 없음"
+
+@@ -6675,67 +6755,67 @@ msgstr "표시된 첨부물을 모두 디코딩하지 못함. 나머지는 MIME
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "message/rfc822 부분만 전달할 수 있습니다"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "첨가"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "삽입"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "확인"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "mixmaster의 type2.list를 찾지 못함"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "리메일러 체인 선택"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "오류: %s는 체인의 마지막 리메일러로 사용할수 없음"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster 체인은 %d개의 제한이 있음"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "리메일러 체인이 이미 비어 있음"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "이미 첫번째 체인을 선택했음"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "이미 마지막 체인을 선택했음"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster는 Cc 또는 Bcc 헤더를 허용하지 않음"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "mixmaster를 사용하기 위한 적당한 호스트 변수를 사용하세요"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "메일 보내는 중 오류 %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "메일 보내는 중 오류"
+
+@@ -6766,42 +6846,42 @@ msgstr "첨부물로 포워딩?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "%s%s에게 답장?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "%s%s에게 댓글?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "답장에 원본을 포함시킵니까?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "인용 메일 포함 중..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "요청된 모든 메일을 포함할 수 없음"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "첨부물로 포워딩?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "메일 포워딩을 준비 중..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: 이 모드에서 지원되지 않음"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "첨부물을 text로 보기"
+@@ -6810,196 +6890,196 @@ msgstr "첨부물을 text로 보기"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "메일함 없음.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "발송 연기된 메일을 다시 부를까요?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "포워딩된 메일을 수정할까요?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "변경되지 않은 메일을 취소할까요?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "변경되지 않은 메일 취소함"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "보내지 않음"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "발송 연기됨"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "제목 없음, 보내기를 취소할까요?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "제목이 지정되지 않음"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "제목이 지정되지 않음"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "첨부물 전송 부호화 방법 편집"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "메일 보내는 중..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "메일을 보낼 수 없음"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "백그라운드로 보냄"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "메일 보냄"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "한계 변수 없음 [오류 보고 바람]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s가 더 이상 존재치 않음"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s는 올바른 파일이 아님"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "메일을 보낼 수 없음."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s를 열 수 없음"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "메일을 보내는 중 오류 %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "배달 프로세스의 출력"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "resent-from을 준비하는 동안 잘못된 IDN %s"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SSL 실패: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SSL 실패: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "무효 "
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL 인증에 실패함."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI 인증에 실패함"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "메일함 정렬 중..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "정렬 함수 찾을 수 없음 [버그 보고 바람]"
+
+@@ -7051,11 +7131,11 @@ msgstr ""
+ "바랍니다. NeoMutt은 공개 소프트웨어이며, 일정 사항만 지킨다면 여러분께서 자유\n"
+ "로이 재배포할 수 있습니다. 자세한 사항은 'neomutt -vv'로 확인하시기 바랍니다.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "컴파일 선택사항:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "컴파일 선택사항:"
+diff --git a/po/lt.po b/po/lt.po
+index e7e3cbb96..a24fd22b6 100644
+--- a/po/lt.po
++++ b/po/lt.po
+@@ -1,17 +1,17 @@
+ # Lithuanian messages for NeoMutt
+ #
+-# Copyright (c) 2000-2019 NeoMutt project.
++# Copyright (c) 2000-2020 NeoMutt project.
+ # This file is distributed under the same license as the NeoMutt package.
+ #
+ # Tadas <btadas@is.lt>, 2000
+-# Marius Gedminas <marius@gedmin.as>, 2000,2017-2019
++# Marius Gedminas <marius@gedmin.as>, 2000,2017-2020
+ # Gediminas Paulauskas <menesis@delfi.lt>, 2000
+ #
+ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2000-11-29 21:22+0200\n"
+ "Last-Translator: Marius Gedminas <marius@gedmin.as>\n"
+ "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(a)tmesti, (p)riimti šįkart, (v)isada priimti, p(r)aleisti"
++
++msgid "roas"
++msgstr "apvr"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(a)tmesti, (p)riimti šįkart, (v)isada priimti"
++
++msgid "roa"
++msgstr "apv"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(a)tmesti, (p)riimti šįkart, p(r)aleisti"
++
++msgid "ros"
++msgstr "apr"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(a)tmesti, (p)riimti šįkart"
++
++msgid "ro"
++msgstr "ap"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Išeit"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Trint"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Grąžint"
+
+@@ -38,18 +62,18 @@ msgstr "Grąžint"
+ msgid "Select"
+ msgstr "Pasirinkti"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Pagalba"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Tu neturi aliasų"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliasai"
+
+@@ -58,51 +82,51 @@ msgstr "Aliasai"
+ msgid "Alias as: "
+ msgstr "Aliase kaip: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Tu jau apibrėžei aliasą tokiu vardu"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Įspėjimas: šis aliaso vardas gali neveikti. Pataisyti?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresas: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Blogas IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Asmens vardas: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Tinka?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Išsaugoti į bylą: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Klaida bandant skaityti aliasų bylą"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Klaida bandant pridėti aliasą"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Aliasas įdėtas"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Klaida bandant pozicionuoti aliasų bylą"
+
+@@ -111,7 +135,7 @@ msgstr "Klaida bandant pozicionuoti aliasų bylą"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s neegzistuoja. Sukurti ją?"
+@@ -120,8 +144,8 @@ msgstr "%s neegzistuoja. Sukurti ją?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Negaliu sukurti %s: %s"
+@@ -131,7 +155,7 @@ msgstr "Negaliu sukurti %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Sukurti pradinę autocrypt paskyrą?"
+
+@@ -140,7 +164,7 @@ msgstr "Sukurti pradinę autocrypt paskyrą?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Autocrypt paskyros adresas: "
+
+@@ -149,7 +173,7 @@ msgstr "Autocrypt paskyros adresas: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Įveskite vieną el. pašto adresą"
+
+@@ -158,7 +182,7 @@ msgstr "Įveskite vieną el. pašto adresą"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Šis el. pašto adresas jau turi autocrypt paskyrą"
+
+@@ -170,14 +194,14 @@ msgstr "Šis el. pašto adresas jau turi autocrypt paskyrą"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Įjungti šifravimą automatiškai?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Autocrypt paskyra sukurta sėkmingai"
+
+@@ -185,7 +209,7 @@ msgstr "Autocrypt paskyra sukurta sėkmingai"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Autocryt paskyros kūrimas nutrauktas"
+
+@@ -194,7 +218,7 @@ msgstr "Autocryt paskyros kūrimas nutrauktas"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Neradau (galiojančio) autocrypt rakto adresui %s"
+@@ -206,12 +230,12 @@ msgstr "Neradau (galiojančio) autocrypt rakto adresui %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Ieškoti autocrypt antraščių pašto dėžutėje?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Pašto dėžutė"
+
+@@ -222,21 +246,21 @@ msgstr "Pašto dėžutė"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Ieškoti autocrypt antraščių kitoje dėžutėje?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Sukurti"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Trinti"
+
+@@ -244,9 +268,9 @@ msgstr "Trinti"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "(De)aktyvuoti"
+
+@@ -254,17 +278,17 @@ msgstr "(De)aktyvuoti"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Šifr. auto"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "šifruoti automatiškai"
+
+@@ -273,7 +297,7 @@ msgstr "šifruoti automatiškai"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "šifruoti rankomis"
+
+@@ -281,7 +305,7 @@ msgstr "šifruoti rankomis"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "aktyvi"
+
+@@ -289,12 +313,12 @@ msgstr "aktyvi"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "neaktyvi"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt paskyros"
+
+@@ -302,12 +326,12 @@ msgstr "Autocrypt paskyros"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Klaida atnaujinant paskyros įrašą"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Tikrai ištrinti paskyrą \"%s\"?"
+@@ -325,7 +349,7 @@ msgstr "Tikrai ištrinti paskyrą \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Negaliu atidaryti autocrypt duomenų bazės %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "klaida kuriant gpgme kontekstą: %s"
+@@ -398,276 +422,227 @@ msgstr "Autocrypt duomenų bazės versija per nauja"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Pranešimų talpykla nėra katalogas: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Pereiti"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Eiti"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Kaukė"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Sąrašas"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Užsakyti"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Atsisakyti"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Pasivyti"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s nėra katalogas"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Užsakiau naujienų grupes"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Naujienų grupės serveryje [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Pašto dėžutės [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Užsakytos [%s], Bylų kaukė: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Katalogas [%s], Bylų kaukė: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Negaliu prisegti katalogo"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Nė viena byla netinka bylų kaukei"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Kol kas sukurti gali tik IMAP pašto dėžutes"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Kol kas pervadinti gali tik IMAP pašto dėžutes"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Kol kas ištrinti gali tik IMAP pašto dėžutes"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Negaliu ištrinti dabar pažymėtos pašto dėžutės"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Tikrai ištrinti pašto dėžutę \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Pašto dėžutė ištrinta"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Pašto dėžutės ištrinti nepavyko"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Pašto dėžutė neištrinta"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Pereiti į katalogą: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Klaida skaitant katalogą"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Bylų kaukė: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Atvirkščiai rikiuoti pagal (d)atą, (v)ardą, d(y)dį, (a)prašymą, (k)iekį, na(u)jų žinučių kiekį ar (n)erikiuoti?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Rikiuoti pagal (d)atą, (v)ardą, d(y)dį, (a)prašymą, (k)iekį, na(u)jų žinučių kiekį ar (n)erikiuoti?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dvyakun"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Naujos bylos vardas: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Negaliu žiūrėti katalogo"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Klaida bandant žiūrėti bylą"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Užsakymo pattern'as: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Atsisakymo pattern'as: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Nė viena naujienų grupė neatitinka kaukės"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: spalva nepalaikoma terminalo"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: nėra tokios spalvos"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: nėra tokio objekto"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: per mažai argumentų"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: tokio atributo nėra"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: per daug argumentų"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "įprastos spalvos nepalaikomos"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr "Giliausias cituojamo teksto lygmuo yra %d"
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s: blogas skaičius: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Tikrinti parašą?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Negaliu sukurti laikinos bylos"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Negaliu sukurti ekrano filtro"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Negalėjau kopijuoti laiško"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME parašas patikrintas sėkmingai"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME sertifikato savininkas neatitinka siuntėjo"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Dėmesio: dalis pranešimo nebuvo pasirašyta"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME parašas NEGALI būti patikrintas"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP parašas patikrintas sėkmingai"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP parašas NEGALI būti patikrintas"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Klaida vykdant \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Komanda: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Įspėjimas: laiškas neturi From: antraštės"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Nukreipti laišką kam: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Nukreipti pažymėtus laiškus kam: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Klaida nagrinėjant adresą"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -675,48 +650,48 @@ msgstr[0] "Nukreipti laišką į %s?"
+ msgstr[1] "Nukreipti laiškus į %s?"
+ msgstr[2] "Nukreipti laiškus į %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Laiškas nenukreiptas"
+ msgstr[1] "Laiškai nenukreipti"
+ msgstr[2] "Laiškai nenukreipti"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Laiškas nukreiptas"
+ msgstr[1] "Laiškai nukreipti"
+ msgstr[2] "Laiškai nukreipti"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Negaliu sukurti filtro proceso"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Filtruoti per komandą: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Spausdinimo komanda nebuvo apibrėžta"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Spausdinti laišką?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Spausdinti pažymėtus laiškus?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Laiškas atspausdintas"
+ msgstr[1] "Laiškai atspausdinti"
+ msgstr[2] "Laiškai atspausdinti"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Laiškas negalėjo būti atspausdintas"
+@@ -724,148 +699,310 @@ msgstr[1] "Laiškai negalėjo būti atspausdinti"
+ msgstr[2] "Laiškai negalėjo būti atspausdinti"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Atv-Rik (d)ata/n(u)o/g(a)uta/(t)ema/(k)am/(g)ija/(n)erik/d(y)dis/(v)ertė/š(l)amštas/žy(m)ė?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Rik (d)ata/n(u)o/g(a)uta/(t)ema/(k)am/(g)ija/(n)erik/d(y)dis/(v)ertė/š(l)amštas/žy(m)ė?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "duatkgnyvlm"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell komanda: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Dekoduoti ir išsaugoti į dėžutę"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekoduoti ir išsaugoti pažymėtus į dėžutę"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Iššifruoti ir išsaugoti į dėžutę"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Iššifruoti ir išsaugoti pažymėtus į dėžutę"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Išsaugoti į dėžutę"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Išsaugoti pažymėtus į dėžutę"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekoduoti ir kopijuoti į dėžutę"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekoduoti ir kopijuoti pažymėtus į dėžutę"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Iššifruoti ir kopijuoti į dėžutę"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Iššifruoti ir kopijuoti pažymėtus į dėžutę"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Kopijuoti į dėžutę"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopijuoti pažymėtus į dėžutę"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopijuoju į %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Content-Type per ilgas"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Konvertuoti į %s siunčiant?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type pakeistas į %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Koduotė pakeista į %s neperkoduojant"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Koduotė pakeista į %s perkoduojant"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: per mažai argumentų"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: trūksta grupės vardo"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "per mažai argumentų"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Klaida: neįmanoma sukurti kelio iš '%s'"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Klaida: ciklinis konfigūracijos failo '%s' įtraukimas"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Klaida %s, eilutė %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Įspėjimas %s, eilutė %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: klaidos %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: skaitymas nutrauktas, nes %s yra per daug klaidų"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d įspėjimas %s"
++msgstr[1] "source: %d įspėjimai %s"
++msgstr[2] "source: %d įspėjimų %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: nėra adreso"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Įspėjimas: blogas IDN '%s' aliase '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: trūksta dispozicijos"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Dabartiniai priedų nustatymai:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: neteisinga dispozicija"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: per daug argumentų"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: trūksta -rx arba -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: įspėjimas: blogas IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Klaida: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "blogas antraštės laukas"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: nežinomas kintamasis"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s yra išjungtas"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: klaida %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source: byla %s negalėjo būti įtraukta"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: trūksta šablono"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: trūksta šablono"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Užsakiau %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Nepavyko užsakyti %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Nenurodytas aplankas."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: trūksta dispozicijos"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: neteisinga dispozicija"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Atsisakiau %s"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Nepavyko atsisakyti %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Nėra jokių priedų"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Nuo: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Kam: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Kopija: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Slapta kopija: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Tema: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Atsakyti: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Kopija į bylą: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "MixMaster grandis: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Saugumas: "
+
+@@ -876,75 +1013,75 @@ msgstr "Saugumas: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Pasirašyti kaip: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autošifravimas: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Naujienų grupės: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Atsakyti: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Komentuoti: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Siųsti"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Nutraukti"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Kam"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopija"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Tema"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Prisegti bylą"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Apraš"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Grupės"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "išjungtas"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "negalimas"
+
+@@ -952,7 +1089,7 @@ msgstr "negalimas"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "nepatartinas"
+
+@@ -960,14 +1097,14 @@ msgstr "nepatartinas"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "galimas"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "įjungtas"
+
+@@ -977,7 +1114,7 @@ msgstr "įjungtas"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autošifravimas: įjungt(i), išju(n)gti, pasirinkti (a)utomatiškai?"
+
+@@ -985,51 +1122,51 @@ msgstr "Autošifravimas: įjungt(i), išju(n)gti, pasirinkti (a)utomatiškai?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "ina"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Nepalaikomas"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Pasirašyti, užšifruoti"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Užšifruoti"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Pasirašyti"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Jokio"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP tekste)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OpŠifr režimas)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<įprastas>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Užšifruoti: "
+
+@@ -1038,11 +1175,11 @@ msgstr "Užšifruoti: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Rekomendacija: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<nėra grandinės>"
+
+@@ -1053,7 +1190,7 @@ msgstr "<nėra grandinės>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Priedas #%d nebeegzistuoja: %s"
+@@ -1065,233 +1202,352 @@ msgstr "Priedas #%d nebeegzistuoja: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Priedas #%d pasikeitė. Atnaujinti koduotę %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Priedai"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Tu negali ištrinti vienintelio priedo"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Blogas IDN '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Priedas jau yra viršuje"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Esminė dalis negali būti perkelta"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Priedas jau yra apačioje"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Alternatyvų grupavimui reikia bent dviejų pažymėtų laiškų"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Kalbų grupavimui reikia bent dviejų pažymėtų laiškų"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Ne visos dalys turi 'Content-Language' antraštę, tęsti?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Nesiunčiu šito laiško"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Prisegu parinktą bylą..."
+ msgstr[1] "Prisegu parinktas bylas..."
+ msgstr[2] "Prisegu parinktas bylas..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Negaliu prisegti %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Atidaryti dėžutę, iš kurios prisegti laišką"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Atidaryti naujienų grupę, iš kurios prisegti laišką"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Negaliu atidaryti dėžutės %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Nėra laiškų tame aplanke"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Pažymėk laiškus, kuriuos nori prisegti"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Negaliu prisegti"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Perkodavimas keičia tik tekstinius priedus"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Esamas priedas nebus konvertuotas"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Esamas priedas bus konvertuotas"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Tuščia 'Content-Language' antraštė"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Bloga koduotė"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Išsaugoti šio laiško kopiją?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Siųsti priedą vardu: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Pervadinti į: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Negalėjau stat'inti %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nauja byla: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type pavidalas yra rūšis/porūšis"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Nežinomas Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Negaliu sukurti bylos %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Čia turėtų būti priedas, tačiau jo nepavyko padaryti"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Išsaugoti (atidėti) juodraštį?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Įrašyti laišką į dėžutę"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Rašau laišką į %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Laiškas įrašytas"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "PGP nesukonfigūruotas"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME jau pasirinktas. Išjungti ir tęsti?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "S/MIME nesukonfigūruotas"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP jau pasirinktas. Išjungti ir tęsti?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Negaliu papildyti be append-hoook ar close-hook: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Negaliu užrakinti dėžutės"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Išskleidžiu %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Negaliu identifikuoti suspaustos bylos turinio"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Negaliu rasti pašto dėžutės operacijų pašto dėžutės tipui %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Suspaudimo komanda nepavyko: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Papildymui nepalaikomas pašto dėžutės tipas"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Negaliu išsaugoti suspaustos bylos be close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Suspaudžiu %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Papildau suspaustą %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Klaida. Išsaugau laikiną bylą: %s"
+
++#: config/bool.c:70
++#, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Bloga loginė reikšmė: %s"
++
++#: config/bool.c:131
++#, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Bloga loginė reikšmė: %ld"
++
++#: config/enum.c:62
++#, c-format
++msgid "Invalid enum value: %s"
++msgstr "Bloga parametro reikšmė: %s"
++
++#: config/enum.c:149
++#, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Bloga parametro reikšmė: %ld"
++
++#: config/long.c:50
++#, c-format
++msgid "Invalid long: %s"
++msgstr "Blogas skaičius: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, c-format
++msgid "Option %s may not be negative"
++msgstr "Parametras %s negali būti neigiamas"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr "Parametras %s negali būti tuščias"
++
++#: config/number.c:56
++#, c-format
++msgid "Invalid number: %s"
++msgstr "Blogas skaičius: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr "Skaičius per didelis: %s"
++
++#: config/number.c:127
++#, c-format
++msgid "Invalid number: %ld"
++msgstr "Blogas skaičius: %ld"
++
++#: config/quad.c:69
++#, c-format
++msgid "Invalid quad value: %s"
++msgstr "Bloga parametro reikšmė: %s"
++
++#: config/quad.c:133
++#, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Bloga parametro reikšmė: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr "Nėra tokio kintamojo: %s"
++
++#: config/set.c:134 config/set.c:821
++#, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Kintamojo '%s' tipas yra neleistinas (%d)"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, c-format
++msgid "Unknown variable '%s'"
++msgstr "Nežinomas kintamasis '%s'"
++
++#: config/sort.c:192
++#, c-format
++msgid "Invalid sort name: %s"
++msgstr "Bloga rikiavimo tvarka: %s"
++
++#: config/sort.c:322
++#, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Bloga rikiavimo rūšis: %ld"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "%s vartotojo vardas: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s slaptažodis: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "OAUTH atnaujinimo komanda nebuvo apibrėžta"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Nepavyko įvykdyti atnaujinimo komandos"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Komanda grąžino tuščią rezultatą"
++
++#: conn/connaccount.c:191
++#, fuzzy, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr "Skaičius per didelis: %s"
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1312,7 +1568,7 @@ msgstr "Jungiuosi prie %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Nepavyko prisijungti prie %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "nežinoma klaida"
+
+@@ -1326,23 +1582,23 @@ msgstr "Klaida kalbant su %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Prisijungimas prie %s buvo nutrauktas"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Nežinomas SASL profilis"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Klaida išskiriant SASL prisijungimą"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Klaida nustatant SASL saugumo nuostatas"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Klaida nustatant SASL išorinio saugumo stiprumą"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Klaida nustatant SASL išorinį naudotojo vardą"
+
+@@ -1355,132 +1611,108 @@ msgstr "Nepavyko komanda prieš jungimąsi"
+ msgid "Connection to %s closed"
+ msgstr "Prisijungimas prie %s uždarytas"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Pildau entropijos tvenkinį: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s teisės nesaugios"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL išjungtas dėl entropijos trūkumo"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Nežinoma"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[negaliu suskaičiuoti]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[bloga data]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Serverio sertifikatas dar negalioja"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Serverio sertifikatas paseno"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Nepavyko rasti pakankamai entropijos tavo sistemoje"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "nepavyko gauti sertifikato objekto"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "nepavyko gauti sertifikato bendrojo vardo"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "sertifikato savininkas neatitinka serverio vardo %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Šis sertifikatas priklauso: "
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Šis sertifikatas buvo išduotas:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Šis sertifikatas galioja"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " nuo %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " iki %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1 pirštų atspaudas: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA256 pirštų atspaudas: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "SSL sertifikato patikrinimas (sertifikatas nr. %zu iš %zu grandinėje)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "apvr"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(a)tmesti, (p)riimti šįkart, (v)isada priimti, p(r)aleisti"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(a)tmesti, (p)riimti šįkart, (v)isada priimti"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(a)tmesti, (p)riimti šįkart, p(r)aleisti"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(a)tmesti, (p)riimti šįkart"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Išeiti "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Įspėjimas: Negalėjau išsaugoti sertifikato"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sertifikatas išsaugotas"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sertifikato patikrinimas nepavyko: %s"
+@@ -1488,15 +1720,15 @@ msgstr "Sertifikato patikrinimas nepavyko: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Įspėjimas: negaliu nustatyti TLS SNI serverio vardo"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Įvedimo/išvedimo klaida"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL nepavyko: %s"
+@@ -1504,89 +1736,73 @@ msgstr "SSL nepavyko: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Negaliu sukurti SSL konteksto"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Įspėjimas: nepavyko įjungti ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Nepavyko gauti sertifikato iš serverio"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Sertifikato patikrinimo klaida (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Sertifikatas nėra X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Klaida inicializuojant gnutls sertifikato duomenis"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Klaida apdorojant sertifikato duomenis"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ĮSPĖJIMAS: Serverio sertifikatas dar negalioja"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ĮSPĖJIMAS: Serverio sertifikatas paseno"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ĮSPĖJIMAS: Serverio sertifikatas buvo atšauktas"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ĮSPĖJIMAS: Serverio vardas neatitinka sertifikato"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "ĮSPĖJIMAS: Serverio sertifikatas pasirašytas ne sertifikatų tarnybos"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Įspėjimas: Serverio sertifikatas pasirašytas nesaugiu algoritmu"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "apv"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ap"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Visi galimi protokolai TLS/SSL jungčiai išjungti"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Šifro pasirinkimas per $ssl_ciphers nepalaikomas"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS jungtis, naudojant %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Klaida: TLS jungtis neatidaryta"
+
+@@ -1605,7 +1821,7 @@ msgstr "Tunelio klaida kalbant su %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunelis į %s grąžino klaidą %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1613,31 +1829,11 @@ msgstr[0] "Ilgio skaičiavimas suklydo %ld baitu"
+ msgstr[1] "Ilgio skaičiavimas suklydo %ld baitais"
+ msgstr[2] "Ilgio skaičiavimas suklydo %ld baitų"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Nėra iššifravimo mechanizmo laiškui"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "taip"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ne"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Išeiti iš NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Spausk bet kokį klavišą..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' parodo sąrašą): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1659,7 +1855,7 @@ msgstr ""
+ "~M laiškai tas pats kas ~m, be to, įtraukti antraštes\n"
+ "~p spausdinti laišką\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1681,20 +1877,20 @@ msgstr ""
+ "~? ši žinutė\n"
+ ". vienas eilutėje baigia įvedimą\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: blogas laiško numeris.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Užbaik laišką vieninteliu tašku eilutėje)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Nėra dėžutės.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Laiške yra:\n"
+
+@@ -1702,19 +1898,19 @@ msgstr "Laiške yra:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(tęsti)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "trūksta bylos vardo.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Laiške nėra eilučių.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: nežinoma redaktoriaus komanda (~? suteiks pagalbą)\n"
+@@ -1761,19 +1957,73 @@ msgstr "Negaliu pridurti laiško prie aplanko: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "kelių dalių laiškas neturi boundary parametro"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Skirstymas gijomis neleidžiamas"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Uždėti vėliavėlę"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Išvalyti vėliavėlę"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: spalva nepalaikoma terminalo"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: nėra tokios spalvos"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: nėra tokio objekto"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: tokio atributo nėra"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "įprastos spalvos nepalaikomos"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr "Giliausias cituojamo teksto lygmuo yra %d"
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s: blogas skaičius: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "taip"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ne"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Išeiti iš NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Spausk bet kokį klavišą..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' parodo sąrašą): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1794,23 +2044,23 @@ msgstr "[-- Automatinė peržiūra su %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Kviečiu autom. peržiūros komandą: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Negaliu sukurti filtro"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Nepavyko paleisti %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Automatinės peržiūros %s klaidos --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Klaida: message/external-body dalis neturi access-type parametro --]\n"
+
+@@ -1829,7 +2079,7 @@ msgstr "[-- Klaida: message/external-body dalis neturi access-type parametro --]
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1861,7 +2111,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1876,7 +2126,7 @@ msgstr[2] "[-- Šis %s/%s priedas (dydis %s baitų) buvo ištrintas --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1887,12 +2137,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Šis %s/%s priedas buvo ištrintas --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- vardas: %s --]\n"
+@@ -1900,7 +2150,7 @@ msgstr "[-- vardas: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1915,7 +2165,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1924,91 +2174,91 @@ msgstr ""
+ "[-- Šis %s/%s priedas neįtrauktas, --]\n"
+ "[-- o nurodytas pasiekimo tipas %s yra nepalaikomas. --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Klaida: Nepavyko parodyti nė vienos Multipart/Alternative dalies --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Priedas #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Priedas #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Viena ar daugiau laiško dalių negalėjo būti parodyta"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Negaliu atidaryti atminties srauto"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Negaliu atidaryti laikinos bylos"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "nepavyko iš naujo atidaryti atminties srauto"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Klaida: multipart/signed neturi protokolo"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Čia yra priedas (naudok '%s' šiai daliai peržiūrėti) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s yra nepalaikomas (naudok '%s' šiai daliai peržiūrėti) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Čia yra priedas ('view-attachments' turi būti susietas su klavišu) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s yra nepalaikomas ('view-attachments' turi būti susietas su klavišu) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Čia yra priedas --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s yra nepalaikomas --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "KLAIDA: prašau pranešti šią klaidą"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<NEŽINOMAS>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Bendri susiejimai:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Nesusietos funkcijos:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Pagalba apie %s"
+@@ -2025,41 +2275,41 @@ msgstr "pašto dėžutės trumpinys išplėstas atitinka tuščią šabloną"
+ msgid "badly formatted command string"
+ msgstr "blogai suformuota komanda"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: negalima išmesti kablių kablio viduje"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: nežinomas hook tipas: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: negaliu išmesti %s %s viduje"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: nėra tokio meniu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: šiame meniu nėra susiejimų"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: šiame meniu nėra makrokomandų"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Negaliu sukurti laikinos bylos %s"
+@@ -2096,28 +2346,28 @@ msgstr "GSSAPI autentikacija nepavyko"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN išjungtas šiame serveryje"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Pasisveikinu..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Nepavyko pasisveikinti"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autentikuojuosi (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER autentikacija nepavyko."
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autentikuojuosi (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL autentikacija nepavyko"
+
+@@ -2164,73 +2414,63 @@ msgstr "Nepavyko pervadinti: %s"
+ msgid "Mailbox renamed"
+ msgstr "Pašto dėžutė pervadinta"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Pašto dėžutė %s@%s uždaryta"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Prisijungimui prie %s pasibaigė laikas"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Šis IMAP serveris yra senoviškas. NeoMutt su juo neveikia."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Antraščių paieška be antraštės pavadinimo: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Serverinė paieška nepalaikoma: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE komanda nepavyko: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Uždarau jungtį su %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Apsaugoti jungtį su TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Nepavyko sukurti TLS jungties"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Šifruota jungtis negalima"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Užsakau %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Atsisakau %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Užsakiau %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Atsisakiau %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2238,16 +2478,16 @@ msgstr[0] "Kopijuoju %d laišką į %s..."
+ msgstr[1] "Kopijuoju %d laiškus į %s..."
+ msgstr[2] "Kopijuoju %d laiškų į %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Sukurti %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Ištrynimas nepavyko"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2256,7 +2496,7 @@ msgstr[1] "Pažymiu %d laiškus ištrintais..."
+ msgstr[2] "Pažymiu %d laiškų ištrintais..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2264,36 +2504,36 @@ msgstr[0] "Išsaugau pasikeitusį laišką... [%d/%d]"
+ msgstr[1] "Išsaugau pasikeitusius laiškus... [%d/%d]"
+ msgstr[2] "Išsaugau pasikeitusius laiškus... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Nepavyko išsaugoti vėliavėlių. Vis tiek uždaryti?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Klaida išsaugant vėliavėles"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Ištuštinu laiškus iš serverio..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE komanda nepavyko"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Parenku %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Klaida atidarant pašto dėžutę"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP serveris nepalaiko savadarbių vėliavėlių"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Blogos IMAP vėliavėlės"
+
+@@ -2303,7 +2543,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Nutraukti siuntimą ir uždaryti pašto dėžutę?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Baigėsi atmintis"
+
+@@ -2321,7 +2561,7 @@ msgstr "Paimu vėliavėlių pakeitimus..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Negaliu paimti antraščių iš šios IMAP serverio versijos"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Paimu laiškų antraštes..."
+
+@@ -2334,152 +2574,152 @@ msgstr "Nusiunčiu laišką..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopijuoju laišką %d į %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Paimu laišką..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Laiškų indeksas yra neteisingas. Bandyk iš naujo atidaryti dėžutę."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Tęsti?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Išeit"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Saugoti"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Rašyt"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Atsakyt"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupei"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Siųsti"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Pratęsti"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Jokia dėžutė neatidaryta"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Ten nėra laiškų"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Nėra matomų laiškų"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Dėžutė yra tik skaitoma"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funkcija neleistina laiško prisegimo režime"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: veiksmas neleidžiamas pagal ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Negaliu perjungti tik skaitomos dėžutės rašomumo"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Aplanko pakeitimai bus įrašyti išeinant iš aplanko"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Aplanko pakeitimai nebus įrašyti"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s nėra pašto dėžutė"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Dėžutė buvo išoriškai pakeista. Flagai gali būti neteisingi."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Naujas paštas šioje dėžutėje"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Pašto dėžutė buvo išoriškai pakeista"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Nėra pažymėtų laiškų"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nėra, ką daryti"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Įvesk laiško ID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Straipsnis neturi nuorodos į tėvinį straipsnį"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Laiškas nematomas ribotame vaizde"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Siunčiu %s iš serverio..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Straipsnis %s nerastas serveryje"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Nėra Message-Id antraštės. Negaliu atlikti operacijos."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Šioje gijoje nėra ištrintų laiškų"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Šokti į laišką: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argumentas turi būti laiško numeris"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Blogas laiško numeris"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Tas laiškas yra nematomas"
+
+@@ -2492,37 +2732,37 @@ msgstr "Tas laiškas yra nematomas"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Negaliu ištrinti laiškų"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Ištrinti laiškus, tenkinančius: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Joks ribojimo pattern'as nėra naudojamas"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Riba: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Riboti iki laiškų, tenkinančių: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Norėdami matyti visus laiškus apribokite iki \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Išeiti iš NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Pažymėti laiškus, tenkinančius: "
+
+@@ -2530,195 +2770,195 @@ msgstr "Pažymėti laiškus, tenkinančius: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Negaliu atstatyti ištrintų laiškų"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Sugrąžinti laiškus, tenkinančius: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Atžymėti laiškus, tenkinančius: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Atsijungiau nuo IMAP serverių"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Nėra virtualaus aplanko nei Message-Id, nutraukiu"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Nepavyko sukurti užklausos, atšaukiu"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr "Neradau laiško notmuch duomenų bazėje. Pabandykite vykdyti 'notmuch new'."
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Nepavyko perskaityti gijos, nutraukiu"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Katalogas nepalaiko etikečių, nutraukiu"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Nėra etiketės, nutraukiu"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Atnaujinu etiketes..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Nepavyko atnaujinti etikečių, nutraukiu"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Nėra užklausos, nutraukiu"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Langų užklausos išjungtos"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Joks notmuch virtualaus aplanko šiuo metu nėra užkrautas"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Atidaryti dėžutę tik skaitymo režimu"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Atidaryti dėžutę"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Nėra dėžučių su nauju paštu"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Atidaryti naujienų grupę tik skaitymo režimu"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Atidaryti naujienų grupę"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Išeiti iš NeoMutt neišsaugojus pakeitimų?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Negaliu perskelti gijos"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Gija perskelta"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Gija negali būti perskelta: laiškas nėra gijoje"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Negaliu sujungti gijų"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Nėra Message-ID: antraštės, pagal kurią būtų galima sujungti gijas"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Pirmiausia pažymėk laišką, kurį reikia prijungti čia"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Gijos sujungtos"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Gijos nesujungtos"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Tu esi ties paskutiniu laišku"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Nėra ištrintų laiškų"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Tu esi ties pirmu laišku"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Nėra naujų laiškų ribotame vaizde"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Nėra naujų laiškų"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Nėra neskaitytų laiškų ribotame vaizde"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Nėra neskaitytų laiškų"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Paieška peršoko į viršų"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Paieška peršoko į apačią"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Negaliu pakeisti pakeisti laiško vėliavėlių"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Negaliu pakeisti naujumo"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Daugiau gijų nėra"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Tu esi ties pirma gija"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Gijoje yra neskaitytų ar vėliavėle pažymėtų laiškų"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Negaliu ištrinti laiško"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Negaliu redaguoti laiško"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2729,7 +2969,7 @@ msgstr[2] "%d etikečių pakeista"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Etiketės nepakeistos"
+
+@@ -2737,276 +2977,140 @@ msgstr "Etiketės nepakeistos"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Negaliu pažymėti laiškų kaip skaitytų"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Įvesk makrokomandą: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "šokti į pažymėtą laišką"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Laiško makrokomanda %s sukurta"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Laiškas neturi ID"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Atsakyti paštu, kaip pageidauja autorius?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Siuntimas į šią grupę neleidžiamas, gali būti moderuotas. Tęsti?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Negaliu atstatyti ištrinto laiško"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Klaida komandinėje eilutėje: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Įspėjimas komandinėje eilutėje: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "negaliu nustatyti kompiuterio vardo per uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: trūksta grupės vardo"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "per mažai argumentų"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Klaida: neįmanoma sukurti kelio iš '%s'"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Klaida: ciklinis konfigūracijos failo '%s' įtraukimas"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Klaida %s, eilutė %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Įspėjimas %s, eilutė %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: klaidos %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: skaitymas nutrauktas, nes %s yra per daug klaidų"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d įspėjimas %s"
+-msgstr[1] "source: %d įspėjimai %s"
+-msgstr[2] "source: %d įspėjimų %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: nėra adreso"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Įspėjimas: blogas IDN '%s' aliase '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: trūksta dispozicijos"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Dabartiniai priedų nustatymai:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: neteisinga dispozicija"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: trūksta -rx arba -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: įspėjimas: blogas IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Klaida: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "blogas antraštės laukas"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: nežinomas kintamasis"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s yra išjungtas"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: klaida %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source: byla %s negalėjo būti įtraukta"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: trūksta šablono"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: trūksta šablono"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Nepavyko užsakyti %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Nenurodytas aplankas."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: trūksta dispozicijos"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: neteisinga dispozicija"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Nepavyko atsisakyti %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: nežinoma komanda"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "'charset' turi nurodyti vieną koduotės pavadinimą"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Bloga parametro %s reikšmė: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Negalima įjungti/išjungti parametro %s skaitant laišką"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Negalima įjungti parametro %s laiško prisegimo režime"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr "Parinktis %s turi būti tarp 78 ir 998 imtinai"
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Klavišo '%s' susiejimas paslėps '%s' Prieš tai darykite 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Rastas ciklas makrokomandoje"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klavišas nėra susietas"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klavišas nėra susietas. Spausk '%s' dėl pagalbos."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: nulinė klavišų seka"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Funkcija '%s' neprieinama iš '%s' meniu"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: tuščia klavišų seka"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: nėra argumentų"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: nėra tokios funkcijos"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Paspausk klavišus (^G nutraukia): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Simbolis = %s, aštuonetaine sistema = %o, dešimtaine = %d"
+@@ -3030,7 +3134,7 @@ msgstr "mailcap įrašas tipui %s nerastas"
+ msgid "Scanning %s..."
+ msgstr "Skaitau %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Skaitau %s..."
+@@ -3044,13 +3148,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): nepavyko nustatyti bylos laiko"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Rašau %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3091,7 +3195,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3175,54 +3279,54 @@ msgstr ""
+ " -z Atidaryti pirmą arba nurodytą (-f) pašto dėžutę jei joje yra\n"
+ " laiškų arba iškart išeiti su klaidos kodu 1"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Klaida inicializuojant terminalą"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "negaliu nustatyti vartotojo vardo"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "negaliu nustatyti namų katalogo"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Klaida: -d reikšmė '%s' yra netinkama"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Nepavyko išanalizuoti mailto: nuorodos"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nenurodyti jokie gavėjai"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Negalima naudoti -E rakto su standartine įvestimi"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Nepavyko išanalizuoti laiško šablono: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: negalėjau prisegti bylos"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Nėra dėžutės su nauju paštu"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Neapibrėžta nė viena paštą gaunanti dėžutė"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Dėžutė yra tuščia"
+
+@@ -3264,52 +3368,52 @@ msgstr "Negaliu vėl atidaryti dėžutės"
+ msgid "Can't write message"
+ msgstr "Negaliu įrašyti laiško"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Šokti į: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Blogas indekso numeris"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Nėra įrašų"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Tu negali slinkti žemyn daugiau"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Tu negali slinkti aukštyn daugiau"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Tu esi pirmame puslapyje"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Tu esi paskutiniame puslapyje"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Tu esi ties paskutiniu įrašu"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Tu esi ties pirmu įrašu"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Ieškoti ko: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Atgal ieškoti ko: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nerasta"
+
+@@ -3352,20 +3456,20 @@ msgstr "Laukiu fcntl užrakto... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Blogas istorijos bylos formatas (eilutė %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Negaliu sukurti laikinos bylos"
+
+@@ -3384,7 +3488,7 @@ msgstr "Derinimo lygis %d į bylą '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Žurnalo lygis %d į bylą '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Klaida: absoliutinant kelią"
+
+@@ -3407,17 +3511,17 @@ msgstr "Sugavau signalą %d (%s) ... Išeinu.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Sugavau signalą %d ... Išeinu.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "/dev/urandom atidarymas: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "/dev/urandom skaitymas: %s"
+@@ -3425,146 +3529,119 @@ msgstr "/dev/urandom skaitymas: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Byla yra katalogas, saugoti joje? (t)aip, (n)e, (v)isiems"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "tnv"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Byla yra katalogas, saugoti joje?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Byla kataloge: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Byla egzistuoja, (u)žrašyti, (p)ridurti, arba (n)utraukti?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "upn"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Negaliu išsaugoti laiško į POP dėžutę"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Pridurti laiškus prie %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Negaliu išsaugoti laiško naujienų serveryje"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "%s vartotojo vardas: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s slaptažodis: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "OAUTH atnaujinimo komanda nebuvo apibrėžta"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Nepavyko įvykdyti atnaujinimo komandos"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Komanda grąžino tuščią rezultatą"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Negaliu rasti tinkančio vardo, tęsti?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap kūrimo įrašui reikia %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Nepavyko atidaryti bylos antraštėms nuskaityti"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Nepavyko atidaryti bylos antraštėms išmesti"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Nepavyko pervadinti bylos"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Nėra mailcap kūrimo įrašo %s, sukuriu tuščią bylą"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap Taisymo įrašui reikia %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Nėra mailcap taisymo įrašo tipui %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Neradau tinkamo mailcap įrašo. Rodau kaip tekstą."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME tipas neapibrėžtas. Negaliu parodyti priedo."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Komanda: %-20.20s Aprašymas: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Komanda: %-30.30s Priedas: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Priedas: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Priedas: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Rašymo nesėkmė"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Aš nežinau, kaip tai atspausdinti"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Ieškoti"
+
+@@ -3573,21 +3650,21 @@ msgstr "Ieškoti"
+ msgid "History '%s'"
+ msgstr "Istorija '%s''"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Bloga parametro %s reikšmė: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Klaida: nepavyko įkelti lua interpretatoriaus"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Nepavyko įvykdyti lua bylos: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Naujas paštas dėžutėje "
+
+@@ -3608,20 +3685,20 @@ msgstr "Šakninis laiškas nematomas šiame ribotame vaizde"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Tėvinis laiškas nematomas šiame ribotame vaizde"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Skaitymas iš %s pertrauktas..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Negaliu rašyti %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "laiškas neištrintas"
+@@ -3632,13 +3709,13 @@ msgstr[2] "laiškai neištrinti"
+ msgid "Can't open trash folder"
+ msgstr "Negaliu atidaryti šiukšlių aplanko"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Pažymėti visus straipsnius skaitytais?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3646,7 +3723,7 @@ msgstr[0] "Perkelti %d skaitytą laišką į %s?"
+ msgstr[1] "Perkelti %d skaitytus laiškus į %s?"
+ msgstr[2] "Perkelti %d skaitytų laiškų į %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3654,49 +3731,49 @@ msgstr[0] "Sunaikinti %d ištrintą laišką?"
+ msgstr[1] "Sunaikinti %d ištrintus laiškus?"
+ msgstr[2] "Sunaikinti %d ištrintų laiškų?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Perkeliu skaitytus laiškus į %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Dėžutė yra nepakeista"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d palikti, %d perkelti, %d ištrinti"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d palikti, %d ištrinti"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Spausk '%s', kad perjungtum rašymą"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Naudok 'toggle-write', kad vėl galėtum rašyti"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Dėžutė yra padaryta neįrašoma. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Dėžutė sutikrinta"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (dabartinis laikas: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Toliau %s išvestis%s --]\n"
+@@ -3705,52 +3782,52 @@ msgstr "[-- Toliau %s išvestis%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Slaptos frazės pamirštos"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline PGP negalima naudoti jei laiškas turi priedų. Naudoti PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Laiškas neišsiųstas: inline PGP negalima naudoti, jei laiškas turi priedų"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline PGP negalima naudoti su format=flowed. Naudoti PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Laiškas neišsiųstas: inline PGP negalima naudoti su format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Kviečiu PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Laiško nepavyko išsiųsti inline formatu. Naudoti PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Laiškas neišsiųstas"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME laiškai be turinio užuominų nepalaikomi"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Bandau išgauti PGP raktus...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Bandau išgauti S/MIME sertifikatus..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3759,7 +3836,7 @@ msgstr ""
+ "[-- Klaida: Nežinomas multipart/signed protokolas %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3767,7 +3844,7 @@ msgstr ""
+ "[-- Klaida: Trūksta multipart/signed parašo arba jis blogo formato --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3776,7 +3853,7 @@ msgstr ""
+ "[-- Dėmesio: Negaliu patikrinti %s/%s parašo. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3784,7 +3861,7 @@ msgstr ""
+ "[-- Toliau einantys duomenys yra pasirašyti --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3792,7 +3869,7 @@ msgstr ""
+ "[-- Dėmesio: Negaliu rasti jokių parašų --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3811,229 +3888,229 @@ msgstr "Kviečiu S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Vardas: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "taip pat: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Galioja nuo: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Galioja iki: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Rakto tipas: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Rakto naudojimas: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Pirštų atspaudas: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Serijinis nr.: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Išduotas: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Poraktis: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "klaida įjungiant CMS protokolą: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "klaida kuriant gpgme duomenų objektą: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "klaida išskiriant atmintį duomenų objektui: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "klaida atsukant duomenų objektą: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[tempfile]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "klaida skaitant duomenų objektą: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "klaida pridedant gavėją '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "slaptas raktas '%s' nerastas: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "nevienprasmė slapto rakto specifikacija '%s'\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "klaida nustatant slaptą raktą '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "klaida nustatant PKA parašo notaciją: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "klaida užšifruojant duomenis: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "klaida pasirašant duomenis: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as nenustatytas ir ~/.gnupg/gpg.conf nenurodytas nutylėtas raktas"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Įspėjimas: vienas iš raktų buvo atšauktas\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Įspėjimas: pasirašymo rakto galiojimas baigėsi "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Įspėjimas: baigėsi bent vieno sertifikavimo rakto galiojimas\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Įspėjimas: parašo galiojimas baigėsi "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Negaliu patikrinti nes trūksta rakto arba sertifikato\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL nepasiekiamas\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Pasiekiamas CRL per senas\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Vienas iš reikalavimų neįvykdytas\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Įvyko sistemos klaida"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "ĮSPĖJIMAS: PKA įrašas neatitinka pasirašiusiojo adreso: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA patikrinto pasirašiusiojo adresas yra "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "ĮSPĖJIMAS: NEŽINOME ar raktas tikrai priklauso aukščiau paminėtam asmeniui\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ĮSPĖJIMAS: raktas NEPRIKLAUSO aukščiau paminėtam asmeniui\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ĮSPĖJIMAS: NESAME tikri, kad raktas priklauso aukščiau paminėtam asmeniui\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "Rakto ID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "nėra parašo pirštų atspaudo"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "sukurtas: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Klaida gaunant rakto informaciją raktui %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Geras parašas:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*BLOGAS* parašas:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Įtartinas parašas:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " galioja iki: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Parašo informacija --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Klaida: patikrinimas nepavyko: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Notacija (%s parašas) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Notacijos pabaiga ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4041,7 +4118,7 @@ msgstr ""
+ "[-- Parašo informacijos pabaiga --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4050,21 +4127,26 @@ msgstr ""
+ "[-- Klaida: iššifravimas nepavyko: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Klaida importuojant raktą: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Klaida: iššifravimas/verifikavimas nepavyko: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP laiškas sėkmingai iššifruotas"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Klaida: duomenų kopijavimas nepavyko\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4072,11 +4154,11 @@ msgstr ""
+ "[-- PGP LAIŠKO PRADŽIA --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP VIEŠO RAKTO BLOKO PRADŽIA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4084,19 +4166,19 @@ msgstr ""
+ "[-- PGP PASIRAŠYTO LAIŠKO PRADŽIA --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP LAIŠKO PABAIGA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP VIEŠO RAKTO BLOKO PABAIGA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP PASIRAŠYTO LAIŠKO PABAIGA --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4104,11 +4186,11 @@ msgstr ""
+ "[-- Klaida: neradau PGP laiško pradžios --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Klaida: negalėjau sukurti laikinos bylos --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4116,7 +4198,7 @@ msgstr ""
+ "[-- Toliau einantys duomenys yra užšifruoti ir pasirašyti su PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4124,24 +4206,20 @@ msgstr ""
+ "[-- Toliau einantys duomenys yra užšifruoti su PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME užšifruotų ir pasirašytų duomenų pabaiga --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME užšifruotų duomenų pabaiga --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP laiškas sėkmingai iššifruotas"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Negalėjau iššifruoti PGP laiško"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4149,7 +4227,7 @@ msgstr ""
+ "[-- Toliau einantys duomenys yra pasirašyti su S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4157,34 +4235,34 @@ msgstr ""
+ "[-- Toliau einantys duomenys yra užšifruoti su S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME pasirašytų duomenų pabaiga --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME užšifruotų duomenų pabaiga --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Negaliu parodyti naudotojo ID (nežinoma koduotė)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Negaliu parodyti naudotojo ID (neteisinga koduotė)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Negaliu parodyti naudotojo ID (neteisingas DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Blogas]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4193,94 +4271,94 @@ msgstr[1] "%s, %lu bitų %s\n"
+ msgstr[2] "%s, %lu bitų %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "šifravimui"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "pasirašymui"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "sertifikavimui"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Atšauktas]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Pasenęs]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Uždraustas]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Renku duomenis..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Klaida ieškant išdavėjo rakto: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Klaida: sertifikavimo grandinė per ilga - stoju čia\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Rakto ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start nepavyko: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next nepavyko: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Visi rasti raktai pažymėti kaip pasenę arba atšaukti"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Pasirink "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Tikrinti raktą "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP ir S/MIME raktai, atitinkantys"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP raktai, atitinkantys"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME raktai, atitinkantys"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "raktai, atitinkantys"
+
+@@ -4288,55 +4366,55 @@ msgstr "raktai, atitinkantys"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Šis raktas negali būti naudojamas: jis pasenęs/uždraustas/atšauktas"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID pasenęs/uždraustas/atšauktas. Ar tikrai nori naudoti šį raktą?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID yra nepatikimas. Ar tikrai nori naudoti šį raktą?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID yra tik vos vos patikimas. Ar tikrai nori naudoti šį raktą?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID patikimumas nežinomas. Ar tikrai nori naudoti šį raktą?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Ieškau raktų, tenkinančių \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "Neradau raktų, tenkinančių \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Naudoti raktą ID = \"%s\", skirtą %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Įvesk rakto ID, skirtą %s: "
+@@ -4345,15 +4423,15 @@ msgstr "Įvesk rakto ID, skirtą %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Slaptų raktų nerasta"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Prašau, įvesk rakto ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Klaida eksportuojant raktą: %s"
+@@ -4361,92 +4439,92 @@ msgstr "Klaida eksportuojant raktą: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP raktas 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP protokolas nepasiekiamas"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS protokolas nepasiekiamas"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: pa(s)irašyti, pasirašyt k(a)ip, (p)gp, (n)ereikia ar išjungti (o)portunistinį šifravimą?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapno"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: pa(s)irašyti, pasirašyt k(a)ip, s/(m)ime, (n)ereikia ar išjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samno"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, (p)gp, (n)ereikia ar įjungti (o)portunistinį šifravimą?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "šsabpno"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, s/(m)ime, (n)ereikia ar įjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "šsabmno"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, (p)gp ar (n)ereikia?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "šsabpn"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, s/(m)ime ar (n)ereikia?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "šsabmn"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Nepavyko patikrinti siuntėjo"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Nepavyko išsiaiškinti, kas siuntėjas"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Įvesk slaptą PGP frazę:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Klaida: negaliu sukurti PGP subproceso --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4457,15 +4535,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP laiškas nebuvo užšifruotas"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Vidinė klaida. Prašau apie ją pranešti programos autoriams."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4473,125 +4551,125 @@ msgstr ""
+ "[-- Klaida: negalėjau sukurti PGP subproceso --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Nepavyko iššifruoti"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Negaliu atidaryti PGP subproceso"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Negaliu kviesti PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: pa(s)irašyti, pasirašyti k(a)ip, %s formatu, (n)ereikia ar išjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saino"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: pa(s)irašyti, pasirašyti k(a)ip, (n)ereikia ar išjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "sano"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, %s formatu, (n)ereikia ar įjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "šsabino"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, (n)ereikia, ar įjungti (o)portunistinį šifravimą?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "šsabno"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u, %s formatu ar (n)ereikia?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "šsabin"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP: (š)ifruoti, pa(s)irašyti, pasirašyti k(a)ip, a(b)u ar (n)ereikia?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "šsabn"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Paimu PGP raktą..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Visi rasti raktai yra pasenę, atšaukti ar uždrausti"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP raktai, tenkinantys <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP raktai, tenkinantys \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Negaliu atidaryti /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP raktas %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Įvesk slaptą S/MIME frazę:"
+
+@@ -4600,7 +4678,7 @@ msgstr "Įvesk slaptą S/MIME frazę:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Pasenęs "
+
+@@ -4609,7 +4687,7 @@ msgstr "Pasenęs "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Blogas "
+
+@@ -4618,7 +4696,7 @@ msgstr "Blogas "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Atšauktas "
+
+@@ -4627,7 +4705,7 @@ msgstr "Atšauktas "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Patikimas "
+
+@@ -4636,7 +4714,7 @@ msgstr "Patikimas "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Netikrintas"
+
+@@ -4645,7 +4723,7 @@ msgstr "Netikrintas"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Patikrintas"
+
+@@ -4654,58 +4732,58 @@ msgstr "Patikrintas"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Nežinomas "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME sertifikatai, atitinkantys \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Šis ID yra nepatikimas. Ar tikrai nori naudoti šį raktą?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Įvesk rakto ID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Neradau (galiojančio) %s sertifikato"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Klaida: negaliu sukurti OpenSSL subproceso"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Sertifikato etiketė: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "nėra sertifikato bylos"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "(nėra dėžutės)"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Trūksta OpenSSL išvesties..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Negaliu pasirašyti: nenurodytas raktas. Naudokite \"Pasirašyti kaip\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Negaliu atidaryti OpenSSL subproceso"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4713,19 +4791,19 @@ msgstr ""
+ "[-- OpenSSL išvesties pabaiga --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Klaida: negaliu sukurti OpenSSL subproceso --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Toliau einantys duomenys yra užšifruoti su S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Toliau einantys duomenys yra pasirašyti su S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4733,7 +4811,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME užšifruotų duomenų pabaiga. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4742,160 +4820,160 @@ msgstr ""
+ "[-- S/MIME pasirašytų duomenų pabaiga. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: pa(s)irašyti, šifruo(t)i su, pasirašyti k(a)ip, (n)ereikia ar išjungti (o)portunistinį šifravimą?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "stano"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (š)ifruoti, pa(s)irašyti, šifruo(t)i su, pasirašyt k(a)ip, a(b)u, (n)ereikia ar įjungti (o)portunistinį šifravimą?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "šstabno"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME: (š)ifruoti, pa(s)irašyti, užšifruo(t)i su, pasirašyt k(a)ip, a(b)u ar (n)ereikia?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "šstabn"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Pasirinkite algoritmą: (1) DES, (2) RC2, (3) AES ar (n)ereikia?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123n"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) 3DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Užkraunu sąrašą grupių iš podėlio..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Nenurodytas nė vienas naujienų serveris"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s yra bloga naujienų serverio specifikacija"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Serveris uždarė jungtį"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Serveris nepalaiko skaitymo režimo"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Nėra autentikatorių."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s autentikacija nepavyko"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Prisijungimas prie %s nutrūko. Prisijungti iš naujo?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Paimu straipsnių sąrašą..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Tikrinu, ar yra naujų laiškų..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Negalėjau persijungti į skaitymo režimą"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Prisijungiau prie %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Siuntimas leidžiamas"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Siuntimas NELEIDŽIAMAS"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Negaliu išsiųsti straipsnio: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Siunčiuosi grupių sąrašą iš serverio %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Užkraunu aprašus..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Tikrinu, ar yra naujų naujienų grupių..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Negaliu rasti vaikinių straipsnių nes serveris nepalaiko XPAT komandos"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s yra bloga naujienų grupės specifikacija"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Naujienų grupė %s nerasta serveryje"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Naujienų grupė %s buvo pašalinta iš serverio"
+@@ -4907,8 +4985,8 @@ msgstr "nepavyko išanalizuoti notmuch užklausos tipo: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "nepavyko išanalizuoti notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "nepavyko išanalizuoti notmuch url: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5998,182 +6076,182 @@ msgstr "rodyti/slėpti šoninę juostą"
+ msgid "show S/MIME options"
+ msgstr "rodyti S/MIME parinktis"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Neprieinama šiame meniu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PraPsl"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "KitPsl"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Priedai"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Kitas"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "visi"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "pabaiga"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Rodoma laiško apačia"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Rodomas laiško viršus"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Šiuo metu rodoma pagalba"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Cituojamo teksto nebėra"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Nėra daugiau necituojamo teksto už cituojamo"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Klaida išraiškoje: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Tuščia išraiška"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "Paieškos komanda nebuvo apibrėžta"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Kviečiu paieškos komandą: %s ..."
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Bloga mėnesio diena: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Blogas mėnuo: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Bloga data: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Nėra dabartinio laiško"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "Nėra konteksto"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Klaida atidarant atminties srautą"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Klaida atidarant atminties srautą iš naujo"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Klaida atidarant /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "klaida pattern'e: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "trūksta šablono: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "trūkstami skliausteliai: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: blogas šablono modifikatorius"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: nepalaikomas šiame režime"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "trūksta parametro"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "tuščias pattern'as"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "klaida: serverio paieška palaikoma tik su IMAP"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "klaida: nežinoma operacija %d (praneškite šią klaidą)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompiliuoju paieškos pattern'ą..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Vykdau komandą tinkantiems laiškams..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Jokie laiškai netenkina kriterijaus"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Ieškau..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Paieška pasiekė apačią nieko neradusi"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Paieška pasiekė viršų nieko neradusi"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Paieška pertraukta"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Serveris nepalaiko komandos TOP"
+
+@@ -6181,7 +6259,7 @@ msgstr "Serveris nepalaiko komandos TOP"
+ msgid "Can't write header to temporary file"
+ msgstr "Negaliu įrašyti antraštės į laikiną bylą"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Serveris nepalaiko komandos UIDL"
+
+@@ -6197,7 +6275,7 @@ msgstr[2] "%d laiškų pradingo. Bandyk iš naujo atidaryti dėžutę."
+ msgid "POP host is not defined"
+ msgstr "POP hostas nenurodytas"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s yra blogas POP kelias"
+@@ -6232,126 +6310,126 @@ msgstr[0] "%s [%d iš %d laiško perskaityta]"
+ msgstr[1] "%s [%d iš %d laiškų perskaityta]"
+ msgstr[2] "%s [%d iš %d laiškų perskaityta]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Paimu laiškų sąrašą..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Pažymiu laiškus ištrintais..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Negaliu įrašyti laiško į laikiną bylą"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autentikuojuosi (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP laikas neteisingas"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autentikuojuosi (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP autentikacija nepavyko"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Serveris nepalaiko komandos USER"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Autentikacija nepavyko"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Blogas POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Negaliu palikti laiškų serveryje"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Klaida jungiantis prie IMAP serverio: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Uždarau jungtį su POP serveriu..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Tikrinu laiškų indeksus..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Jungtis prarasta. Vėl prisijungti prie POP serverio?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Atidėti laiškai"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Nėra atidėtų laiškų"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Neleistina S/MIME antraštė"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Neleistina šifro antraštė"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Iššifruoju laišką..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nauja užklausa"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Padaryti aliasą"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Laukiu atsakymo..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Užklausa: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Užklausa '%s''"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Užklausos komanda nenurodyta"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Pipe"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Spausdinti"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Išsaugau..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6359,26 +6437,26 @@ msgstr[0] "%d priedas išsaugotas"
+ msgstr[1] "%d priedai išsaugoti"
+ msgstr[2] "%d priedų išsaugota"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "DĖMESIO! Tu žadi užrašyti ant seno %s, tęsti"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Priedas perfiltruotas"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtruoti per: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Pipe į: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Aš nežinau kaip spausdinti %s priedus"
+@@ -6386,7 +6464,7 @@ msgstr "Aš nežinau kaip spausdinti %s priedus"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6394,48 +6472,48 @@ msgstr[0] "Spausdinti %d pažymėtą priedą?"
+ msgstr[1] "Spausdinti %d pažymėtus priedus?"
+ msgstr[2] "Spausdinti %d pažymėtų priedus?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Spausdinti priedą?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Struktūriniai iššifruotų priedų pakeitimai nepalaikomi"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Negaliu iššifruoti užšifruoti laiško"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Priedai"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Nėra vidinių dalių"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Negaliu ištrinti priedo iš POP serverio"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Negaliu ištrinti priedo iš naujienų serverio"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Užšifruotų laiškų priedų ištrynimas nepalaikomas"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Pasirašytų laiškų priedų ištrynimas gali sugadinti parašą"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Palaikomas trynimas tik iš keleto dalių priedų"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Tu gali nukreipti tik message/rfc822 priedus"
+
+@@ -6472,7 +6550,7 @@ msgstr "Negaliu sukurti %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Negaliu rasti nė vieno pažymėto laiško"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Nerasta jokia konferencija"
+
+@@ -6486,67 +6564,67 @@ msgstr "Negaliu dekoduoti visų pažymėtų priedų. Enkapsuliuoti kitus MIME f
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Tu gali sukurti naują laišką tik message/rfc822 priedo siuntėjui"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Pridurti"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Įterpti"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Gerai"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<atsitiktinis>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Negaliu gauti mixmaster'io type2.list"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Pasirink persiuntėjų grandinę"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Klaida: %s negali būti naudojamas kaip galutinis persiuntėjas grandinėje"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster'io grandinės turi būti ne ilgesnės nei %d elementų"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Persiuntėjų grandinė jau tuščia"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Tu jau pasirinkai pirmą grandinės elementą"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Tu jau pasirinkai paskutinį grandinės elementą"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster'is nepriima Cc bei Bcc antraščių"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Teisingai nustatyk hostname kintamąjį, kai naudoji mixmaster'į"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Klaida siunčiant laišką, klaidos kodas %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Klaida siunčiant laišką"
+
+@@ -6576,41 +6654,41 @@ msgstr "Persiųsti priedus?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Atsakyti %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Pratęsti-į %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Įtraukti laišką į atsakymą?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Įtraukiu cituojamą laišką..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Negalėjau įtraukti visų prašytų laiškų"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Persiųsti kaip priedą?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Paruošiu persiunčiamą laišką..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc į IMAP dėžutę nepalaikoma automatiniame režime"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Išsaugoti priedus Fcc?"
+
+@@ -6618,190 +6696,190 @@ msgstr "Išsaugoti priedus Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc nepavyko. (b)andyti vėl, naudoti kitą (d)ėžutę, ar (p)raleisti?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "bdp"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc dėžutė"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Negaliu atidėti. $postponed nenustatytas"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Tęsti atidėtą laišką?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Redaguoti persiunčiamą laišką?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Nutraukti nepakeistą laišką?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Nutrauktas nepakeistas laiškas"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Kriptografijos mechanizmas nesukonfigūruotas. Išjungiu laiškų saugumo nustatymus."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Straipsnis neišsiųstas"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Laiškas atidėtas"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Nėra temos, nutraukti siuntimą?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Nenurodyta jokia tema"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Nenurodyta jokia naujienų grupė"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Nėra priedų, atšaukti siuntimą?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Laiške yra tekstas, atitinkantis \"$abort_noattach_regex\". Nesiunčiu."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Siunčiu laišką..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Negalėjau išsiųsti laiško"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Siunčiu fone"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Straipsnis išsiųstas"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Laiškas išsiųstas"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Trūksta boundary parametro [pranešk šią klaidą]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s nebeegzistuoja"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s nėra paprasta byla"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Negalėjau rasti jokios mime.types bylos."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Negalėjau atidaryti %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail turi būti nurodytas norint siųsti laiškus"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Klaida siunčiant laišką, klaidos kodas %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Pristatymo proceso išvestis"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Blogas IDN %s bandant paruošti Resent-From: antraštę"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP sesija nepavyko: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP sesija nepavyko: negaliu atidaryti %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Blogas SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP autentikacijos metodui %s reikia SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s autentikacija nepavyko, bandau kitą metodą"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP autentikacijai reikia SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP serveris nepalaiko autentikacijos"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Nenurodytas siuntėjo adresas"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP sesija nepavyko: skaitymo klaida"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP sesija nepavyko: rašymo klaida"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Blogas serverio atsakymas"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Rikiuoju dėžutę..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Negalėjau rasti rikiavimo funkcijos [pranešk šią klaidą]"
+
+@@ -6871,10 +6949,10 @@ msgstr ""
+ "NeoMutt yra laisva programinė įranga, ir tu gali laisvai ją platinti su tam\n"
+ "tikromis sąlygomis; rašyk 'neomutt -vv' dėl smulkmenų.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Įprastos parinktys:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Kompiliavimo parinktys:"
+diff --git a/po/nl.po b/po/nl.po
+index 5b233bf84..e37968330 100644
+--- a/po/nl.po
++++ b/po/nl.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2017-02-22 20:12+0100\n"
+ "Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
+ "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
+@@ -20,16 +20,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(w)eigeren, (e)enmalig toelaten, (a)ltijd toelaten, (s)kip"
++
++msgid "roas"
++msgstr "weas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(w)eigeren, (e)enmalig toelaten, (a)ltijd toelaten"
++
++msgid "roa"
++msgstr "wea"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(w)eigeren, (e)enmalig toelaten, (s)kip"
++
++msgid "ros"
++msgstr "wes"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(w)eigeren, (e)enmalig toelaten"
++
++msgid "ro"
++msgstr "we"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Afsluiten"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Wis"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Herstel"
+
+@@ -37,18 +61,18 @@ msgstr "Herstel"
+ msgid "Select"
+ msgstr "Selecteren"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Hulp"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Geen afkortingen beschikbaar"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Afkortingen"
+
+@@ -57,52 +81,52 @@ msgstr "Afkortingen"
+ msgid "Alias as: "
+ msgstr "Afkorten als: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "U heeft al een afkorting onder die naam"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Waarschuwing: deze afkorting kan niet werken. Verbeteren?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adres: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Ongeldig IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Naam: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Accepteren?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Opslaan als: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Fout tijdens inlezen adresbestand"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Fout tijdens inlezen adresbestand"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Adres toegevoegd"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Fout tijdens doorzoeken adresbestand"
+
+@@ -111,7 +135,7 @@ msgstr "Fout tijdens doorzoeken adresbestand"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s bestaat niet. Aanmaken?"
+@@ -120,8 +144,8 @@ msgstr "%s bestaat niet. Aanmaken?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Kan bestand %s niet aanmaken: %s"
+@@ -131,7 +155,7 @@ msgstr "Kan bestand %s niet aanmaken: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -140,7 +164,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -149,7 +173,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -158,7 +182,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -170,7 +194,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "versleuteling"
+@@ -178,7 +202,7 @@ msgstr "versleuteling"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -186,7 +210,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -195,7 +219,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Geen (geldig) certificaat gevonden voor %s"
+@@ -207,12 +231,12 @@ msgstr "Geen (geldig) certificaat gevonden voor %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Geen postvak.\n"
+@@ -224,14 +248,14 @@ msgstr "Geen postvak.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "%s aanmaken?"
+@@ -239,7 +263,7 @@ msgstr "%s aanmaken?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Verwijderen"
+
+@@ -247,9 +271,9 @@ msgstr "Verwijderen"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -257,17 +281,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -276,7 +300,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -284,7 +308,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -292,12 +316,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -305,13 +329,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Er is een fout opgetreden tijdens het analyseren van de map"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Postvak \"%s\" echt verwijderen?"
+@@ -329,7 +353,7 @@ msgstr "Postvak \"%s\" echt verwijderen?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Kan postvak %s niet openen"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "fout bij het creëren van GPGME-context: %s"
+@@ -402,335 +426,286 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s is geen map"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Andere map"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Ga naar"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Masker"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Lijst"
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Geabonneerd op %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Abonnement op %s opgezegd"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s is geen map"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Geabonneerd op %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Beschikbare nieuwsgroepen [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Postvakken [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Geselecteerd [%s], Bestandsmasker: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Map [%s], Bestandsmasker: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Kan geen map bijvoegen"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Geen bestanden waarop het masker past gevonden."
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Alleen IMAP-postvakken kunnen aangemaakt worden"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Alleen IMAP-postvakken kunnen hernoemd worden"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Alleen IMAP-postvakken kunnen verwijderd worden"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "toon de bestandsnaam van het huidige bestand"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Postvak \"%s\" echt verwijderen?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Postvak is verwijderd"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Postvak is niet verwijderd"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Postvak is niet verwijderd"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Wisselen naar map: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Er is een fout opgetreden tijdens het analyseren van de map"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Bestandsmasker: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Achteruit sorteren op (d)atum, bestands(g)rootte, (a)lfabet of (n)iet?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sorteren op (d)atum, bestands(g)rootte, (a)lfabet of helemaal (n)iet?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dgan"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nieuwe bestandsnaam: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Map kan niet worden getoond."
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Er is een fout opgetreden tijdens het weergeven van bestand"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Geabonneerd op %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Abonnement op %s opgezegd"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Geen bestanden waarop het masker past gevonden."
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: terminal ondersteunt geen kleur"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: onbekende kleur"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: onbekend object"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: te weinig argumenten"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: onbekend attribuut"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: te veel argumenten"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "standaardkleuren worden niet ondersteund"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Fout: score: ongeldig getal"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Handtekening controleren?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Tijdelijk bestand kon niet worden aangemaakt"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Weergavefilter kan niet worden aangemaakt."
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Bericht kon niet gekopieerd worden."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-handtekening werd goed geverifieerd"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME-certificaateigenaar komt niet overeen met de afzender"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Waarschuwing: een deel van dit bericht is niet ondertekend"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-handtekening kon NIET worden geverifieerd"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-handtekening is goed geverifieerd"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-handtekening kon NIET worden geverifieerd"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Fout opgetreden bij het uitvoeren van \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Commando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Waarschuwing: bericht bevat geen 'Van:'-onderdeel"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Bericht doorsturen naar: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Gemarkeerde berichten doorsturen naar: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Ongeldig adres"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Bericht doorsturen aan %s?"
+ msgstr[1] "Berichten doorsturen aan %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Bericht is niet doorgestuurd"
+ msgstr[1] "Berichten zijn niet doorgestuurd"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Bericht is doorgestuurd"
+ msgstr[1] "Berichten zijn doorgestuurd"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Kan filterproces niet aanmaken"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Doorsluizen naar commando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Er is geen printcommando gedefinieerd"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Bericht afdrukken?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Geselecteerde berichten afdrukken?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Bericht is afgedrukt"
+ msgstr[1] "Berichten zijn afgedrukt"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -738,162 +713,325 @@ msgstr[0] "Bericht kon niet worden afgedrukt"
+ msgstr[1] "Berichten konden niet worden afgedrukt"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Omgekeerd op (d)atum/(v)an/o(n)tv/(o)ndw/(a)an/(t)hread/n(i)et/(g)rt/(s)core/s(p)am/(l)abel?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sorteren op (d)atum/(v)an/o(n)tv/(o)ndw/(a)an/(t)hread/n(i)et/(g)rt/(s)core/s(p)am/(l)abel?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dvnoatigspl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell-commando: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Decoderen-opslaan in postvak"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decoderen-opslaan gemarkeerd bericht naar postvak"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Ontsleutelen-opslaan in postvak"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Ontsleutelen-opslaan gemarkeerd bericht naar postvak"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Opslaan in postvak"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Sla gemarkeerd bericht op in postvak"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Decoderen-kopieer naar postvak"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decoderen-kopieer gemarkeerd bericht naar postvak"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Ontsleutelen-kopieer naar postvak"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Ontsleutelen-kopieer gemarkeerd bericht naar postvak"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Kopiëren naar postvak"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopieer gemarkeerd bericht naar postvak"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopiëren naar %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type is veranderd naar %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Converteren naar %s tijdens zending?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type is veranderd naar %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Tekenset is veranderd naar %s; niet converteren"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Tekenset is veranderd naar %s; converteren"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: te weinig argumenten"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: geen groepsnaam"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "te weinig argumenten"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Fout in %s, regel %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Fout in %s, op regel %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: fouten in %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: inlezen is gestaakt vanwege te veel fouten in %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "bron: fout in %s"
++msgstr[1] "bron: fouten in %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: Geen adres"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Waarschuwing: Ongeldige IDN '%s' in alias '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: geen dispositie"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "Huidige instellingen voor bijlagen:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: ongeldige dispositie"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: te veel argumenten"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%s-groep: Ontbrekende -rx of -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%s-groep: waarschuwing: Ongeldige IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "ongeldig veld in berichtenkop"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: onbekende variable"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s is niet gezet"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: fout bij %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "bron: bestand %s werd niet gevonden"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: geen overeenkomstig patroon"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: geen overeenkomstig patroon"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Geabonneerd op %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Kan niet abonneren op %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Geen map gespecifieerd"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: geen dispositie"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: ongeldige dispositie"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Abonnement op %s opgezegd"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Kan abbonnement op %s niet opzeggen"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Bericht bevat geen bijlage"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Van: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Naar: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Onderwerp: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Antw."
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -904,77 +1042,77 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Ondertekenen als: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Op te volgen: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr ""
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Versturen"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Afbreken"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Bijvoegen"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Omschrijving"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Nieuwsgroep"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Geen"
+@@ -983,7 +1121,7 @@ msgstr "Geen"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -991,14 +1129,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "ja"
+@@ -1009,7 +1147,7 @@ msgstr "ja"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1017,51 +1155,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Niet ondersteund"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Ondertekenen, Versleutelen"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Versleutelen"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Ondertekenen"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Geen"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (inline-PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc-modus)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<standaard>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Versleutelen met: "
+
+@@ -1070,11 +1208,11 @@ msgstr "Versleutelen met: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr ""
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1085,7 +1223,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] bestaat niet meer"
+@@ -1097,239 +1235,359 @@ msgstr "%s [#%d] bestaat niet meer"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] werd veranderd. Codering aanpassen?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Bijlagen"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "De laatste bijlagen kan je niet verwijderen"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Ongeldige IDN in '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Bijlage staat al bovenaan"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Dit onderdeel kan niet verplaatst worden"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "De bijlage staat al onderaan"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Alternatieve groeperingen vereisen zeker 2 gemarkeerde berichten"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Meertalige groeperingen vereisen zeker 2 gemarkeerde berichten"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Niet alle onderdelen hebben taal ingesteld. Verdergaan?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Bericht kan niet verzonden worden"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Opgegeven bestand toevoegen..."
+ msgstr[1] "Opgegeven bestanden toevoegen..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Kan %s niet bijvoegen"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Open postvak waaruit een bericht bijgevoegd moet worden"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Open nieuwsgroep waaruit een bericht bijgevoegd moet worden"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Kan postvak %s niet openen"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Geen berichten in dit postvak"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Selecteer de berichten die u wilt bijvoegen"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Kan niet bijvoegen"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Codering wijzigen is alleen van toepassing op bijlagen"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Deze bijlage zal niet geconverteerd worden"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Deze bijlage zal geconverteerd worden"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Ongeldige codering"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Een kopie van dit bericht maken?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Bijlage versturen met naam: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Hernoemen naar: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Kan status van %s niet opvragen: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nieuw bestand: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type is van de vorm basis/subtype"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Onbekend Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Kan bestand %s niet aanmaken"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "De bijlage kan niet worden aangemaakt"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Uigesteld bericht hervatten?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Sla bericht op in postvak"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Bericht wordt opgeslagen in %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Bericht opgeslagen"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Geen PGP software beschikbaar"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME is al geselecteerd. Wissen & doorgaan?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Geen S/MIME software beschikbaar"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP is al geselecteerd. Wissen & doorgaan?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Kan niet toevoegen zonder append-hook of close-hook: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Kan postvak niet vergrendelen"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Decomprimeren van %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Kan de inhoud van gedecomprimeerd bestand niet identificeren"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Kan geen mailboxbewerkingen vinden voor mailboxtype %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Compressiecommando is mislukt: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Niet-ondersteund mailboxtype voor toevoegen"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Kan gecomprimeerd bestand niet synchroniseren zonder close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "%s comprimeren"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Gecomprimeerd toevoegen aan %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Er is een fout opgetreden. Tijdelijk bestand is opgeslagen als: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Ongeldige maand: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Ongeldige maand: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Fout: score: ongeldig getal"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Ongeldige waarde voor optie %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Ongeldige maand: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Optie %s kan niet ingesteld worden in 'attach-message' modus"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Fout: score: ongeldig getal"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Fout: score: ongeldig getal"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Ongeldige maand: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Ongeldige waarde voor optie %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Fout: waarde '%s' is een ongeldig voor optie '-d'"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: onbekende variable"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Ongeldige maand: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Ongeldige maand: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Gebruikersnaam voor %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Wachtwoord voor %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Query-commando niet gedefinieerd"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1350,7 +1608,7 @@ msgstr "Verbinden met %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Kan niet verbinden met %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "onbekende fout"
+
+@@ -1364,23 +1622,23 @@ msgstr "Verbinding met %s is mislukt (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Verbinding met %s is gestopt"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Onbekend SASL profiel"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Fout bij het alloceren van SASL-connectie"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Fout bij het instellen van de SASL-beveiligingseigenschappen"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Fout bij het instellen van de SASL-beveiligingssterkte"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Fout bij het instellen van de externe SASL-gebruikersnaam"
+
+@@ -1393,133 +1651,109 @@ msgstr "Voorverbindings commando is mislukt"
+ msgid "Connection to %s closed"
+ msgstr "Verbinding met %s beëindigd"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Aanvullen van entropieverzameling: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s heeft onveilige rechten"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL is uitgeschakeld vanwege een tekort aan entropie"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Onbekend"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[kan niet berekend worden]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[ongeldige datum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Certificaat van de server is nog niet geldig"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Certificaat van de server is verlopen"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Te weinig entropie op uw systeem gevonden"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "kan onderwerp van certificaat niet verkrijgen"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "kan common name van van certificaat niet verkrijgen"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "certificaateigenaar komt niet overeen met naam van de server %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Dit certificaat behoort aan:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Dit certificaat is uitgegeven door:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Dit certificaat is geldig"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " van %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " tot %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-vingerafdruk: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA1-vingerafdruk: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "SSL-certificaatcontrole (certificaat %zu van %zu in keten)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "weas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(w)eigeren, (e)enmalig toelaten, (a)ltijd toelaten, (s)kip"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(w)eigeren, (e)enmalig toelaten, (a)ltijd toelaten"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(w)eigeren, (e)enmalig toelaten, (s)kip"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(w)eigeren, (e)enmalig toelaten"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Einde "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Waarschuwing: certificaat kan niet bewaard worden"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificaat wordt bewaard"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Controle van servernaam van certificaat is mislukt: %s"
+@@ -1527,15 +1761,15 @@ msgstr "Controle van servernaam van certificaat is mislukt: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Invoer-/uitvoerfout"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL is mislukt: %s"
+@@ -1543,89 +1777,73 @@ msgstr "SSL is mislukt: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Aanmaken van SSL-context is mislukt"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Kan server certificaat niet verkrijgen"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Fout bij verifiëren van certificaat (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certificaat is niet in X.509-formaat"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Kan gnutls certificaatgegevens niet initializeren"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Fout bij het verwerken van certificaatgegevens"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "WAARSCHUWING: Certificaat van de server is nog niet geldig"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "WAARSCHUWING: Certificaat van de server is verlopen"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "WAARSCHUWING: Certificaat van de server is herroepen"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "WAARSCHUWING: Naam van de server komt niet overeen met certificaat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "WAARSCHUWING: Ondertekenaar van servercertificaat is geen CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Waarschuwing: het server-certificaat werd ondertekend met een onveilig algoritme"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "wea"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "we"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Alle beschikbare protocollen voor TLS/SSL-verbinding uitgeschakeld"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Expliciete keuze van encryptie-algoritme via $ssl_ciphers wordt niet ondersteund"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS verbinding via %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Fout: geen TLS-socket open"
+
+@@ -1644,38 +1862,18 @@ msgstr "Fout in tunnel in communicatie met %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel naar %s leverde fout %d op (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ja"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nee"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt afsluiten?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Druk een willekeurige toets in..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' voor een overzicht): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1697,7 +1895,7 @@ msgstr ""
+ "~M berichten als ~m, maar met headers\n"
+ "~p bericht afdrukken\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1720,20 +1918,20 @@ msgstr ""
+ ". als enige inhoud van een regel beëindigt de invoer\n"
+
+ # FIXME: why a period?
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: ongeldig berichtnummer.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Beëindig het bericht met een . als enige inhoud van een regel.)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Geen postvak.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Bericht bevat:\n"
+
+@@ -1741,20 +1939,20 @@ msgstr "Bericht bevat:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(verder)\n"
+
+ # FIXME: Capital?
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "Geen bestandsnaam opgegeven.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Bericht bevat geen regels.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: onbekend editor-commando (~? voor hulp)\n"
+@@ -1801,19 +1999,73 @@ msgstr "Kan bericht niet toevoegen aan postvak: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Multi-part bericht heeft geen \"boundary\" parameter."
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Het weergeven van threads is niet ingeschakeld"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Zet markering"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Verwijder markering"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: terminal ondersteunt geen kleur"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: onbekende kleur"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: onbekend object"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: onbekend attribuut"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "standaardkleuren worden niet ondersteund"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Fout: score: ongeldig getal"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ja"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nee"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt afsluiten?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Druk een willekeurige toets in..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' voor een overzicht): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1834,23 +2086,23 @@ msgstr "[-- Automatische weergave met %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Commando wordt aangeroepen: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Kan filter niet aanmaken"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Kan %s niet uitvoeren. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Foutenuitvoer van %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Fout: message/external-body heeft geen access-type parameter --]\n"
+
+@@ -1869,7 +2121,7 @@ msgstr "[-- Fout: message/external-body heeft geen access-type parameter --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1898,7 +2150,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1912,7 +2164,7 @@ msgstr[1] "[-- Deze %s/%s bijlage (grootte %s bytes) werd gewist --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1924,12 +2176,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Deze %s/%s bijlage werd gewist --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- naam: %s --]\n"
+@@ -1938,7 +2190,7 @@ msgstr "[-- naam: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1955,7 +2207,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1964,94 +2216,94 @@ msgstr ""
+ "[-- Deze %s/%s bijlage is niet toegevoegd --]\n"
+ "[-- en het aangegeven toegangs-type %s wordt niet ondersteund --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Fout: Kon geen enkel multipart/alternative-gedeelte weergeven --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Bijlage #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Bijlage #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Een of meer delen van dit bericht konden niet worden weergegeven"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Tijdelijk bestand kon niet worden geopend"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Tijdelijk bestand kon niet worden geopend"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Fout: multipart/signed zonder protocol-parameter"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Dit is een bijlage (gebruik '%s' om dit gedeelte weer te geven) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s wordt niet ondersteund (gebruik '%s' om dit gedeelte weer te geven) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Dit is een bijlage ('view-attachments' moet aan een toets gekoppeld zijn) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s wordt niet ondersteund ('view-attachments' moet aan een toets gekoppeld zijn) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Dit is een bijlage --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s wordt niet ondersteund --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "FOUT: Meld deze programmafout."
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<onbekend>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Algemene toetsenbindingen:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Ongebonden functies:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Hulp voor %s"
+@@ -2068,41 +2320,41 @@ msgstr "sneltoets voor mailbox expandeerde tot lege reguliere expressie"
+ msgid "badly formatted command string"
+ msgstr "onjuist opgemaakte commandotekenreeks"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Kan geen 'unhook *' doen binnen een 'hook'"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: onbekend 'hook'-type: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Kan geen %s wissen binnen een %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: onbekend menu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: onbekend menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: onbekend menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Tijdelijk bestand %s kon niet worden aangemaakt"
+@@ -2140,30 +2392,30 @@ msgstr "GSSAPI-authenticatie is mislukt"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN is uitgeschakeld op deze server"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Aanmelden..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Aanmelden is mislukt.."
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Authenticatie (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-authenticatie is mislukt"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Authenticeren (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-authenticatie is mislukt"
+
+@@ -2210,90 +2462,80 @@ msgstr "Hernoemen is mislukt: %s"
+ msgid "Mailbox renamed"
+ msgstr "Postvak is hernoemd"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Postvak %s@%s is gesloten."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Verbinding met %s beëindigd"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "NeoMutt kan niet overweg met deze antieke IMAP-server."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Zoeken op header zonder headernaam: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE is mislukt: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Verbinding met %s wordt gesloten..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Beveiligde connectie met TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Kon TLS connectie niet onderhandelen"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Versleutelde verbinding niet beschikbaar"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Aanmelden voor %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Abonnement opzeggen op %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Geabonneerd op %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Abonnement op %s opgezegd"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Een bericht word gekopieerd naar %s..."
+ msgstr[1] "%d berichten worden gekopieerd naar %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s aanmaken?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Verwijderen is mislukt"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2301,44 +2543,44 @@ msgstr[0] "Een bericht is gemarkeerd voor verwijdering..."
+ msgstr[1] "%d berichten zijn gemarkeerd voor verwijdering..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Gewijzigd bericht word opgeslaan...[%d/%d]"
+ msgstr[1] "Gewijzigde berichten worden opgeslagen... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Fout bij opslaan markeringen. Toch afsluiten?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Fout bij opslaan markeringen."
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Berichten op de server worden gewist..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE is mislukt"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s wordt uitgekozen..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Er is een fout opgetreden tijdens openen van het postvak"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP server ondersteund geen zelfgemaakte markeringen"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Ongeldige IMAP markering"
+@@ -2349,7 +2591,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Onvoldoende geheugen"
+
+@@ -2369,7 +2611,7 @@ msgstr "Headers worden opgehaald..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Kan berichtenoverzicht niet overhalen van deze IMAP-server"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Headers worden opgehaald..."
+
+@@ -2382,156 +2624,156 @@ msgstr "Bericht wordt ge-upload..."
+ msgid "Copying message %d to %s..."
+ msgstr "Bericht %d wordt gekopieerd naar %s ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Bericht wordt gelezen..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "De berichtenindex is niet correct. Probeer het postvak te heropenen."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Doorgaan?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Einde"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Opslaan"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Sturen"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Antw."
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Groep"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Opvolging"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Er is geen postvak geopend"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Er zijn geen berichten"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Geen zichtbare berichten"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Postvak is schrijfbeveiligd"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Functie wordt niet ondersteund in deze modus"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: operatie niet toegestaan door ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Kan niet schrijven in een schrijfbeveiligd postvak"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Wijzigingen zullen worden weggeschreven bij het verlaten van het postvak"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Wijzigingen worden niet weggeschreven"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s is geen postvak"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Postvak is extern veranderd. Markeringen kunnen onjuist zijn."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Nieuwe berichten in dit postvak"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Postvak is extern veranderd"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Geen gemarkeerde berichten"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Niets te doen"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Geef bericht-ID in: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Bericht is niet zichtbaar in deze beperkte weergave"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "%s wordt van de server gehaald..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "Geen verwijderde berichten gevonden in de thread"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Ga naar bericht: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argument moet een berichtnummer zijn"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Ongeldig berichtnummer"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Dat bericht is niet zichtbaar"
+
+@@ -2544,38 +2786,38 @@ msgstr "Dat bericht is niet zichtbaar"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Kan berichten niet verwijderen"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Wis berichten volgens patroon: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Er is geen beperkend patroon in werking"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limiet: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Beperk berichten volgens patroon: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Beperk op \"all\" om alle berichten te bekijken"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt afsluiten?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Markeer berichten volgens patroon: "
+
+@@ -2583,204 +2825,204 @@ msgstr "Markeer berichten volgens patroon: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Kan bericht niet herstellen"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Herstel berichten volgens patroon: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Verwijder markering volgens patroon: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Uitgelogd uit IMAP-servers"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Vituele map niet gevonden, stoppen"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Kan geen vraag moken, stoppen"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Kan reeks niet lezen, stoppen"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Map ondersteunt geen markeringen, stoppen"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Geen markering opgegeven, stoppen"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Geen vraag, stoppen"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Open postvak in schrijfbeveiligde modus"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Open postvak"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Geen postvak met nieuwe berichten"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Open nieuwsgroep in schrijfbeveiligde modus"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "NeoMutt verlaten zonder op te slaan?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Kan threads niet linken"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Thread is verbroken"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Thread kan niet verbroken worden; bericht is geen deel van een thread"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Kan threads niet linken"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Er is geen 'Message-ID'-kopregel beschikbaar om thread te koppelen"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Markeer eerst een bericht om hieraan te koppelen"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Threads gekoppeld"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Geen thread gekoppeld"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Dit is het laatste bericht"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Alle berichten zijn gewist"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Dit is het eerste bericht"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Geen nieuwe berichten in deze beperkte weergave"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Geen nieuwe berichten"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Geen ongelezen berichten in deze beperkte weergave"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Geen ongelezen berichten"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Zoekopdracht is bovenaan herbegonnen"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Zoekopdracht is onderaan herbegonnen"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Kan bericht niet markeren"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Kan 'nieuw'-markering niet omschakelen"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Geen verdere threads"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "U bent al bij de eerste thread"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Thread bevat ongelezen berichten"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Kan bericht niet verwijderen"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Kan bericht niet bewerken"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2790,7 +3032,7 @@ msgstr[1] "%d labels zijn veranderd"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Geen labels veranderd"
+
+@@ -2798,7 +3040,7 @@ msgstr "Geen labels veranderd"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Kan berichten niet als gelezen markeren"
+@@ -2806,270 +3048,133 @@ msgstr "Kan berichten niet als gelezen markeren"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Typ de macrotoetsaanslag: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "berichtsneltoets"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Bericht is gebonden aan %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Kan geen ID van dit bericht vinden in de index"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Kan bericht niet herstellen"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Fout in opdrachtregel: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Fout in opdrachtregel: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "Kan hostnaam niet achterhalen via uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: geen groepsnaam"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "te weinig argumenten"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Fout in %s, regel %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Fout in %s, op regel %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: fouten in %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: inlezen is gestaakt vanwege te veel fouten in %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "bron: fout in %s"
+-msgstr[1] "bron: fouten in %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: Geen adres"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Waarschuwing: Ongeldige IDN '%s' in alias '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: geen dispositie"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "Huidige instellingen voor bijlagen:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: ongeldige dispositie"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%s-groep: Ontbrekende -rx of -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%s-groep: waarschuwing: Ongeldige IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "ongeldig veld in berichtenkop"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: onbekende variable"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s is niet gezet"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: fout bij %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "bron: bestand %s werd niet gevonden"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: geen overeenkomstig patroon"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: geen overeenkomstig patroon"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Kan niet abonneren op %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Geen map gespecifieerd"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: geen dispositie"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: ongeldige dispositie"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Kan abbonnement op %s niet opzeggen"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: onbekend commando"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Ongeldige waarde voor optie %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Optie %s kan niet ingesteld worden in 'attach-message' modus"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Macro-lus gedetecteerd"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Toets is niet in gebruik"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Toets is niet in gebruik. Typ '%s' voor hulp."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: lege toetsenvolgorde"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: lege toetsenvolgorde"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: geen argumenten"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: onbekende functie"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Geef toetsen in (^G om af te breken): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Teken = %s, Octaal = %o, Decimaal = %d"
+@@ -3093,7 +3198,7 @@ msgstr "Kan geen mailcap-entry voor %s vinden."
+ msgid "Scanning %s..."
+ msgstr "%s wordt geanalyseerd..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Bezig met het lezen van %s..."
+@@ -3108,13 +3213,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): Kan geen tijd op bestand zetten"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Bezig met het schrijven van %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3137,7 +3242,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3180,54 +3285,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Kan terminal niet initialiseren"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "Kan gebruikersnaam niet achterhalen"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "Kan persoonlijke map niet achterhalen"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Fout: waarde '%s' is een ongeldig voor optie '-d'"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Kan mailto: koppeling niet verwerken"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Geen ontvangers opgegeven"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Optie '-E' gaat niet samen met standaardinvoer"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Kan sjabloon bestand niet verwerken: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: kan bestand niet toevoegen"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Geen postvak met nieuwe berichten"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Geen postvakken opgegeven"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Postvak is leeg"
+
+@@ -3269,52 +3374,52 @@ msgstr "Kan postvak niet opnieuw openen"
+ msgid "Can't write message"
+ msgstr "Kan bericht niet wegschrijven"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Ga naar: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Ongeldig Indexnummer"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Geen items"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "U kunt niet verder naar beneden gaan"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "U kunt niet verder naar boven gaan"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "U bent op de eerste pagina"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "U bent op de laatste pagina"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "U bent op het laatste item"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "U bent op het eerste item"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Zoek naar: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Zoek achteruit naar: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Niet gevonden"
+
+@@ -3357,20 +3462,20 @@ msgstr "Wacht op flock-poging... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Verkeerde indeling van geschiedenisbestand (regel %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Kan tijdelijk bestand niet aanmaken"
+
+@@ -3389,7 +3494,7 @@ msgstr "Debug-informatie op niveau %d voor bestand '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Logging op niveau %d voor bestand '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Fout: omzetten pad naar aboluut"
+@@ -3413,17 +3518,17 @@ msgstr "Signaal %d (%s) ontvangen ... Afsluiten."
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Signaal %d ontvangen ... Afsluiten.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3431,148 +3536,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Bestand is een map, daarin opslaan? (j)a, (n)ee, (a)llen"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "jna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Bestand is een map, daarin opslaan?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Bestandsnaam in map: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Bestand bestaat, (o)verschrijven, (t)oevoegen, (a)nnuleren?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "ota"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Kan het bericht niet opslaan in het POP-postvak"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Bericht aan %s toevoegen?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Kan bericht niet opslaan op nieuws server"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Gebruikersnaam voor %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Wachtwoord voor %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Query-commando niet gedefinieerd"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Naamsjabloon kan niet worden ingevuld. Doorgaan?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "\"compose\"-entry in mailcap vereist %%s."
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Kan bestand niet openen om header te lezen"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Kan bestand niet openen om header te verwijderen"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Kan bestand niet hernoemen"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Geen \"compose\"-entry voor %s, een leeg bestand wordt aangemaakt"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "\"edit\"-entry in mailcap vereist %%s."
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Geen \"edit\"-entry voor %s in mailcap"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Geen geschikte mailcap-entry gevonden. Weergave als normale tekst."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-type is niet gedefinieerd. Kan bijlage niet weergeven."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Commando: %-20.20s Omschrijving: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Commando: %-30.30s Bijlage: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Bijlage: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Bijlage: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Fout bij schrijven"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Ik weet niet hoe dit afgedrukt moet worden"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Zoeken"
+
+@@ -3581,21 +3658,21 @@ msgstr "Zoeken"
+ msgid "History '%s'"
+ msgstr "Geschiedenis '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Ongeldige waarde voor optie %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Kan lua bron niet verwerken: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nieuw bericht in "
+
+@@ -3616,20 +3693,20 @@ msgstr "Beginbericht is niet zichtbaar in deze beperkte weergave"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Voorafgaand bericht is niet zichtbaar in deze beperkte weergave"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Het lezen van %s is onderbroken,,,"
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Kan %s niet bijvoegen"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3640,69 +3717,69 @@ msgstr[1] "De berichten zijn niet verwijderd"
+ msgid "Can't open trash folder"
+ msgstr "Kan prullenmap niet openen"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Gelezen bericht %d naar %s verplaatsen?"
+ msgstr[1] "Gelezen berichten %d naar %s verplaatsen?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Een verwijderd bericht volledig verwijderen"
+ msgstr[1] "%d verwijderde berichten volledig verwijderen?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Gelezen berichten worden naar %s verplaatst..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Postvak is niet veranderd"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d bewaard, %d verschoven, %d gewist"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d bewaard, %d gewist"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Druk '%s' om schrijfmode aan/uit te schakelen"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Gebruik 'toggle-write' om schrijven mogelijk te maken"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Postvak is als schrijfbeveiligd gemarkeerd. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Postvak is gecontroleerd"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (huidige tijd: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s uitvoer volgt%s --]\n"
+@@ -3711,55 +3788,55 @@ msgstr "[-- %s uitvoer volgt%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Wachtwoord vergeten"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline PGP is niet mogelijk met bijlagen. PGP/MIME gebruiken?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Bericht is niet verzonden: inline PGP gaat niet met bijlagen"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline PGP is niet mogelijk met 'format=flowed'. PGP/MIME gebruiken?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ #, fuzzy
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Bericht is niet verzonden: inline PGP kan niet gebruikt worden met 'format=flowed'"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP wordt aangeroepen..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Bericht kan niet inline verzonden worden. PGP/MIME gebruiken?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Bericht niet verstuurd"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-berichten zonder aanwijzingen over inhoud zijn niet ondersteund"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP-sleutels onttrekken...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME-certificaten onttrekken..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3768,7 +3845,7 @@ msgstr ""
+ "[-- Fout: Onbekend multipart/signed-protocol: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3777,7 +3854,7 @@ msgstr ""
+ "[-- Fout: Ontbrekende of foutieve meerdelige handtekening --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3786,7 +3863,7 @@ msgstr ""
+ "[-- Waarschuwing: %s/%s-handtekeningen kunnen niet gecontroleerd worden --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3794,7 +3871,7 @@ msgstr ""
+ "[-- De volgende gegevens zijn ondertekend --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3802,7 +3879,7 @@ msgstr ""
+ "[-- Waarschuwing: kan geen enkele handtekening vinden --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3821,237 +3898,237 @@ msgstr "S/MIME wordt aangeroepen..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Naam: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "ook bekend als: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Geldig vanaf: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Geldig tot: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Sleutel type: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Sleutel gebruik: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Vingerafdruk: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Serienummer: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Uitg. door: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Subsleutel: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "fout bij het inschakelen van CMS-protocol: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "fout bij het creëren van GPGME-gegevensobject: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "fout bij het alloceren van gegevensobject: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "fout bij het terugwinden van het gegevensobject: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "fout bij het lezen van het gegevensobject: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "fout bij het toevoegen van ontvanger '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "geheime sleutel '%s' niet gevonden: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "dubbelzinnige specificatie van geheime sleutel '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "fout bij het instellen van geheime sleutel '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "fout bij het instellen van PKA-ondertekening: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "fout bij het versleutelen van gegevens: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "fout bij het ondertekenen van gegevens: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as is niet gezet en er is geen standaard sleutel ingesteld in ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Waarschuwing: één van de sleutels is herroepen\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Waarschuwing: de sleutel waarmee is ondertekend is verlopen op: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Waarschuwing: minstens één certificeringssleutel is verlopen\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Waarschuwing: de ondertekening is verlopen op: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Kan niet verifiëren vanwege ontbrekende sleutel of certificaat\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "De CRL is niet beschikbaar\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "De beschikbare CRL is te oud\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Aan een beleidsvereiste is niet voldaan\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Er is een systeemfout opgetreden"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "WAARSCHUWING: PKA-item komt niet overeen met adres van ondertekenaar: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Adres van PKA-geverifieerde ondertekenaar is: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "WAARSCHUWING: We hebben GEEN indicatie of de sleutel toebehoort aan de persoon zoals hierboven aangegeven\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "WAARSCHUWING: De sleutel BEHOORT NIET TOE aan bovengenoemde persoon\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "WAARSCHUWING: Het is NIET zeker dat de sleutel toebehoort aan de persoon zoals hierboven aangegeven\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "Sleutel-ID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "aangemaakt: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Fout bij het ophalen van sleutelinformatie voor sleutel-ID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Goede handtekening van: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*SLECHTE* handtekening van: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematische handtekening van: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " verloopt op: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Begin handtekeninginformatie --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Fout: verificatie is mislukt: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Begin Notatie (ondertekening van: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Einde Notatie ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4059,28 +4136,33 @@ msgstr ""
+ "[-- Einde van ondertekende gegevens --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- Fout: ontsleuteling is mislukt: %s --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Fout bij exporteren van sleutel: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Fout: ontsleuteling/verificatie is mislukt: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-bericht succesvol ontsleuteld"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Fout: kopiëren van gegevens is mislukt\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4088,11 +4170,11 @@ msgstr ""
+ "[-- BEGIN PGP-BERICHT --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- BEGIN PGP PUBLIC KEY BLOK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4100,19 +4182,19 @@ msgstr ""
+ "[-- BEGIN PGP-ONDERTEKEND BERICHT --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- EINDE PGP-BERICHT --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- EINDE PGP-PUBLIEKESLEUTELBLOK --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- EINDE PGP-ONDERTEKEND BERICHT --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4120,11 +4202,11 @@ msgstr ""
+ "[-- Fout: Kon begin van PGP-bericht niet vinden --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Fout: Kon geen tijdelijk bestand aanmaken --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4132,7 +4214,7 @@ msgstr ""
+ "[-- De volgende gegevens zijn PGP/MIME-ondertekend en -versleuteld --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4140,24 +4222,20 @@ msgstr ""
+ "[-- De volgende gegevens zijn PGP/MIME-versleuteld --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Einde van PGP/MIME-ondertekende en -versleutelde data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Einde van PGP/MIME-versleutelde data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-bericht succesvol ontsleuteld"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Kon PGP-gericht niet ontsleutelen"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4165,7 +4243,7 @@ msgstr ""
+ "[-- De volgende gegevens zijn S/MIME-ondertekend --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4173,34 +4251,34 @@ msgstr ""
+ "[-- De volgende gegevens zijn S/MIME-versleuteld --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Einde van S/MIME-ondertekende gegevens --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Einde van S/MIME-versleutelde data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Kan dit gebruikers-ID niet weergeven (onbekende codering)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Kan dit gebruikers-ID niet weergeven (ongeldige codering)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Kan dit gebruikers-ID niet weergeven (ongeldige DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Ongeldig]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4208,94 +4286,94 @@ msgstr[0] "%s, %lu bit %s\n"
+ msgstr[1] "%s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "versleuteling"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "ondertekening"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certificering"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Herroepen]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Verlopen]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Uitgeschakeld]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Data aan het vergaren..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Fout bij het vinden van uitgever van sleutel: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Fout: certificeringsketen is te lang -- gestopt\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Sleutel-ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start() is mislukt: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next() is mislukt: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Alle overeenkomende sleutels zijn verlopen/ingetrokken"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Selecteer "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Controleer sleutel "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP- en S/MIME-sleutels voor"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-sleutels voor"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-certficaten voor"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "sleutels voor"
+
+@@ -4303,59 +4381,59 @@ msgstr "sleutels voor"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Deze sleutel is onbruikbaar: verlopen/ingetrokken"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Dit ID is verlopen/uitgeschakeld/ingetrokken. Wilt U deze sleutel gebruiken?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Dit ID is niet geldig. Wilt U deze sleutel gebruiken?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Dit ID is slechts marginaal geldig. Wilt U deze sleutel gebruiken?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Dit ID heeft een ongedefinieerde geldigheid. Wilt U deze sleutel gebruiken?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Zoeken naar sleutels voor \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Sleutel-ID = \"%s\" gebruiken voor %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Sleutel-ID voor %s: "
+@@ -4364,16 +4442,16 @@ msgstr "Sleutel-ID voor %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "geheime sleutel '%s' niet gevonden: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Geef Key-ID in: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Fout bij exporteren van sleutel: %s"
+@@ -4381,96 +4459,96 @@ msgstr "Fout bij exporteren van sleutel: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-sleutel 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP-protocol is niet beschikbaar"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS-protocol is niet beschikbaar"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (o)nderteken, ondert. (a)ls, (p)gp, (g)een, of oppenc (u)it?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "oapgu"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (o)nderteken, ondert. (a)ls, s/(m)ime, (g)een, of oppenc (u)it?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "oamgu"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (v)ersleutel, (o)ndert., ond. (a)ls, (b)eiden, (p)gp, (g)een, opp(e)nc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "voabpge"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)ersleutel, (o)ndert., ond. (a)ls, (b)eiden, s/(m)ime, (g)een, opp(e)nc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "voabmge"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (v)ersleutel, (o)nderteken, ond. (a)ls, (b)eiden, (p)gp, of (g)een?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "voabpg"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (v)ersleutel, (o)nderteken, ond. (a)ls, (b)eiden, s/(m)ime, of (g)een?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "voabmg"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Verifiëren van afzender is mislukt"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Kan afzender niet bepalen"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Geef PGP-wachtwoord in:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Fout: Kan geen PGP-subproces starten --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4481,16 +4559,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP bericht is niet geëncrypteerd"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "*Interne fout*. Graag rapporteren."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4498,129 +4576,129 @@ msgstr ""
+ "[-- Fout: Kon PGP-subproces niet starten --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Ontsleuteling is mislukt"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Kan PGP-subproces niet starten"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Kan PGP niet aanroepen"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (o)nderteken, ondert. (a)ls, %s, (g)een, of oppenc (u)it?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "oaigu"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (o)nderteken, ondert. (a)ls, (g)een, of oppenc (u)it?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "oagu"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)ersleutel, (o)ndert., ond. (a)ls, (b)eiden, %s, (g)een, opp(e)nc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "voabige"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (v)ersleutel, (o)nderteken, ond. (a)ls, (b)eiden, (g)een, opp(e)nc-modus?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "voabge"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (v)ersleutel, (o)nderteken, ond. (a)ls, (b)eiden, %s, of (g)een?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "voabig"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (v)ersleutel, (o)nderteken, ond. (a)ls, (b)eiden, of (g)een?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "voabg"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP-sleutel wordt gelezen..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Alle overeenkomende sleutels zijn verlopen/ingetrokken"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-sleutels voor <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-sleutels voor \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Kan /dev/null niet openen"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-key %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Geef S/MIME-wachtwoord in:"
+
+@@ -4629,7 +4707,7 @@ msgstr "Geef S/MIME-wachtwoord in:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Verlopen "
+
+@@ -4638,7 +4716,7 @@ msgstr "Verlopen "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Ongeldig "
+
+@@ -4647,7 +4725,7 @@ msgstr "Ongeldig "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Herroepen "
+
+@@ -4656,7 +4734,7 @@ msgstr "Herroepen "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Vertrouwd "
+
+@@ -4665,7 +4743,7 @@ msgstr "Vertrouwd "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Niet geverifieerd"
+
+@@ -4674,7 +4752,7 @@ msgstr "Niet geverifieerd"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Geverifieerd "
+
+@@ -4683,59 +4761,59 @@ msgstr "Geverifieerd "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Onbekend "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME certficiaten voor \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Dit ID wordt niet vertrouwd. Wilt U deze sleutel gebruiken?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Geef keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Geen (geldig) certificaat gevonden voor %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Fout: kan geen OpenSSL-subproces starten"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Label voor certificaat: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "geen certfile"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "geen mbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Geen uitvoer van OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Kan niet ondertekenen: geen sleutel gegeven. Gebruik Ondertekenen Als."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Kan OpenSSL-subproces niet starten"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4743,23 +4821,23 @@ msgstr ""
+ "[-- Einde van OpenSSL-uitvoer --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Fout: Kan geen OpenSSL-subproces starten --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- De volgende gegevens zijn S/MIME versleuteld --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- De volgende gegevens zijn S/MIME ondertekend --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4767,7 +4845,7 @@ msgstr ""
+ "\n"
+ "[-- Einde van S/MIME versleutelde data --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4776,168 +4854,168 @@ msgstr ""
+ "[-- Einde van S/MIME ondertekende gegevens --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (o)ndert, versl. (m)et, ond. (a)ls, (b)eiden, (g)een, opp(e)nc-modus?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "omabge"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (v)ersl, (o)ndert, versl. (m)et, ond. (a)ls, (b)eiden, (g)een, opp(e)nc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "vomabge"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (v)ersleutel, (o)ndert, versl. (m)et, ond. (a)ls, (b)eiden, (g)een?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "vomabg"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Kies een algoritmefamilie: (1) DES, (2) RC2, (3) AES, of (g)een?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123g"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s is geen geldige nieuws server specificatie"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server heeft verbinding gesloten"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "Het is niet mogelijk van de server te lezen"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Geen authenticeerders beschikbaar"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "%s authenticatie is mislukt"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Verbinding met %s is verloren. Opnieuw proberen?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Artikel lijst ophalen..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Controleren op nieuwe berichten..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "Kan niet wisselen naar lees-modus"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Bezig met verbinden met %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Posting is ok"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Pasting is niet ok"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Kan artikel niet plaatsen: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "De lijst met groepen wordt geladen van de server %s"
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Omschrijvingen laden..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Controleren op nieuwsgroepen..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "De specificatie van de nieuwsgroep %s is incorrect"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4949,8 +5027,8 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "Kan 'notmuch uri' niet verwerken: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "Kan 'notmuch url' niet verwerken: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -6083,187 +6161,187 @@ msgstr "de zijbalk tonen/verbergen"
+ msgid "show S/MIME options"
+ msgstr "geef S/MIME-opties weer"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Optie niet beschikbaar in dit menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Vorig.P"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Volg.P"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Bijlagen tonen"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Volgend ber."
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Einde van bericht is weergegeven"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Begin van bericht is weergegeven"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Hulp wordt al weergegeven"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Geen verdere geciteerde text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Geen verdere eigen text na geciteerde text"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Fout in expressie: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Lege expressie"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Query-commando niet gedefinieerd"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Commando wordt aangeroepen: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Ongeldige dag van de maand: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Ongeldige maand: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Ongeldige maand: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Geen ongelezen berichten."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Er is een fout opgetreden tijdens openen van het postvak"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Er is een fout opgetreden tijdens openen van het postvak"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Kan /dev/null niet openen"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "Fout in expressie bij: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "ontbrekend patroon: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "Haakjes kloppen niet: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: ongeldige patroonopgave"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: niet ondersteund in deze modus"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "Te weinig parameters"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "Leeg patroon"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "fout: onbekende operatie %d (rapporteer deze fout)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Bezig met het compileren van patroon..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Commando wordt uitgevoerd..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Geen berichten voldeden aan de criteria"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Bezig met zoeken..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Zoeken heeft einde bereikt zonder iets te vinden"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Zoeken heeft begin bereikt zonder iets te vinden"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Het zoeken is onderbroken"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Het TOP commando wordt niet door de server ondersteund"
+
+@@ -6271,7 +6349,7 @@ msgstr "Het TOP commando wordt niet door de server ondersteund"
+ msgid "Can't write header to temporary file"
+ msgstr "Kan de header niet naar een tijdelijk bestand wegschrijven"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Het UIDL commando wordt niet door de server ondersteund"
+
+@@ -6286,7 +6364,7 @@ msgstr[1] "%d berichten zijn verloren. Probeer het postvak te heropenen."
+ msgid "POP host is not defined"
+ msgstr "Er is geen POP-server gespecificeerd"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s is een ongeldig POP-pad"
+@@ -6319,153 +6397,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d van de %d berichten gelezen]"
+ msgstr[1] "%s [%d van de %d berichten gelezen]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Berichtenlijst ophalen..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Berichten worden gemarkeerd voor verwijdering..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Kan het bericht niet naar een tijdelijk bestand wegschrijven"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Authenticatie (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP tijdstempel is ongeldig"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Authenticatie (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP authenticatie geweigerd"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Het UIDL commando wordt niet door de server ondersteund"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL-authenticatie is mislukt"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Ongeldig POP-URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Niet in staat berichten op de server achter te laten"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Fout tijdens verbinden met server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Verbinding met POP-server wordt gesloten..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Berichtenindex wordt geverifieerd..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Verbinding is verbroken. Opnieuw verbinden met POP-server?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Uitgestelde berichten"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Geen uitgestelde berichten"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Ongeldige S/MIME header"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Ongeldige crypto header"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Bericht wordt ontsleuteld..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nieuwe query"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Afkorting maken"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Wacht op antwoord..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Zoekopdracht: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Zoekopdracht '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Query-commando niet gedefinieerd"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Filteren"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Druk af"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Bezig met opslaan..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Bijlage opgeslagen"
+ msgstr[1] "Bijlage opgeslagen"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "Waarschuwing! Bestand %s bestaat al. Overschrijven?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Bijlage gefilterd"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filter door: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Doorgeven aan (pipe): "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Kan %s-bijlagen niet afdrukken"
+@@ -6473,56 +6551,56 @@ msgstr "Kan %s-bijlagen niet afdrukken"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Gemarkeerde bericht(en) afdrukken?"
+ msgstr[1] "Gemarkeerde bericht(en) afdrukken?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Bijlage afdrukken?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Kan het versleutelde bericht niet ontsleutelen"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Bijlagen"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Er zijn geen onderdelen om te laten zien"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Kan de bijlage niet van de POP-server verwijderen"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Kan de bijlage niet van de POP-server verwijderen"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Het wissen van bijlagen uit versleutelde berichten wordt niet ondersteund"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Het wissen van bijlagen uit versleutelde berichten kan de ondertekening ongeldig maken"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Kan alleen multipart-bijlagen wissen"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "U kunt alleen message/rfc882-gedeelten doorsturen!"
+
+@@ -6559,7 +6637,7 @@ msgstr "Kan bestand %s niet aanmaken"
+ msgid "Can't find any tagged messages"
+ msgstr "Kan geen geselecteerde berichten vinden"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Geen mailing-lists gevonden"
+
+@@ -6574,67 +6652,67 @@ msgstr "Kan niet alle bijlagen decoderen. De rest inpakken met MIME?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "U kunt alleen message/rfc882-gedeelten doorsturen!"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Toevoegen"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Invoegen"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Kan type2.list niet lezen van mixmaster."
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Selecteer een remailer lijster"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Fout: %s kan niet gebruikt worden als laaste remailer van een lijst"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster lijsten zijn beperkt tot %d items"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "De remailer lijst is al leeg"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Het eerste lijst-item is al geselecteerd"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Het laaste lijst-item is al geselecteerd"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster laat geen CC of BCC-kopregels toe"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "De hostname variable moet ingesteld zijn voor mixmaster gebruik"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Externe fout %d opgetreden tijdens versturen van bericht.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Er is een fout opgetreden tijdens het versturen van het bericht"
+
+@@ -6665,42 +6743,42 @@ msgstr "Doorsturen als bijlagen?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Reactie sturen naar %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Reactie sturen naar %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Bericht in antwoord citeren?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Geciteerde bericht wordt toegevoegd..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Kon niet alle berichten citeren"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Doorsturen als bijlage?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Voorbereiden door te sturen bericht..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: niet ondersteund in deze modus"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Bijlages opslaan in Fcc?"
+
+@@ -6708,196 +6786,196 @@ msgstr "Bijlages opslaan in Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Geen postvak.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Uigesteld bericht hervatten?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Doorgestuurd bericht wijzigen?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Uitgesteld bericht afbreken?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Bericht werd niet veranderd. Operatie afgebroken"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Bericht niet verstuurd"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Bericht uitgesteld"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Geen onderwerp. Versturen afbreken?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Geen onderwerp"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Geen onderwerp"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "bewerk de transport-codering van een bijlage"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Versturen van bericht..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Bericht kon niet verstuurd worden"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Bericht wordt op de achtergrond verstuurd"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Bericht verstuurd"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Geen 'boundary parameter' gevonden [meldt deze fout]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s bestaat niet meer"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s is geen normaal bestand"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Bericht kon niet verstuurd worden."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Kan %s niet openen."
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail moet ingesteld zijn om mail te kunnen versturen"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Fout %d opgetreden tijdens versturen van bericht: %s"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Uitvoer van het afleverings proces"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Ongeldige IDN %s tijdens maken resent-from header"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-sessie is mislukt: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-sessie is mislukt: kan %s niet openen"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Ongeldig SMTP-URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s-authenticatie is mislukt; volgende methode wordt geprobeerd"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI-authenticatie is mislukt"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-server ondersteunt geen authenticatie"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Geen van-adres opgegeven"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-sessie is mislukt: leesfout"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-sessie is mislukt: schrijffout"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Ongeldige reactie van server"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Postvak wordt gesorteerd..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Kan sorteerfunctie niet vinden [Meld deze fout]"
+
+@@ -6966,11 +7044,11 @@ msgstr ""
+ "NeoMutt is vrije software, en u bent vrij om het te verspreiden\n"
+ "onder bepaalde voorwaarden; type 'neomutt -vv' voor meer informatie.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Opties tijdens compileren:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opties tijdens compileren:"
+diff --git a/po/pl.po b/po/pl.po
+index 1249e44b5..21a56b404 100644
+--- a/po/pl.po
++++ b/po/pl.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-11-12 11:18+0100\n"
+ "Last-Translator: Marcin Rajner <marcin.rajner@pw.edu.pl>\n"
+ "Language-Team: none\n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(o)drzuć, zaakceptuj (r)az, (a)kceptuj zawsze, (p)omiń"
++
++msgid "roas"
++msgstr "orap"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(o)drzuć, zaakceptuj (r)az, (a)kceptuj zawsze"
++
++msgid "roa"
++msgstr "ora"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(o)drzuć, zaakceptuj (r)az, (p)omiń"
++
++msgid "ros"
++msgstr "orp"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(o)drzuć, zaakceptuj (r)az"
++
++msgid "ro"
++msgstr "or"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Wyjście"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Usuń"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Odtwórz"
+
+@@ -38,18 +62,18 @@ msgstr "Odtwórz"
+ msgid "Select"
+ msgstr "Wybierz"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Pomoc"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Brak aliasów"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliasy"
+
+@@ -58,51 +82,51 @@ msgstr "Aliasy"
+ msgid "Alias as: "
+ msgstr "Nazwa aliasu: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Istnieje już tak nazwany alias"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Ostrzeżenie: alias o takiej nazwie może nie zadziałać. Poprawić?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adres: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Błędny IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nazwisko: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Potwierdzasz?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Zapisz do pliku: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Błąd podczas czytania pliku aliasów"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Błąd podczas dodawania aliasów"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias dodany"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Błąd przeszukiwania pliku aliasów"
+
+@@ -111,7 +135,7 @@ msgstr "Błąd przeszukiwania pliku aliasów"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s nie istnieje. Utworzyć?"
+@@ -120,8 +144,8 @@ msgstr "%s nie istnieje. Utworzyć?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Nie można utworzyć %s: %s"
+@@ -131,7 +155,7 @@ msgstr "Nie można utworzyć %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -140,7 +164,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -149,7 +173,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -158,7 +182,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -170,14 +194,14 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Czy szyfrować?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -185,7 +209,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -194,7 +218,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Brak (poprawnych) kluczy cyfrowania dla %s"
+@@ -206,12 +230,12 @@ msgstr "Brak (poprawnych) kluczy cyfrowania dla %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Skanuj skrzynkę pocztową"
+
+@@ -222,21 +246,21 @@ msgstr "Skanuj skrzynkę pocztową"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Utwórz"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Usuń"
+
+@@ -244,9 +268,9 @@ msgstr "Usuń"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -254,17 +278,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -273,7 +297,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -281,7 +305,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -289,12 +313,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -302,12 +326,12 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Błąd aktualizacji konta"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Naprawdę usunąć skrzynkę \"%s\"?"
+@@ -325,7 +349,7 @@ msgstr "Naprawdę usunąć skrzynkę \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Nie można otworzyć zaszyfrowanej skrzynki pocztowej %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "Błąd tworzenia kontekstu gpgme: %s"
+@@ -398,276 +422,227 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Pamięć podręczna (cache) wiadomości nie jest katalogiem: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Zmień katalog"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Idź do"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Wzorzec"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Lista"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Zasubskrybuj"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Odsubskrybuj"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s nie jest katalogiem"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Zasubskrybowano grupę dyskusyjną"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Listy dyskusyjne na serwerze [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Skrzynki [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Zasubskrybowane [%s], wzorzec nazw plików: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Katalog [%s], wzorzec nazw plików: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Załącznikiem nie może zostać katalog"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Żaden plik nie pasuje do wzorca"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Tworzenie skrzynek jest obsługiwane tylko dla skrzynek IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Zmiana nazwy jest obsługiwana tylko dla skrzynek IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Usuwanie skrzynek jest obsługiwane tylko dla skrzynek IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Nie można skasować wybranych skrzynek pocztowych"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Naprawdę usunąć skrzynkę \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Skrzynka została usunięta"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Usunięcie skrzynki nie powiodło się"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Skrzynka nie została usunięta"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Zmień katalog na: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Błąd przeglądania katalogu"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Wzorzec nazw plików: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortowanie odwrotne wg (d)aty, (a)lfabetu, (o)pisu, ro(z)miaru, li(c)zby, liczby no(w)ych, żad(n)e?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortowanie wg (d)aty, (a)lfabetu, (o)pisu, ro(z)miaru, li(c)zby, liczby no(w)ych, żad(n)e?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "daozcwn"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nazwa nowego pliku: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Nie można przeglądać tego katalogu"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Błąd podczas próby przeglądania pliku"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Subskrybuj wzorzec: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Odsubskrybuj wzorzec: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Żadna grupa dyskusyjna nie pasuje do wzorca"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: kolor nie jest obsługiwany przez Twój terminal"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: nie ma takiego koloru"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: nie ma takiego obiektu"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: za mało argumentów"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: nie ma takiego atrybutu"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: za dużo argumentów"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "domyślnie ustalone kolory nie są obsługiwane"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s: błędna liczba: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Weryfikować podpis?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Nie można utworzyć pliku tymczasowego"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Nie można utworzyć filtru wyświetlania"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Nie można skopiować listu"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Podpis S/MIME został pomyślnie zweryfikowany"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Właściciel certyfikatu nie odpowiada nadawcy"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Ostrzeżenie: fragment tej wiadomości nie został podpisany"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Podpis S/MIME NIE może zostać zweryfikowany"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Podpis PGP został pomyślnie zweryfikowany"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Podpis PGP NIE może zostać zweryfikowany"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Błąd uruchomienia \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Wprowadź polecenie: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Ostrzeżenie: wiadomość nie zawiera pola From: w nagłówku"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Wyślij kopię listu do: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Wyślij kopie zaznaczonych listów do: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Błąd interpretacji adresu"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -675,48 +650,48 @@ msgstr[0] "Wyślij kopię listu do %s?"
+ msgstr[1] "Wyślij kopie listów do %s?"
+ msgstr[2] "Wyślij kopie listów do %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Kopia nie została wysłana"
+ msgstr[1] "Kopie nie zostały wysłane"
+ msgstr[2] "Kopie nie zostały wysłane"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Kopia została wysłana"
+ msgstr[1] "Kopie zostały wysłane"
+ msgstr[2] "Kopie zostały wysłane"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Nie można utworzyć procesu filtru"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Wyślij przez potok do polecenia: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Polecenie drukowania nie zostało skonfigurowane"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Wydrukować list?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Wydrukować zaznaczone listy?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "List został wydrukowany"
+ msgstr[1] "Listy zostały wydrukowane"
+ msgstr[2] "Listy zostały wydrukowane"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "List nie został wydrukowany "
+@@ -724,148 +699,310 @@ msgstr[1] "Listy nie zostały wydrukowane"
+ msgstr[2] "Listy nie zostały wydrukowane"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Odwr-Sortowanie (d)ata/(a)ut/o(t)rzym/t(e)m/d(o)/(w)ąt/(b)ez/ro(z)m/wa(g)a/(s)pam,(e)tykieta?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sortowanie (d)ata/(a)ut/o(t)rzym/t(e)m/d(o)/(w)ąt/(b)ez/ro(z)m/wa(g)a/(s)pam,(e)tykieta?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dateowbzgse"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Polecenie powłoki: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Dekoduj-zapisz do skrzynki"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekoduj-zapisz zaznaczone do skrzynki"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Rozszyfruj-zapisz do skrzynki"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Rozszyfruj-zapisz zaznaczone do skrzynki"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Zapisz do skrzynki"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Zapisz zaznaczone do skrzynki"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekoduj-kopiuj do skrzynki"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekoduj-kopiuj zaznaczone do skrzynki"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Rozszyfruj-kopiuj do skrzynki"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Rozszyfruj-kopiuj zaznaczone do skrzynki"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Kopiuj do skrzynki"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopiuj zaznaczone do skrzynki"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopiowanie do %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Content-Type za długi"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Przekonwertować do %s przy wysyłaniu?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Typ \"Content-Type\" zmieniono na %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Zestaw znaków został zmieniony na %s; bez konwersji"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Zestaw znaków został zmieniony na %s; konwertowanie"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: za mało argumentów"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: brak nazwy grupy"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "brak argumentów"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Błąd w %s, linia %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Ostrzeżenie w %s, linia %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: błędy w %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: wczytywanie zaniechane z powodu zbyt wielu błędów w %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: %d ostrzeżenie w %s"
++msgstr[1] "source: %d ostrzeżenia w %s"
++msgstr[2] "source: %d ostrzeżeń w %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: brak adresu"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Ostrzeżenie: błędny IDN '%s' w aliasie '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "załączniki: brak specyfikacji inline/attachment"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Obecne ustawienia załączników:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "załączniki: błędna specyfikacja inline/attachment"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: za dużo argumentów"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: brakujący -rx lub -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgrupa: ostrzeżenie: błędny IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "nieprawidłowy nagłówek"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: nieznana zmienna"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s nie jest ustawiony"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: błędy w %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "sourced: plik %s nie może być wczytany"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "Spam: brak pasującego wzorca"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "NieSpam: brak pasującego wzorca"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Zasubskrybowano %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Nie można zasubskrybować %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Nie wybrano żadnego folderu"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "brak specyfikacji inline/attachment"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "błędna specyfikacja inline/attachment"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Odsubskrybowano %s"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Nie można odsubskrybować %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Brak załączników"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Od: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Do: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Kopia: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Ukryta kopia: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Temat: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Odpowiedź do:"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Zapisz w: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -876,75 +1013,75 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Podpisz jako: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr ""
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Wyślij"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Anuluj"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "Adresat"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopia"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Temat"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Dołącz plik"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Opis"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Grupy dyskusyjne"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Nie"
+
+@@ -952,7 +1089,7 @@ msgstr "Nie"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -960,14 +1097,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Tak"
+
+@@ -977,7 +1114,7 @@ msgstr "Tak"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -985,51 +1122,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Zaznaczanie nie jest obsługiwane"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Podpisz i zaszyfruj"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Zaszyfruj"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Podpisz"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Żaden"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP w treści)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (tryb OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<domyślnie>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Zaszyfruj używając: "
+
+@@ -1038,11 +1175,11 @@ msgstr "Zaszyfruj używając: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr ""
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<nie zdefiniowany łańcuch>"
+
+@@ -1053,7 +1190,7 @@ msgstr "<nie zdefiniowany łańcuch>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Załącznik #%d już nie istnieje: %s"
+@@ -1065,233 +1202,352 @@ msgstr "Załącznik #%d już nie istnieje: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Załącznik #%d został zmodyfikowany. Zaktualizować kodowanie dla %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Załączniki"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Nie możesz usunąć jedynego załącznika"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Błędny IDN w '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Załącznik jest już na samej górze"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Fundamentalna część nie może być przeniesiona"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Załącznik jest już na samym dole"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Błąd podczas wysyłania listu"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Dołączanie wybranego listu..."
+ msgstr[1] "Dołączanie wybranych listów..."
+ msgstr[2] "Dołączanie wybranych listów..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Nie można dołączyć %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Otwórz skrzynkę w celu dołączenia listu"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Otwórz grupę dyskusyjną w celu dołączenia listu"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Nie można otworzyć skrzynki pocztowej %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Brak listów w tej skrzynce"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Zaznacz listy do dołączenia"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Nie można dołączyć"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Tylko tekstowe załączniki można przekodować"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Bieżący załacznik nie zostanie przekonwertowany"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Bieżący załacznik zostanie przekonwertowany"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Błędne kodowanie"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Zapisać kopię tego listu?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Wyślij załącznik o nazwie: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Zmień nazwę na: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Nie można ustalić stanu (stat) %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nowy plik: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Typ \"Content-Type\" musi być w postaci podstawowy/pośledni"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Nieznany typ \"Content-Type\" %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Nie można utworzyć %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Mamy tu błąd tworzenia załącznika"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Zapisać (odłożyć) szkic wiadomośći?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Zapisz list do skrzynki"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Zapisywanie listu do %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "List został zapisany"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Nie skonfigurowano beckendu PGP"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "Wybrano już S/MIME. Anulować wybór S/MIME i kontynuować?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Nie skonfigurowano beckendu S/MIME"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "Wybrano już PGP. Anulować wybór PGP i kontynuować?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Nie można dołączyć bez ustawienia append-hook lub close-hook : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Nie można zablokować skrzynki pocztowej"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Rozpakowuje %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Nie rozpoznano zawartości skompresowanego pliku"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Kompresja nie powiodła się: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Ten typ skrzynki pocztowej nie obsługuje dołączania"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Nie można zsynchronizować skompresowanego pliku bez ustawienia close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Kompresja %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Dołączanie po kompresji do %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Błąd. Zachowano plik tymczasowy: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Błędna data względna: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Błędna data względna: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%s: błędna liczba: %s"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Niewłaściwa wartość opcji %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Niewłaściwy miesiąc: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funkcja %s nie może zostać ustawiona w trybie załączania"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%s: błędna liczba: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%s: błędna liczba: %s"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Błędna data względna: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Niewłaściwa wartość opcji %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Błąd: wartość '%s' jest błędna dla -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: nieznana zmienna"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Błędna data względna: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Błędna data względna: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nazwa konta na %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Hasło dla %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "Brak zdefiniowanej komendy odświeżania OAUTH"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1312,7 +1568,7 @@ msgstr "Łączenie z %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Połączenie z %s (%s) nie zostało ustanowione"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "nieznany błąd"
+
+@@ -1326,23 +1582,23 @@ msgstr "Błąd komunikacji z %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Połączenie z %s zostało odrzucone"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "SASL: błędny profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "SASL: błąd ustanawiania połączenia"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "SASL: błąd konfigurowania parametrów zabezpieczeń"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "SASL: błąd konfigurowania SSF hosta zdalnego"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "SASL: błąd konfigurowania nazwy użytkownika hosta zdalnego"
+
+@@ -1355,132 +1611,108 @@ msgstr "Polecenie 'preconnect' nie powiodło się"
+ msgid "Connection to %s closed"
+ msgstr "Połączenie z %s zostało zakończone"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Wypełnianie zbiornika entropii: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "Prawa dostępu do %s mogą powodować problemy z bezpieczeństwem"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Protokół SSL nie może zostać użyty ze względu na brak entropii"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Nieznany"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[niemożliwe do wyznaczenia]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[błędna data]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Certyfikat serwera nie uzyskał jeszcze ważności"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Certyfikat serwera utracił ważność"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Zgromadzenie odpowiedniej ilości entropii nie powiodło się"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "nie można pobrać tematu certyfikatu"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "nie można pobrać nazwy certyfikatu"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "właściciel certyfikatu nie odpowiada nazwie hosta %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Ten certyfikat należy do:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Ten certyfikat został wydany przez:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Ten certyfikat jest ważny"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " od %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " do %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Odcisk SHA1: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "Odcisk SHA256: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Sprawdzanie certyfikatu SSL (certyfikat %zu z %zu w łańcuchu)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "orap"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(o)drzuć, zaakceptuj (r)az, (a)kceptuj zawsze, (p)omiń"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(o)drzuć, zaakceptuj (r)az, (a)kceptuj zawsze"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(o)drzuć, zaakceptuj (r)az, (p)omiń"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(o)drzuć, zaakceptuj (r)az"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Wyjście "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Ostrzeżenie: Nie można zapisać certyfikatu"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certyfikat został zapisany"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sprawdzenie hosta certyfikatu nie powiodło się: %s"
+@@ -1488,15 +1720,15 @@ msgstr "Sprawdzenie hosta certyfikatu nie powiodło się: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Ostrzeżenie: nieudane ustawienie TLS SNI host name"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Błąd wejścia/wyjścia"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL nie powiodło się: %s"
+@@ -1504,89 +1736,73 @@ msgstr "SSL nie powiodło się: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Nie można utworzyć kontekstu SSL"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Ostrzeżenie: błąd uruchomienia ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Nie można pobrać certyfikatu z docelowego hosta"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Błąd weryfikacji certyfikatu (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "To nie jest certyfikat X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Błąd inicjalizacji gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Błąd przetwarzana certyfikatu"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Ostrzeżenie: certyfikat serwera jeszcze nie uzyskał ważności"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Ostrzeżenie: certyfikat serwera wygasł"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Ostrzeżenie: certyfikat serwera został odwołany"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "Ostrzeżenie: nazwa (hostname) serwera nie odpowiada certyfikatowi"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Ostrzeżenie: certyfikat nie został podpisany przez CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Ostrzeżenie: certyfikat serwera został podpisany przy pomocy niezabezpieczonego algorytmu"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "ora"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "or"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Wszystkie dostępne protokoły połączenia TLS/SSL zostały zablokowane"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Połączenie SSL/TLS używając %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Błąd: brak otwartego gniazdka TLS"
+
+@@ -1605,7 +1821,7 @@ msgstr "Zestawianie tunelu: błąd komunikacji z %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Zestawianie tunelu: %s zwrócił błąd %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1613,31 +1829,11 @@ msgstr[0] ""
+ msgstr[1] ""
+ msgstr[2] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "tak"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nie"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Wyjść z NeoMutta?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Naciśnij dowolny klawisz by kontynuować..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (przyciśnięcie '?' wyświetla listę): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1659,7 +1855,7 @@ msgstr ""
+ "~M listy to samo co ~m ale dołącz też nagłówki\n"
+ "~p drukuj list\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1681,20 +1877,20 @@ msgstr ""
+ "~? ten list\n"
+ ". stojąc sama w linii kończy wpisywanie\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: błędny numer listu.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Zakończ list . (kropką) w osobnej linii)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Brak skrzynki.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "List zawiera:\n"
+
+@@ -1702,19 +1898,19 @@ msgstr "List zawiera:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(kontynuuj)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "brak nazwy pliku.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Pusty list.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: nieznane polecenie edytora (~? wyświetla pomoc)\n"
+@@ -1761,19 +1957,73 @@ msgstr "Nie można dopisać do skrzynki: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "wieloczęściowy list nie posiada wpisu ograniczającego"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Wątkowanie nie zostało włączone"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Ustaw flagę"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Wyczyść flagę"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: kolor nie jest obsługiwany przez Twój terminal"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: nie ma takiego koloru"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: nie ma takiego obiektu"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: nie ma takiego atrybutu"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "domyślnie ustalone kolory nie są obsługiwane"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s: błędna liczba: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "tak"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nie"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Wyjść z NeoMutta?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Naciśnij dowolny klawisz by kontynuować..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (przyciśnięcie '?' wyświetla listę): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1794,23 +2044,23 @@ msgstr "[-- Podgląd za pomocą %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Wywoływanie polecenia podglądu: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Nie można utworzyć filtra"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Nie można uruchomić %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Komunikaty błędów %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Błąd: message/external-body nie ma ustawionego rodzaju dostępu --]\n"
+
+@@ -1829,7 +2079,7 @@ msgstr "[-- Błąd: message/external-body nie ma ustawionego rodzaju dostępu --
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1861,7 +2111,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1876,7 +2126,7 @@ msgstr[2] "[-- Te załączniki typu %s/%s (o wielkości %s bajtów) zostały usu
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1887,12 +2137,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Ten załącznik typu %s/%s został usunięty --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nazwa: %s --]\n"
+@@ -1900,7 +2150,7 @@ msgstr "[-- nazwa: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1916,7 +2166,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1925,91 +2175,91 @@ msgstr ""
+ "[-- Ten załącznik typu %s/%s nie jest zawarty, --]\n"
+ "[-- a podany typ dostępu %s nie jest obsługiwany --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[--Błąd: Nie można wyświetlić żadnego z fragmentów Multipart/Alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Załącznik #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Załącznik #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Jedna lub więcej części tej wiadomości nie może zostać wyświetlona"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Nie można otworzyć strumienia pamięci"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Nie można otworzyć pliku tymczasowego"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Nie można ponownie otworzyć 'memory stream'"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Błąd: multipart/signed nie ma protokołu"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- To jest załącznik (użyj '%s' do oglądania tego fragmentu) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- typ %s/%s nie jest obsługiwany (użyj '%s' do oglądania tego fragmentu) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- To jest załącznik (przypisz 'view-attachments' do klawisza) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- typ %s/%s nie jest obsługiwany (przypisz 'view-attachments' do klawisza) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- To jest załącznik --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- typ %s/%s nie jest obsługiwany --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "BŁĄD: zgłoś, proszę, ten błąd"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<NIEZNANY>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Standardowe przypisania klawiszy:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Nie przypisane klawiszom funkcje:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Pomoc dla menu %s"
+@@ -2026,41 +2276,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr "błędnie sformatowane polecenie"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Nie można wykonać \"unhook *\" wewnątrz innego polecenia hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: nieznany typ polecenia hook: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Nie można skasować %s z wewnątrz %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: nie ma takiego menu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: brak skrótów klawiszowych dla tego menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: nie ma makr w tym menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Nie można utworzyć pliku tymczasowego %s"
+@@ -2097,28 +2347,28 @@ msgstr "Uwierzytelnianie GSSAPI nie powiodło się"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN został wyłączony na tym serwerze"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Logowanie..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Zalogowanie nie powiodło się"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Uwierzytelnianie (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Uwierzytelnianie OAUTHBEARER nie powiodło się"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Uwierzytelnianie (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Uwierzytelnianie SASL nie powiodło się"
+
+@@ -2165,73 +2415,63 @@ msgstr "Zmiana nazwy nie powiodła się: %s"
+ msgid "Mailbox renamed"
+ msgstr "Nazwa została zmieniona"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Skrzynka %s@%s została zamknięta"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Połączenie z %s zostało zakończone"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Zbyt stara wersja serwera IMAP. Praca z tym serwerem nie jest możliwa."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Nie podano nazwy nagłówka: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Wyszukiwanie użytkownika nie jest wspierane przez serwer: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr ""
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Zamykanie połączenia do %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Połączyć używając TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Połączenie TLS nie zostało wynegocjowane"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Połączenie szyfrowane nie jest dostępne"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Subskrybowanie %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Odsubskrybowanie %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Zasubskrybowano %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Odsubskrybowano %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2239,16 +2479,16 @@ msgstr[0] "Kopiowanie %d listu do %s..."
+ msgstr[1] "Kopiowanie %d listów do %s..."
+ msgstr[2] "Kopiowanie %d listów do %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Utworzyć %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Skasowanie nie powiodło się"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2257,7 +2497,7 @@ msgstr[1] "Zaznaczanie %d listów jako skasowanych..."
+ msgstr[2] "Zaznaczanie %d listów jako skasowanych..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2265,36 +2505,36 @@ msgstr[0] "Zapisywanie zmienionego listu... [%d/%d]"
+ msgstr[1] "Zapisywanie zmienionych listów... [%d/%d]"
+ msgstr[2] "Zapisywanie zmienionych listów... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Błąd zapisywania listów. Potwierdzasz wyjście?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Błąd zapisywania flag"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Kasowanie listów na serwerze... "
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE nie powiodło się"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Wybieranie %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Błąd otwarcia skrzynki"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "Serwer IMAP nie wspiera flag użytkownika"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Błędne flagi IMAP"
+
+@@ -2304,7 +2544,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Brak pamięci"
+
+@@ -2322,7 +2562,7 @@ msgstr "Pobieranie aktualnych flag..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Nie można pobrać nagłówków z serwera IMAP w tej wersji"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Pobieranie nagłówków..."
+
+@@ -2335,152 +2575,152 @@ msgstr "Ładowanie listu..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopiowanie listu %d do %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Pobieranie listu..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Błędny indeks listów. Spróbuj ponownie otworzyć skrzynkę."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Kontynuować?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Wyjdź"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Zapisz"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Wyślij"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Odpowiedz"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupie"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Kontynuacja"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Nie otwarto żadnej skrzynki"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Brak listów"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Brak widocznych listów"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Skrzynka jest tylko do odczytu"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funkcja niedostępna w trybie załączania"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: operacja nie dozwolona przez ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Nie można zapisać do skrzynki oznaczonej jako 'tylko do odczytu'"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Zmiany zostaną naniesione niezwłocznie po wyjściu ze skrzynki"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Zmiany w skrzynce nie zostaną naniesione"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s nie jest skrzynką"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Skrzynka została zmodyfikowana z zewnątrz. Flagi mogą być nieaktualne."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Uwaga - w bieżącej skrzynce pojawiła się nowa poczta!"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Skrzynka została zmodyfikowana z zewnątrz"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Brak zaznaczonych listów"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Brak akcji do wykonania"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Podaj identyfikator wiadomości (Message-Id): "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Artykuł nie ma odniesienia"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Pierwszy list wątku nie jest widoczny w trybie ograniczonego przeglądania"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Pobieranie %s z serwera... "
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Artykuł %s nie został odnaleziony na serwerze"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Brak identyfikatora wiadomości (Message-ID).Zaniechano wykonanie polecenia"
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Nie znaleziono usuniętych wiadomości w wątku"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Skocz do listu: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Jako argument wymagany jest numer listu"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Błędny numer listu"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Ten list nie jest widoczny"
+
+@@ -2493,37 +2733,37 @@ msgstr "Ten list nie jest widoczny"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Nie można skasować listów"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Usuń listy pasujące do wzorca: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Wzorzec ograniczający nie został określony"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Ograniczenie: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Ogranicz do pasujących listów: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Aby ponownie przeglądać wszystkie listy, ustaw ograniczenie na \".*\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Wyjść z NeoMutta?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Zaznacz pasujące listy: "
+
+@@ -2531,195 +2771,195 @@ msgstr "Zaznacz pasujące listy: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Nieudane przywrócenie listów"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Odtwórz pasujące listy: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Odznacz pasujące listy: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Wylogowano z serwera IMAP"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Brak folderu wirtualnego i Message-Id, zaniechano"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Nieudane stworzenie zapytania, zaniechano"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Nie udało się wczytać wątku, zaniechano"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Folder nie wspiera tagowania, zaniechano"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Tag nieokreślony, zaniechano"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Aktualizacja tagów..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Nieudana modyfikacja tagów, zaniechano"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Brak zapytania, zaniechano"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Żaden notmach vfolder nie jest obecnie załadowany"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Otwórz skrzynkę tylko do odczytu"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Otwórz skrzynkę"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Żadna skrzynka nie zawiera nowych listów"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Otwórz grupę dyskusyjną tylko do odczytu"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Otwórz listę dyskusyjną"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Wyjść z NeoMutta bez zapisywania zmian?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Nie można rozłączyć wątku"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Wątek został przerwany"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Wątek nie może być rozłączony, wiadomość nie jest częścią wątku"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Ne mogę połączyć wątków"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Brak nagłówka Message-ID: wymaganego do połączenia wątków"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Najpierw zaznacz list do połączenia"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Wątki połączono"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Wątki nie zostały połączone"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "To jest ostatni list"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Brak odtworzonych listów"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "To jest pierwszy list"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Brak nowych wiadomości dla wybranego ograniczenia"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Brak nowych listów"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Brak nieprzeczytanych listów w trybie ograniczonego przeglądania"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Brak nieprzeczytanych listów"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Kontynuacja poszukiwania od początku"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Kontynuacja poszukiwania od końca"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Nie można ustawić flagi dla wiadomości"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Nie mogę przełączyć flagi new"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Nie ma więcej wątków"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "To pierwszy wątek"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Wątek zawiera listy nieprzeczytane lub posiadające flagę"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Nie można skasować listu"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Nie można edytować listu"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2730,7 +2970,7 @@ msgstr[2] "%d zmienionych etykiet"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Nie zmieniono etykiet"
+
+@@ -2738,276 +2978,140 @@ msgstr "Nie zmieniono etykiet"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Nie można oznaczyć wiadomości jako przeczytane"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Wprowadź klawisz makra: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "hotkey listu"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Kopia została wysłana do %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Brak identyfikatora makra"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Odpowiedzieć przy pomocy maila zgodnie z życzeniem nadawcy?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Dodawanie postów w tej grupie jest niedozwolone, możliwa moderacja. Kontynuować?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Nieudane przywrócenie listu"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Błąd w poleceniu: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Ostrzeżenie w poleceniu: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "nie można ustalić nazwy węzła poprzez uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: brak nazwy grupy"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "brak argumentów"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Błąd w %s, linia %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Ostrzeżenie w %s, linia %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: błędy w %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: wczytywanie zaniechane z powodu zbyt wielu błędów w %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: %d ostrzeżenie w %s"
+-msgstr[1] "source: %d ostrzeżenia w %s"
+-msgstr[2] "source: %d ostrzeżeń w %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: brak adresu"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Ostrzeżenie: błędny IDN '%s' w aliasie '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "załączniki: brak specyfikacji inline/attachment"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Obecne ustawienia załączników:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "załączniki: błędna specyfikacja inline/attachment"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: brakujący -rx lub -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgrupa: ostrzeżenie: błędny IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "nieprawidłowy nagłówek"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: nieznana zmienna"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s nie jest ustawiony"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: błędy w %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "sourced: plik %s nie może być wczytany"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "Spam: brak pasującego wzorca"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "NieSpam: brak pasującego wzorca"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Nie można zasubskrybować %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Nie wybrano żadnego folderu"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "brak specyfikacji inline/attachment"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "błędna specyfikacja inline/attachment"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Nie można odsubskrybować %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: nieznane polecenie"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Niewłaściwa wartość opcji %s: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funkcja %s nie może zostać ustawiona w trybie załączania"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Wykryto pętlę w makrze"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klawisz nie został przypisany"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klawisz nie został przypisany. Aby uzyskać pomoc przyciśnij '%s'."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: pusta sekwencja klawiszy"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Funkcja '%s' nie jest dostępna w menu '%s'"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: pusta sekwencja klawiszy"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: brak argumentów"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: brak takiej funkcji"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Wprowadź klucze (^G aby przerwać): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "znak = %s, ósemkowy = %o, dziesiętny = %d"
+@@ -3031,7 +3135,7 @@ msgstr "brak wpisu w 'mailcap' dla typu %s"
+ msgid "Scanning %s..."
+ msgstr "Sprawdzanie %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Czytanie %s..."
+@@ -3045,13 +3149,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): nie można nadać plikowi daty"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Zapisywanie %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3074,7 +3178,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3117,54 +3221,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Błąd inicjalizacji terminala"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "nie można ustalić nazwy użytkownika"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "nie można ustalić położenia katalogu domowego"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Błąd: wartość '%s' jest błędna dla -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nie wskazano adresatów listu"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Nie można użyć przełącznika -E wraz ze stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Nie można dopasować szablonu wiadomości: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: nie można dołączyć pliku"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Brak skrzynki z nową pocztą"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Nie zdefiniowano położenia skrzynek z nową pocztą"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Skrzynka pocztowa jest pusta"
+
+@@ -3206,52 +3310,52 @@ msgstr "Nie można ponownie otworzyć skrzynki pocztowej"
+ msgid "Can't write message"
+ msgstr "Nie można zapisać listu"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Przeskocz do: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Niewłaściwy numer indeksu"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Brak pozycji"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Nie można niżej przewinąć"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Nie można wyżej przewinąć"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "To jest pierwsza strona"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "To jest ostatnia strona"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "To jest ostatnia pozycja"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "To jest pierwsza pozycja"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Szukaj frazy: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Szukaj frazy w przeciwnym kierunku: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nic nie znaleziono"
+
+@@ -3294,20 +3398,20 @@ msgstr "Oczekiwanie na blokadę typu 'flock'... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Błędny format pliku historii (wiersz %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Nie można utworzyć pliku tymczasowego"
+
+@@ -3326,7 +3430,7 @@ msgstr "Diagnostyka błędów na poziomie %d do pliku '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Zapisywanie logu na poziomie %d do pliku '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Błąd: konwersja do absolutnej ścieżki"
+
+@@ -3349,17 +3453,17 @@ msgstr "Otrzymano sygnał %d (%s) ... Koniec pracy.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Otrzymano sygnał %d ... Koniec pracy.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3367,146 +3471,119 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Ten plik jest katalogim, zapisać w nim? (t)ak, (n)ie, (w)szystkie"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "tnw"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Ten plik jest katalogim, zapisać w nim?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Plik w katalogu: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Plik istnieje: (n)adpisać, (d)ołączyć czy (a)nulować?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "nda"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Nie można zapisać listu w skrzynce POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Dopisać listy do %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Nie można zapisać listu na serwerze wiadomości"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nazwa konta na %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Hasło dla %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "Brak zdefiniowanej komendy odświeżania OAUTH"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Nie pasujący szablon nazwy, kontynuować?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Pole \"compose\" w pliku 'mailcap' wymaga %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Błąd otwarcia pliku podczas interpretacji nagłówków"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Błąd podczas próby otwarcia pliku w celu eliminacji nagłówków"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Zmiana nazwy pliku nie powiodła się"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Brak pola \"compose\" dla %s w pliku 'mailcap', utworzono pusty plik"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Pole \"Edit\" w pliku 'mailcap' wymaga %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Brak pola \"Edit\" dla %s w pliku 'mailcap'"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Brak odpowiedniego wpisu w 'mailcap'. Wyświetlam jako tekst."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Typ MIME nie został zdefiniowany. Nie można wyświetlić załącznika."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Polecenie: %-20.20s Opis: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Polecenie: %-30.30s Załącznik: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Załącznik: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Załącznik: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Błąd zapisu"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Nie wiem jak to wydrukować"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Szukaj"
+
+@@ -3515,21 +3592,21 @@ msgstr "Szukaj"
+ msgid "History '%s'"
+ msgstr "Historia '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Niewłaściwa wartość opcji %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Nie można wczytać kodu lua: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nowa poczta w "
+
+@@ -3550,20 +3627,20 @@ msgstr "Pierwszy list wątku nie jest widoczny w trybie ograniczonego przegląda
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Pierwszy list wątku nie jest widoczny w trybie ograniczonego przeglądania"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Przerwano wczytywanie z %s..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Nie można zapisać %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "wiadomość nie została usunięta"
+@@ -3574,13 +3651,13 @@ msgstr[2] "wiadomości nie zostało usuniętych"
+ msgid "Can't open trash folder"
+ msgstr "Nie można otworzyć folderu trash"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Zaznaczyć wszystkie artykuły jako przeczytane?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3588,7 +3665,7 @@ msgstr[0] "Przenieść %d przeczytany list do %s?"
+ msgstr[1] "Przenieść %d przeczytane listy do %s?"
+ msgstr[2] "Przenieść %d przeczytanych listów do %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3596,49 +3673,49 @@ msgstr[0] "Usunąć NIEODWOŁALNIE %d zaznaczony list?"
+ msgstr[1] "Usunąć NIEODWOŁALNIE %d zaznaczone listy?"
+ msgstr[2] "Usunąć NIEODWOŁALNIE %d zaznaczonych listy?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Przenoszenie przeczytanych listów do %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Skrzynka pozostała niezmieniona"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d zapisano, %d przeniesiono, %d usunięto"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d zapisano, %d usunięto"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Naciśnij '%s' aby zezwolić na zapisanie"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Użyj 'toggle-write' by ponownie włączyć zapisanie"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Skrzynka jest oznaczona jako niezapisywalna. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Zmiany w skrzynce naniesiono"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (bieżąca data i czas: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Wynik działania %s %s --]\n"
+@@ -3647,52 +3724,52 @@ msgstr "[-- Wynik działania %s %s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Hasło(a) zostało(y) zapomniane"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Inline PGP nie może zostać użyte do załączników. Użyć PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Nie wysłano listu: PGP w treści nie może być używane z załącznikami"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Inline PGP nie może zostać użyte do formatowania format=flow. Użyć PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Nie wysłano listu: PGP w treści nie może być używane z format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Wywoływanie PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Nie można wysłać listu w trybie inline. Zastosować PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "List nie został wysłany"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Listy S/MIME bez wskazówek co do zawartości nie są obsługiwane"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Próba skopiowania kluczy PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Próba skopiowania kluczy S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3701,7 +3778,7 @@ msgstr ""
+ "[-- Błąd: Nieznany protokół multipart/signed %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3709,7 +3786,7 @@ msgstr ""
+ "[-- Błąd: Niespójna struktura podpisu multipart/signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3718,7 +3795,7 @@ msgstr ""
+ "[-- Ostrzeżenie: nie można zweryfikować podpisów %s/%s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3726,7 +3803,7 @@ msgstr ""
+ "[-- Poniższe dane są podpisane --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3734,7 +3811,7 @@ msgstr ""
+ "[-- Ostrzeżenie: Nie znaleziono żadnych podpisów. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3753,229 +3830,229 @@ msgstr "Wywoływanie S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nazwa: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "znany także jako: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Ważny od: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Ważny do: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Typ Klucza: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Użycie Klucza: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Odcisk: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Numer Seryjny: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Wydany przez: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Podklucz: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "Błąd uruchamiania protokołu CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "Błąd tworzenia obiektu danych gpgme: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "Błąd alokacji obiektu danych: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "Błąd przeszukania obiektu danych: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "Błąd czytania obiektu danych: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "błąd dodania odbiorcy '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "Klucz tajny '%s' nie został odnaleziony: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "niejednoznaczne określenie klucza tajnego '%s'\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "Błąd obsługi klucza tajnego '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "PKA: błąd konfigurowania notacji podpisu: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "Błąd szyfrowania danych: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "Błąd podpisania danych: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "ani zmienna $pgp_sign_as nie jest ustawiona, ani nie zdefiniowano domyślnego klucza w ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Ostrzeżenie: jeden z kluczy został wycofany.\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Ostrzeżenie: klucz użyty do podpisania wygasł dnia: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Ostrzeżenie: co najmniej jeden z certyfikatów wygasł.\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Ostrzeżenie: podpis wygasł dnia: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Nie można zweryfikować: brak klucza lub certyfikatu.\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL nie jest dostępny.\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Ten CRL jest zbyt stary.\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Nie spełniono wymagań polityki.\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Wystąpił błąd systemowy."
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "Ostrzeżenie: dane PKA nie odpowiadają adresowi nadawcy: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Adres nadawcy zweryfikowany przez PKA to: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "Ostrzeżenie: nie ma ŻADNYCH dowodów, że ten klucz należy do osoby podanej powyżej.\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "Ostrzeżenie: ten klucz NIE NALEŻY do osoby podanej powyżej.\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "Ostrzeżenie: NIE ma pewności, że ten klucz należy do osoby podanej powyżej.\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "Identyfikator klucza "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "utworzono: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Błąd pobrania informacji o KeyID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Poprawny podpis złożony przez: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*BŁĘDNY* podpis złożony przez: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematyczny podpis złożony przez:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " wygasa: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Informacja o podpisie --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Błąd: weryfikacja nie powiodła się: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "[-- Początek danych (podpisane przez: %s) --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "[-- Koniec danych --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -3983,7 +4060,7 @@ msgstr ""
+ "[-- Koniec informacji o podpisie --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -3992,21 +4069,26 @@ msgstr ""
+ "[-- Błąd: odszyfrowanie nie powiodło się: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Błąd importowania klucza: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Błąd: odszyfrowanie lub weryfikacja nie powiodły się: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "List PGP został poprawnie odszyfrowany"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Błąd: kopiowanie danych nie powiodło się\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4014,11 +4096,11 @@ msgstr ""
+ "[-- POCZĄTEK LISTU PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- POCZĄTEK KLUCZA PUBLICZNEGO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4026,19 +4108,19 @@ msgstr ""
+ "[-- POCZĄTEK LISTU PODPISANEGO PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- KONIEC LISTU PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- KONIEC PUBLICZNEGO KLUCZA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- KONIEC LISTU PODPISANEGO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4046,11 +4128,11 @@ msgstr ""
+ "[-- Błąd: nie można odnaleźć początku listu PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Błąd: nie można utworzyć pliku tymczasowego --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4058,7 +4140,7 @@ msgstr ""
+ "[-- Następujące dane są podpisane i zaszyfrowane PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4066,24 +4148,20 @@ msgstr ""
+ "[-- Następujące dane są zaszyfrowane PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Koniec danych podpisanych i zaszyfrowanych PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Koniec danych zaszyfrowanych PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "List PGP został poprawnie odszyfrowany"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Odszyfrowanie listu PGP nie powiodło się"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4091,7 +4169,7 @@ msgstr ""
+ "[-- Poniższe dane są podpisane S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4099,34 +4177,34 @@ msgstr ""
+ "[-- Następujące dane są zaszyfrowane S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Koniec danych podpisanych S/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Koniec danych zaszyfrowanych S/MIME. --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "Nie można wyświetlić identyfikatora - nieznane kodowanie."
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "Nie można wyświetlić identyfikatora - błędne kodowanie."
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "Nie można wyświetlić identyfikatora - błędny DN."
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Błędny]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4135,94 +4213,94 @@ msgstr[1] "%s, %lu bity %s\n"
+ msgstr[2] "%s, %lu bitów %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "szyfrowanie"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "podpisywanie"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certyfikowanie"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Wyprowadzony]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Wygasły]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Zablokowany]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Gromadzenie danych..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Nie znaleziono klucza wydawcy: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Błąd: łańcuch certyfikatów zbyt długi - przetwarzanie zatrzymano tutaj\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Identyfikator klucza: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "wykonanie gpgme_op_keylist_start nie powiodło się: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "wykonanie gpgme_op_keylist_next nie powiodło się: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Wszystkie pasujące klucze są zaznaczone jako wygasłe lub wycofane"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Wybór "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Sprawdź klucz "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Pasujące klucze PGP i S/MIME"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Pasujące klucze PGP"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Pasujące klucze S/MIME"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "pasujące klucze"
+
+@@ -4230,55 +4308,55 @@ msgstr "pasujące klucze"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Nie można użyć tego klucza: wygasł, został wyłączony lub wyprowadzony"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Identyfikator wygasł, został wyłączony lub wyprowadzony. Czy naprawdę chcesz użyć tego klucza?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Nieprawidłowy identyfikator. Czy naprawdę chcesz użyć tego klucza?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Ten identyfikator jest tylko częściowo ważny. Czy naprawdę chcesz użyć tego klucza?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Poziom ważności tego identyfikatora nie został określony. Czy naprawdę chcesz użyć tego klucza?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Wyszukiwanie odpowiednich kluczy dla \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Użyć klucza numer \"%s\" dla %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Wprowadź numer klucza dla %s: "
+@@ -4287,15 +4365,15 @@ msgstr "Wprowadź numer klucza dla %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Nie znaleziono tajnych kluczy"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Podaj identyfikator klucza: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Błąd eksportowania klucza: %s"
+@@ -4303,92 +4381,92 @@ msgstr "Błąd eksportowania klucza: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Klucz PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: (p)odpisz, podpisz (j)ako, p(g)p, wy(c)zyść lub wyłącz tryb (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "pjgco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (p)odpisz, podpisz (j)ako, s/(m)ime, wy(c)zyść lub wyłącz tryb (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "pjmco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (z)aszyfruj, (p)odpisz, podpisz (j)ako, o(b)a, p(g)p, wy(c)zyść lub tryb (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "zpjbgco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (z)aszyfruj, (p)odpisz, podpisz (j)ako, o(b)a, (s)/mime, wy(c)zyść lub tryb (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "zpjbsco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME: (z)aszyfruj, (p)odpisz, podpisz (j)ako, o(b)a, p(g)p, (a)nuluj?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "zpjbga"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP: (z)aszyfruj, (p)odpisz, podpisz (j)ako, o(b)a, (s)/mime lub (w)yczyść?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "zpjbsw"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Błąd weryfikacji nadawcy"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Błąd określenia nadawcy"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Wprowadź hasło PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Błąd: nie można utworzyć podprocesu PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4399,15 +4477,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "List PGP nie został odszyfrowany"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Błąd wewnętrzny. Proszę zgłosić ten wyjątek."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4415,125 +4493,125 @@ msgstr ""
+ "[-- Błąd: nie można utworzyć podprocesu PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Odszyfrowanie nie powiodło się"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Nie można otworzyć podprocesu PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Nie można wywołać PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nline"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (p)odpisz, podpisz (j)ako, format %s, (w)yczyść lub wyłącz tryb (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "pjiwo"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP: (p)odpisz, podpisz (j)ako, (w)yczyść lub wyłącz tryb (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "pjwo"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, format %s, (w)yczyć lub tryb (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "zsabiwo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, (w)yczyć lub tryb (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "zsabwo"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a, format %s lub (w)yczyć?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "zsabiw"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP: (z)aszyfruj, podpi(s)z, podpisz j(a)ko, o(b)a lub (w)yczyć?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "zsabw"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Sprowadzam klucz PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Wszystkie pasujące klucze wygasły, zostały wyłączone lub wyprowadzone"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Klucze PGP dla <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Klucze PGP dla \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Nie można otworzyć /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Klucz PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Wprowadź hasło S/MIME:"
+
+@@ -4542,7 +4620,7 @@ msgstr "Wprowadź hasło S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Wygasły "
+
+@@ -4551,7 +4629,7 @@ msgstr "Wygasły "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Błędny "
+
+@@ -4560,7 +4638,7 @@ msgstr "Błędny "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Wyprowadzony "
+
+@@ -4569,7 +4647,7 @@ msgstr "Wyprowadzony "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Zaufany "
+
+@@ -4578,7 +4656,7 @@ msgstr "Zaufany "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Niezweryfikowany"
+
+@@ -4587,7 +4665,7 @@ msgstr "Niezweryfikowany"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Zweryfikowany "
+
+@@ -4596,58 +4674,58 @@ msgstr "Zweryfikowany "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Nieznany "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Certyfikat S/MIME dla \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Niezaufany identyfikator. Czy naprawdę chcesz użyć tego klucza?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Podaj numer klucza: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Brak (poprawnych) certyfikatów dla %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Błąd: nie można wywołać podprocesu OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Etykieta certyfikatu: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "brak certyfikatu"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "brak skrzynki"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Brak wyników działania OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Nie można podpisać - nie podano klucza. Użyj Podpisz jako."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Błąd: nie można wywołać podprocesu OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4655,19 +4733,19 @@ msgstr ""
+ "[-- Koniec komunikatów OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Błąd: nie można utworzyć podprocesu OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Następujące dane są zaszyfrowane S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Poniższe dane są podpisane S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4675,7 +4753,7 @@ msgstr ""
+ "\n"
+ "[-- Koniec danych zaszyfrowanych S/MIME. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4684,160 +4762,160 @@ msgstr ""
+ "[-- Koniec danych podpisanych S/MIME. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME: (p)odpisz, zaszyfruj (u)żywając, podp. (j)ako, (w)yczyć lub tryb (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "pujwo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME: (z)aszyfruj, (p)odpisz, zaszyfruj (u)żywając, podp. (j)ako, o(b)a, (w)yczyć lub tryb (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "zpujbwo"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME: (z)aszyfruj, (p)odpisz, (m)etoda, podp. (j)ako, o(b)a, (a)nuluj?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "zpmjba"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Wybierz algorytm: (1) DES, (2) RC2, (3) AES, (a)nuluj?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123a"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Nie zdefiniowano serwer wiadomości"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s jest nieprawidłową specyfikacją serwera wiadomości"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Serwer zamknął połączenie"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Serwer nie wspiera trybu czytania"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Żadna z metod uwierzytelniania nie jest dostępna"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s uwierzytelnianie nie powiodło się"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Połączenie z %s zostało zakończone. Połączyć ponownie?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Pobieranie listy artykułów..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Poszukiwanie nowej poczty..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "nie można przełączyć do trybu czytania"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Połączono z %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr ""
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Nie można opublikować artykułu: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Wczytywanie wiadomości grupy dyskusyjnej z serwera %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Wczytywanie opisów..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Sprawdzanie nowych grup dyskusyjnych..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s jest błędną specyfikacją grupy dyskusyjnej"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Lista dyskusyjna %s nie została znaleziona na serwerze"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Lista dyskusyjna %s została skasowana z serwera"
+@@ -4849,8 +4927,8 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "nie udane dopasowanie notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "nie udane dopasowanie notmuch url: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5940,182 +6018,182 @@ msgstr "ukryj/pokaż panel boczny"
+ msgid "show S/MIME options"
+ msgstr "pokaż opcje S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Nie ma takiego polecenia w tym menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PoprzStr"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "NastStr"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Zobacz zał."
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Następny"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Pokazany jest koniec listu"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Pokazany jest początek listu"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Pomoc jest właśnie wyświetlana"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Nie ma więcej cytowanego tekstu"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Brak tekstu za cytowanym fragmentem"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Błąd w wyrażeniu: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Puste wyrażenie"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "Nie zdefiniowano komendy szukania"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Wyszukiwanie zgodnie z komendą: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Niewłaściwy dzień miesiąca: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Niewłaściwy miesiąc: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Błędna data względna: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Brak bieżącej wiadomości"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Błąd otwarcia 'memory stream'"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Błąd ponownego otwarcia 'memory stream'"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Nie można otworzyć /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "błąd we wzorcu: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "brak wzorca: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "niesparowane nawiasy: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: błędny modyfikator wyrażenia"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: nie obsługiwane w tym trybie"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "brakujący parametr"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "pusty wzorzec"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "błąd: nieznany op %d (zgłoś ten błąd)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompilacja wzorca poszukiwań..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Wykonywanie polecenia na pasujących do wzorca listach..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Żaden z listów nie spełnia kryteriów"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Wyszukiwanie..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Poszukiwanie dotarło do końca bez znalezienia frazy"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Poszukiwanie dotarło do początku bez znalezienia frazy"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Przeszukiwanie przerwano"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Polecenie TOP nie jest obsługiwane przez serwer"
+
+@@ -6123,7 +6201,7 @@ msgstr "Polecenie TOP nie jest obsługiwane przez serwer"
+ msgid "Can't write header to temporary file"
+ msgstr "Nie można zapisać nagłówka do pliku tymczasowego"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Polecenie UIDL nie jest obsługiwane przez serwer"
+
+@@ -6139,7 +6217,7 @@ msgstr[2] "%d wiadomości zostało utraconych. Spróbuj ponownie otworzyć skrzy
+ msgid "POP host is not defined"
+ msgstr "Serwer POP nie został wskazany"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s jest błędną ścieżką POP"
+@@ -6174,126 +6252,126 @@ msgstr[0] "%s [przeczytano %d list]"
+ msgstr[1] "%s [przeczytano %d spośród %d listów]"
+ msgstr[2] "%s [przeczytano %d spośród %d listów]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Pobieranie spisu listów..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Zaznaczanie listów jako skasowane..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Nie można zapisać listu do pliku tymczasowego"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Uwierzytelnianie (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP: błedna sygnatura czasu"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Uwierzytelnianie (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Uwierzytelnianie APOP nie powiodło się"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Polecenie USER nie jest obsługiwane przez serwer"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Uwierzytelnianie nie powiodło się"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Błędny POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Nie można zostawić listów na serwerze"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Błąd łączenia z serwerem: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Zamykanie połączenia z serwerem POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Sprawdzanie indeksów listów..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Połączenie z serwerem POP zostało zerwane. Połączyć ponownie?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Odłożone listy"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Brak odłożonych listów"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "S/MIME: nieprawidłowy nagłówek"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Szyfrowanie: nieprawidłowy nagłówek"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Odszyfrowywanie listu..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nowe pytanie"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Utwórz alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Oczekiwanie na odpowiedź..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Pytanie:"
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Pytanie '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Pytanie nie zostało określone"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Potok"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Drukuj"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Zapisywanie..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6301,26 +6379,26 @@ msgstr[0] "Załącznik został zapisany"
+ msgstr[1] "%d załączniki zostały zapisane"
+ msgstr[2] "%d załączników zostało zapisanych"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "UWAGA! Nadpisujesz plik %s, kontynuować?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Załącznik przefiltrowany"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Przefiltruj przez: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Wyślij przez potok do: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Nie wiem jak wydrukować %s załączników"
+@@ -6328,7 +6406,7 @@ msgstr "Nie wiem jak wydrukować %s załączników"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6336,50 +6414,50 @@ msgstr[0] "Wydrukować %d zaznaczony załącznik?"
+ msgstr[1] "Wydrukować %d zaznaczone załączniki?"
+ msgstr[2] "Wydrukować %d zaznaczonych załączników?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Wydrukować załącznik?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Nie można odszyfrować zaszyfrowanego listu"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Załączniki"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Brak pod-listów"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Nie można skasować załącznika na serwerze POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Nie można skasować załącznika na serwerze wiadomości"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Usuwanie załączników z zaszyfrowanych listów jest niemożliwe"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Usuwanie załączników z zaszyfrowanych listów może spowodować nieważność podpisu"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Możliwe jest jedynie usuwanie załączników multipart"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+-msgstr "Możesz wysyłać kopie tylko listów zgodnych z RFC 822"
++msgstr "Możesz wysyłać kopie tylko listów zgodnych z RFC822"
+
+ #: recvcmd.c:278
+ msgid "Error bouncing message"
+@@ -6414,7 +6492,7 @@ msgstr "Nie można utworzyć %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Nie można znaleźć żadnego z zaznaczonych listów"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Nie znaleziono list pocztowych"
+
+@@ -6428,67 +6506,67 @@ msgstr "Nie można zdekodować wszystkich wybranych zał. Załączyć (MIME) poz
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Możesz tylko tworzyć do nadawcy z częściami message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Dodaj"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Wprowadź"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Nie można pobrać type2.list mixmastera"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Wybierz łańcuch remailera"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Błąd: nie można użyć %s jako finalnego remailera łańcucha"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Łańcuchy mixmasterów mogą mieć maks. %d elementów"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Łańcuch remailera jest pusty"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Już zdefiniowano pierwszy element łańcucha"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Już zdefiniowano ostatni element łańcucha"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster nie akceptuje nagłówków Cc i Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Ustaw poprawną wartość hostname jeśli chcesz używać mixmastera"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Błąd podczas wysyłania listu, proces potomny zwrócił %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Błąd podczas wysyłania listu"
+
+@@ -6518,41 +6596,41 @@ msgstr "Przesłać dalej załączniki?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Odpowiedzieć %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Follow-up do %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Zacytować oryginalny list w odpowiedzi?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Wczytywanie cytowanego listu..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Nie można dołączyć wszystkich wskazanych listów"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Przesłać dalej jako załącznik?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Przygotowywanie listu do przesłania dalej..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc to skrzynki typu IMAP nie jest obsługiwanie w lini poleceń"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Zapisać załącznik w Fcc?"
+
+@@ -6560,190 +6638,190 @@ msgstr "Zapisać załącznik w Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Skrzynka Fcc"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Wywołać odłożony list?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Edytować przesyłany list?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "List nie został zmieniony. Zaniechać wysłania?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "List nie został zmieniony. Zaniechano wysłania"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Artykuł nie został opublikowany"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "List odłożono"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Brak tematu, zaniechać wysłania?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Brak tematu"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Nie wybrano grupy dyskusyjnej"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Brak załącznika, zaniechać wysyłania?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Wysyłanie listu..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Wysłanie listu nie powiodło się"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Wysyłanie w tle"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Artykuł został opublikowany"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Poczta została wysłana"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Brak parametru granicznego (zgłoś ten błąd)"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s już nie istnieje"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s nie jest zwykłym plikiem"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Nie można odnaleźć pliku z typami mime."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Nie można otworzyć %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$senmail musi być ustawione aby wysłać list"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Błąd podczas wysyłania listu, proces potomny zwrócił %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Wynik procesu dostarczania"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Błędny IDN %s w trakcie przygotowywania resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Sesja SMTP nie powiodła się: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Sesja SMTP nie powiodła się: nie można otworzyć %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Błędny URL SMTP: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s uwierzytelnianie nie powiodło się, próbuje innej metody"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "Uwierzytelnianie SMTP wymaga SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "Serwer SMTP nie wspiera uwierzytelniania"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Sesja SMTP nie powiodła się: błąd odczytu"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Sesja SMTP nie powiodła się: błąd zapisu"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Nieprawidłowa odpowiedź serwera"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Sortowanie poczty w skrzynce..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Nie znaleziono funkcji sortowania (zgłoś ten błąd)"
+
+@@ -6809,10 +6887,10 @@ msgstr ""
+ "NeoMutt jest darmowym oprogramowaniem, zapraszamy \n"
+ "do jego redystrybucji pod pewnymi warunkami, szczegóły poznasz pisząc 'neomutt -vv'.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Domyślne opcje:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Parametry kompilacji:"
+diff --git a/po/pt_BR.po b/po/pt_BR.po
+index fedd79a64..2bd97fe50 100644
+--- a/po/pt_BR.po
++++ b/po/pt_BR.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2018-03-19 01:14-0300\n"
+ "Last-Translator: Thiago Costa de Paiva <tecepe@tecepe.eng.br>\n"
+ "Language-Team: \n"
+@@ -20,16 +20,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "r)rejeitar, o)aceitar uma vez, a)aceitar sempre, s)pular"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "r)rejeitar, o)aceitar uma vez, a)aceitar sempre"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "r)rejeitar, o)aceitar uma vez, s)pular"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "r)rejeitar, o)aceitar uma vez"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Sair"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Apagar"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Restaurar"
+
+@@ -37,18 +61,18 @@ msgstr "Restaurar"
+ msgid "Select"
+ msgstr "Escolher"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Ajuda"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Lista de contatos vazia"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Contatos"
+
+@@ -57,51 +81,51 @@ msgstr "Contatos"
+ msgid "Alias as: "
+ msgstr "Apelidar como: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Já existe um apelido definido com este nome"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Aviso: Este apelido não é válido. Consertar?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Endereço: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "IDN inválido: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Nome:"
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s =%s] Aceita?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Salvar no arquivo: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Erro ao ler o arquivo de contatos"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Erro ao acidionar contato"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Apelido adicionado"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Erro ao localizer arquivo de contatos"
+
+@@ -110,7 +134,7 @@ msgstr "Erro ao localizer arquivo de contatos"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s não existe. Devo criá-lo?"
+@@ -119,8 +143,8 @@ msgstr "%s não existe. Devo criá-lo?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Não foi possível criar %s: %s"
+@@ -130,7 +154,7 @@ msgstr "Não foi possível criar %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Criar uma onta inicial de auto-criptografia"
+
+@@ -139,7 +163,7 @@ msgstr "Criar uma onta inicial de auto-criptografia"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Endereço (email) de conta de auto-criptografia"
+
+@@ -148,7 +172,7 @@ msgstr "Endereço (email) de conta de auto-criptografia"
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Por favor, insira um único email address"
+
+@@ -157,7 +181,7 @@ msgstr "Por favor, insira um único email address"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Endereço de email já utilizado por uma conta de auto-criptografia"
+
+@@ -169,14 +193,14 @@ msgstr "Endereço de email já utilizado por uma conta de auto-criptografia"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Preferir criptografia?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Sucesso ao criar conta de auto-criptografia "
+
+@@ -184,7 +208,7 @@ msgstr "Sucesso ao criar conta de auto-criptografia "
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Criação de conta de auto-criptografia cancelada"
+
+@@ -193,7 +217,7 @@ msgstr "Criação de conta de auto-criptografia cancelada"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Nenhuma chave auto-criptográfica (válida) encontrado para %s"
+@@ -205,12 +229,12 @@ msgstr "Nenhuma chave auto-criptográfica (válida) encontrado para %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Varrer caixa por cabeçalhos de auto-criptografia?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Varrer caixa"
+
+@@ -221,21 +245,21 @@ msgstr "Varrer caixa"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Varrer outra caixa por cabeçalhos de auto-criptografia?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Criar"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Remover"
+
+@@ -243,9 +267,9 @@ msgstr "Remover"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Tgl ativo"
+
+@@ -253,17 +277,17 @@ msgstr "Tgl ativo"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Prf Crpt"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "preferir criptografia"
+
+@@ -272,7 +296,7 @@ msgstr "preferir criptografia"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "criptografia manual"
+
+@@ -280,7 +304,7 @@ msgstr "criptografia manual"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "ativa"
+
+@@ -288,12 +312,12 @@ msgstr "ativa"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "inativa"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Contas de auto-criptografia"
+
+@@ -301,12 +325,12 @@ msgstr "Contas de auto-criptografia"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Erro ao atualizar registro de conta"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Realmente remover conta \"%s\"?"
+@@ -324,7 +348,7 @@ msgstr "Realmente remover conta \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Não foi possível abrir banco de dados de autocriptografia %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "erro ao criar contexto gpgme: %s"
+@@ -397,469 +421,581 @@ msgstr "Versão do banco de dados de auto-criptografia recente demais"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Cachê de mensagens não é um diretório: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Diretório"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Ir para"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Máscara"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Lista"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Inscrever"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Desinscrever"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Catchup"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s não é um diretório"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Grupo de notícias inscritos"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Grupo de notícias no servidor [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Caixas de mensagens [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "[%s] assinada, Máscara de arquivos: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Diretório [%s], Máscara de arquivos: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Não é possível anexar um diretório"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Nenhum arquivo casa com a máscara"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Criação de caixa de mensagens somente em IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Renomeação de caixa de mensagens somente em IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Remoção de caixa de mensagens somente em IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "Impossível de remover caixa selecionada"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Deseja mesmo remover a caixa de mensagens\"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Caixa de mensagens removida"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "A remoção da caixa de mensagens falhou"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Caixa de mensagens não removida"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Ir para diretório: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Erro ao examinar diretório"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Máscara de arquivos: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ordenação reversa por (d)data, (a)alfa, (z)tamanho, (e)descrição, (c)contagem, (w)novas ou (n)sem ordenação?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Ordenação por (d)data, (a)alfa, (z)tamanho, (e)descrição, (c)contagem, (w)novas ou (n)sem ordenação?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dazecwn"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nome do novo arquivo: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Não é possível exibir um diretório"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Erro ao tentar exibir arquivo"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Padrão para inscrição: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Padrão para desinscrição: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Nenhum grupo de notícias coincide com a máscara"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: cor não suportada pelo terminal"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: cor inválida"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: objeto inválido"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: poucos argumentos"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: atributo inexistente"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: muitos argumentos"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "cores pré-definidas não suportadas"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr "Número máximo de níveis de citação é %d"
+-
+-#: color.c:1319
+-#, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%s: número inválido: %s"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Verificar assinatura?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Não foi possível criar um arquivo temporário"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Não é possível filtro de exibição."
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Não foi possível copiar a mensagem."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Assinatura S/MIME verificada com sucesso"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Certificado S/MIME do titular não coincide com o remetente"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Aviso: parte desta mensagem não foi assinada"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Assinatura S/MIME NÃO pode ser verificada"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Assinatura PGP verificada com sucesso"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Assinatura PGP NÃO pode ser verificada"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Erro ao executar \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Comando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Aviso: mensagem não contém cabeçalho 'From: ' (remetente)."
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "Replicar mensagem para: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "Replicar mensagens marcadas para: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Erro ao interpretar endereço"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Replicar mensagem para %s?"
+ msgstr[1] "Replicar mensagens para %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Mensagem não replicada"
+ msgstr[1] "Mensagens não replicadas"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Mensagem replicada"
+ msgstr[1] "Mensagens replicadas"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Não foi possível criar processo de filtragem"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Alimentar (pipe) comando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Nenhum commando para impressão foi definido"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Imprimir mensagem?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Imprimir mensagens marcadas?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Mensagem impressa"
+ msgstr[1] "Mensagens impressas"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "Mensagem não pôde ser impressa"
+ msgstr[1] "Mensagens não puderam ser impressas"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ordem rev (d)data/(f)remet/(r)receb/(s)assun/(o)para/(t)thread/(u)sem ordem/(z)tamanho/(c)pontos/(p)spam/(l)label?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sort (d)data/(f)remet/(r)receb/(s)assun/(o)para/(t)thread/(u)sem ordem/(z)tamanho/(c)pontos/(p)spam/(l)label?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Comando do shell: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Decodificar-salvar mensagem na caixa"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Decodificar-salvar mensagens marcadas para caixa"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Desencriptar-salvar mensagem na caixa"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Desencriptar-salvar mensagens marcadas na caixa"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Salvar na caixa"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Salvar mensagens marcadas na caixa"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Decodificar-copiar mensagem para caixa"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Decodificar-copiar mensagens marcadas para caixa"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Desencriptar-copiar mensagem para caixa"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Desencriptar-copiar mensagens marcadas para caixa"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Copiar para caixa"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Copiar mensagens marcadas para caixa"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Copiando para %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "Tipo de conteúdo muito comprido"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Converter para %s após enviar?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Tipo de conteúdo (Content-Type) alterado para %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Conjunto de caracteres alterado para %s; conversão interrompida"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Conjunto de caracteres alterado para %s; convertendo"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: poucos argumentos"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: sem nome de grupo"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "argumentos insuficientes"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "Erro: incapaz de montar caminho para '%s'"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "Erro: inclusão cíclica do arquivo de configuração '%s'"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Erro em %s, linha %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Aviso em %s, linha %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: erros em %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "fonte: leitura interrompida devido ao excesso de erros em %s"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "fonte: %d aviso em %s"
++msgstr[1] "fonte: %d avisos em %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "apelido: sem endereço"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Aviso: IDN '%s' inválida no contato '%s'"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "anexos: sem disposição"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "Configurações atuais para anexos:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "anexos: disposição inválida"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: muitos argumentos"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: faltando -rx ou -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: aviso: IDN '%s' inválida"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "Erro: %s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "campo de cabeçalho inválido"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: variável desconhecida"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s não está atribuída"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: erro em %s"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "fonte: arquivo %s não pôde ser importado"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: nenhuma coincidência com o padrão"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: nenhuma coincidência com o padrão"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Inscrito em %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "Incapaz de inscrever em %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "Nenhuma pasta especificada"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "desvinculados: sem disposição"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "desvinculados: disposição inválida"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Desinscrito de %s"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Incapaz de desinscrever de %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Não há anexos"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Segurança: "
+
+@@ -870,75 +1006,75 @@ msgstr "Segurança: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Assinar como: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Auto-criptografia: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "Newsgroups: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Followup-To"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Enviar"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Cancelar"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "To (para)"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC (cópia)"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Subj (assunto)"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Anexar arquivo"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Descrição"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Grupo de notícias"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Desativado"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Não"
+
+@@ -946,7 +1082,7 @@ msgstr "Não"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Desencorajado"
+
+@@ -954,14 +1090,14 @@ msgstr "Desencorajado"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Disponível"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Sim"
+
+@@ -971,7 +1107,7 @@ msgstr "Sim"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Auto-criptografia: (e)criptografar, (c)limpar, (a)automático?"
+
+@@ -979,51 +1115,51 @@ msgstr "Auto-criptografia: (e)criptografar, (c)limpar, (a)automático?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Não suportado"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Assinar, Encriptar"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Encriptar"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Assinar"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Vazio (none)"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr "(PGP incorporado)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (modo OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<padrão>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Encriptar com: "
+
+@@ -1032,11 +1168,11 @@ msgstr "Encriptar com: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Recomendação: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "<cadeia indefinida>"
+
+@@ -1047,7 +1183,7 @@ msgstr "<cadeia indefinida>"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "O anexo #%d não existe mais: %s"
+@@ -1059,231 +1195,350 @@ msgstr "O anexo #%d não existe mais: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "O anexo #%d foi modificado. Atualizar a codificação para %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Anexos"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Você não pode remover o único anexo"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "IDN inválida em '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "Anexo já é o primeiro da lista"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "Item fundamental não pode ser rearranjado"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "Anexo já é o último da lista"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "Alternativas para grupo requerem ao menos 2 mensagens rotuladas"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "Multilíngue para grupo requer ao menos 2 mensagens rotuladas"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "Nem todos os ítens possuem 'Content-Language' configurado. Continuar?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Mensagem não enviada"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Anexando o arquivo escolhido..."
+ msgstr[1] "Anexando os arquivos escolhidos..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Não foi possível anexar %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Abrir caixa para obter mensagem a ser anexada"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Abrir grupo de notícias para obter mensagem a ser anexada"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Não foi possível abrir a caixa de mensagens %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Nenhuma mensagem naquela pasta"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Marque as mensagens que você quer anexar"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Não foi possível anexar"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "A gravação só afeta os anexos de texto"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "O anexo atual não será convertido"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "O anexo atual será convertido"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "'Content-Language' vazio"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Codificação inválida"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Salvar uma cópia desta mensagem?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Enviar anexo com o nome: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Renomear para: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Impossível aplicar 'stat' em %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Novo arquivo: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Tipo de conteúdo (Content-Type) é da forma base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Tipo de conteúdo (Content-Type) %s desconhecido"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Não é possível criar o arquivo %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "O que temos aqui é uma falha ao criar um anexo"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "Salvar (adiar) mensagem não terminada?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Gravar mensagem na caixa"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Gravando mensagem em %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Mensgem gravada"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Nenhum sistema PGP configurado"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME já selecionado. Remover e continuar?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Nenum sistema S/MIME configurado"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP já selecionado. Remover e continuar?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Não é possível incluir sem os comandos 'append-hook' ou 'close-hook': %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Não foi possível travar a caixa de mensagens"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Descompactando %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Não foi possível identificar os conteúdos do arquivo comprimido"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Ops da caixa de mensagens não encontrado para caixa do tipo %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Comando de compressão falhou: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Inclusão não disponível para esse tipo de caixa de mensagens"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Impossível sincronizar o arquivo compactado sem o comando 'close-hook'"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Compactando %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Compactar-incluir para %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
++#, c-format
++msgid "Error. Preserving temporary file: %s"
++msgstr "Erro. Preservando o arquivo temporário: %s"
++
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Data relativa inválida: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Data relativa inválida: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%s: número inválido: %s"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Valor inválido para opção %s: %ld"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Mês inválido: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Opção %s não pode ser alterada no paginador"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "Opção %s não pode ser alterada no paginador"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%s: número inválido: %s"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%s: número inválido: %s"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Data relativa inválida: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Valor inválido para opção %s: %ld"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Erro: valor '%s' é inválido para -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: variável desconhecida"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Data relativa inválida: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Data relativa inválida: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Nome de usuário em %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Senha para %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "Comando de atualizaçao OAUTH não definido"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "Incapaz de executar comando de atualização"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "Comando respondeu com mensagem vazia"
++
++#: conn/connaccount.c:191
+ #, c-format
+-msgid "Error. Preserving temporary file: %s"
+-msgstr "Erro. Preservando o arquivo temporário: %s"
++msgid "OAUTH token is too big: %ld"
++msgstr ""
+
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+@@ -1305,7 +1560,7 @@ msgstr "Conectando a %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Não foi possível conectar com %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "erro desconhecido"
+
+@@ -1319,23 +1574,23 @@ msgstr "Erro ao se comunicar com %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "A conexão com %s foi cancelada"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Perfil SASL desconhecido"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Erro ao alocar conexão SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Erro ao configurar as propriedades de segurança SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Erro ao configurar a força de segurança externa SASL"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Erro ao configurar nome de usuário externo SASL"
+
+@@ -1348,132 +1603,108 @@ msgstr "Comando de pré-conexão falhou"
+ msgid "Connection to %s closed"
+ msgstr "Conexão com %s encerrada"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Completando reserva de entropia: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s tem permissões não seguras"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL desabilitado devido à falta de entropia"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Desconhecido"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[impossível calcular]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[data inválida]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Certificado do servidar ainda não é válido"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "O certificado do servidor expirou"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Não há entropia suficiente no seu sistema"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "não pude obter o objeto certificado"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "não pude obter o nome comum certificado "
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "titular certificado não coincide hostname %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Este certificado pertence a:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Este certificado foi emitido por:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Este certificado é válido"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " de %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " para %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Impressão digital SHA1: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "Impressão digital SHA256: "
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Verificação de certificado SSL (certificado %zu de %zu no encadeamento)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "roas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "r)rejeitar, o)aceitar uma vez, a)aceitar sempre, s)pular"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "r)rejeitar, o)aceitar uma vez, a)aceitar sempre"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "r)rejeitar, o)aceitar uma vez, s)pular"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "r)rejeitar, o)aceitar uma vez"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Sair "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Aviso: Não foi possível salvar o certificado"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certificado salvo"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Verificação de certifcado do host falhou: %s"
+@@ -1481,15 +1712,15 @@ msgstr "Verificação de certifcado do host falhou: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Aviso: não pude configurar nome TLS SNI do host"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "Erro de entrada e saída"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL falhou: %s"
+@@ -1497,89 +1728,73 @@ msgstr "SSL falhou: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Não foi possível criar contexto SSL"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Aviso: erro ao habilitar ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Não foi possível obter o certificado da outra ponta"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Erro ao verificar certificado (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certificado não é X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Erro ao inicializar dados do certificado gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Erro so processar dados do certificado"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "AVISO: o certificado do servidor ainda não é válido"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "AVISO: o certificado do servidor expirou"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "AVISO: o certificado do servidor foi revogado"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "AVISO: hostname do servidor não coincide com certificado"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "AVISO: signatário do certificado do servidor não é CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Aviso: o certificado do servidor foi assindado com algoritmo inseguro"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Todos protocolos disponíveis para TLS/SSL estão desativados"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Algorithms criptográficos selecionados via $ssl_ciphers não são suportados"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Conexão SSL/TLS usando %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Erro: não há socket TLS aberto"
+
+@@ -1598,38 +1813,18 @@ msgstr "Erro de tunel ao comunicar com %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunel para %s retornou erro %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] "Cálculo de comprimento estava errado por %ld byte"
+ msgstr[1] "Cálculo de comprimento estava errado por %ld bytes"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Não há mecanismo disponível para decriptar a mensagem"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "sim"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "não"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Sair do NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Pressione qualquer tecla para continuar..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' para uma lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1651,7 +1846,7 @@ msgstr ""
+ "~M mensagens o mesmo que ~m, mas também inclui os cabeçalhos\n"
+ "~p imprime a mensagem\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1673,20 +1868,20 @@ msgstr ""
+ "~? esta mensagagem\n"
+ ". sozinho em uma linha termina a mensagem\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: número de mensagem iválido.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Termine a mensagem com um . sozinho em uma linha)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Nenhuma caixa de mensagens.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Mensagem contém:\n"
+
+@@ -1694,19 +1889,19 @@ msgstr "Mensagem contém:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(continuar)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "falta o nome do arquivo.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Nenhuma linha na mensagem.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: comando de editor desconhecido (~? para ajuda)\n"
+@@ -1753,19 +1948,73 @@ msgstr "Não é possível anexar à pasta: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "mensagem multiparte não tem um parâmetro de fronteiras"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Visualização por threads não está habilitado"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Atribui sinalização"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Remove sinalização"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: cor não suportada pelo terminal"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: cor inválida"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: objeto inválido"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: atributo inexistente"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "cores pré-definidas não suportadas"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr "Número máximo de níveis de citação é %d"
++
++#: gui/color.c:1319
++#, c-format
++msgid "%s: invalid number: %s"
++msgstr "%s: número inválido: %s"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "sim"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "não"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Sair do NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Pressione qualquer tecla para continuar..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' para uma lista): "
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1786,23 +2035,23 @@ msgstr "[-- Autovisualizar usando %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Executando comando de autovisualização: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Não foi possível criar filtro"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Impossível executar %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Saída de erro da autovisualização de %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Erro: message/external-body não tem parâmetro de tipo de accesso --]\n"
+
+@@ -1821,7 +2070,7 @@ msgstr "[-- Erro: message/external-body não tem parâmetro de tipo de accesso -
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1850,7 +2099,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1864,7 +2113,7 @@ msgstr[1] "[-- O anexo %s/%s (tamanho %s bytes) foi removido --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1875,12 +2124,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- O anexo %s/%s foi removido --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- nome: %s --]\n"
+@@ -1888,7 +2137,7 @@ msgstr "[-- nome: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1904,7 +2153,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1913,91 +2162,91 @@ msgstr ""
+ "[-- O anexo %s/%s não foi incluído, --]\n"
+ "[-- e o tipo de acesso %s não é suportado --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Erro: Não foi possível exibir nenhuma parte de Multipart/Aternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Anexo #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Anexo #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Uma ou mais partes dessa mensagem não puderam ser exibidas"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Incapaz de abrir fluxo com a memória"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Incapaz de abrir o arquivo temporário"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "falha ao re-abrir fluxo com a memória"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Erro: multipart/signed não tem protocolo"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Isto é um anexo (use '%s' para exibi-lo) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s não é suportado (use '%s' para exibi-lo) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Este é um anexo ('view-attachments' deve estar associado a uma tecla) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s não é suportado ('view-attachments' deve ser associado a uma tecla) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Isto é um anexo --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s não é suportado --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ERRO: por favor relate este problema"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<DESCONHECIDO>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Associações genéricas de teclas:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Funções sem associação de tecla:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Ajuda para %s"
+@@ -2014,41 +2263,41 @@ msgstr "Atalho de caixa extendido como regex vazia"
+ msgid "badly formatted command string"
+ msgstr "String de comando com formato inválido"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: não foi possível desfazer hook * de dentro de um hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: tipo de gancho desconhecido: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: não é possível apagar %s de dentro de %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: não existe tal menu"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: sem vínculos para este menu"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: sem macros para este menu"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Não foi possível criar o arquivo temporário %s"
+@@ -2085,28 +2334,28 @@ msgstr "Autenticação GSSAPI falhou"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN desabilitado neste servidor"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Efetuando login..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Login falhou"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Autenticando (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Autenticação OAUTHBEARER falhou."
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Autenticando (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Autenticação SASL falhou."
+
+@@ -2153,89 +2402,79 @@ msgstr "Tentativa de renomear falhou: %s"
+ msgid "Mailbox renamed"
+ msgstr "Caixa de mensagens renomeada"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Caixa de mensagens %s@%s fechada"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Conexão com %s expirou"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Este servidor IMAP é pré-histórico. NeoMutt não funciona com ele."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Busca por cabeçalho sem um nome de cabeçalho: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "Busca personalizada no servidor não é suportada: %s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE falhou: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Fechando conexão com %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Conexão segura com TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Incapaz de negociar conexão TLS"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Connexão encriptada indisponível"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Inscrevendo em %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Desinscrevendo de %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Inscrito em %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Desinscrito de %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Copiando %d mensagem para %s..."
+ msgstr[1] "Copiando %d mensagens para %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Criar %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Expurgo falhou."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2243,43 +2482,43 @@ msgstr[0] "Marcando %d mensagem como apagada..."
+ msgstr[1] "Marcando %d mensagens como apagadas..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Salvando mensagem alterada... [%d/%d]"
+ msgstr[1] "Salvando mensagens alteradas... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Erro ao salvar sinalizações. Fechar mesmo assim?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Erro ao salvar sinalizações"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Eliminando mensagens do servidor..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE falhou"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Selecionando %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Erro ao abrir caixa de mensagens"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "Servidor IMAP não suporta sinalizações personalizadas"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Sinalizações IMAP inválidas"
+
+@@ -2289,7 +2528,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "Interromper download e fechar caixa?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Acabou a memória"
+
+@@ -2307,7 +2546,7 @@ msgstr "Baixando mudanças nas sinalizações..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Incapaz de obter cabeçalhos nesta versão de servidor IMAP"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Obtendo cabeçalhos das mensagens..."
+
+@@ -2320,152 +2559,152 @@ msgstr "Subindo mensagem..."
+ msgid "Copying message %d to %s..."
+ msgstr "Copiando mensagem %d para %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Obtendo mensagem..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "O índice de mensagens está errado. Tente abrir a caixa novamente."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Continuar?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Sair"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Salvar"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Mensagem"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Responder"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupo"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Postagem"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Seguimento"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Nenhuma caixa de mensagens aberta"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Não há mensagens"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Nenhuma mensagem visível"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Esta caixa é somente para leitura"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Função não permitida no modo de anexar mensagem (attach-message)"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: ACL não permite operação"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Não é possível ativar escrita em uma caixa somente para leitura"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Mudanças na pasta serão gravadas ao sair dela"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Mudanças na pasta não serão gravadas"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s não é uma caixa de mensagens"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "A caixa foi modificada externamente. As marcas podem estar erradas."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Novas mensagens nesta caixa"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "A caixa foi modificada externamente"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Nenhuma mensagem marcada"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nada a fazer"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Entre com a id da mensagem (Message-Id): "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "Artigo não tem referência no nível acima"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Mensagem não está visível nesta visão restringida"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Obtendo %s do servidor..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Artigo %s não foi encontrado no servidor"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Nenhuma id de mensagem (Message-Id). Impossível executar operação."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Nenhuma mensagem removida foi encontrada nesta thread"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Pular para mensagem: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "O argumento deve ser um número de mensagem"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Número de mensagem inválido"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Aquela mensagem não está visível"
+
+@@ -2478,37 +2717,37 @@ msgstr "Aquela mensagem não está visível"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Incapaz de apagar as mensagens"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Apagar mensagens que coincidam: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Nenhum padrão limitante está em efeito"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limitar: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limitar a mensagens que casem com: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Para exibir todas as mensagens, restrinja para \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Sair do NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Marcar mensagens que casem com: "
+
+@@ -2516,195 +2755,195 @@ msgstr "Marcar mensagens que casem com: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "Incapaz de restaurar mensagens."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Restaurar mensagens que casem com: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Desmarcar mensagens que casem com: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Conexões com os servidores IMAP encerradas"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Sem pasta virtual e sem ID de mensagem, cancelado"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Falha ao criar consulta, cancelado"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr "Não foi possível encontrar a mensagem no banco de dados do notmuch. Tente rodar 'notmuch new'."
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Falha ao accessar thread, cancelado"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "Pasta não tem suporte a tags, cancelado"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "Nenhuma marcação, cancelado"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "Atualizando marcas..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "Falha ao modificar marcas, cancelado"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Nenhuma consulta, cancelado"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "Consultas restritas desabilitadas"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "Nenhuma pasta virtual do notmuch carregada"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Abrir caixa de mensagens somente para leitura"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Abrir caixa de mensagens"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Nenhuma caixa com novas mensagens."
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Abrir grupo de notícias em modo somente leitura"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Abrir grupo de notícias"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Sair do NeoMutt sem salvar alterações?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Não pude quebrar a thread."
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Thread quebrada"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "A thread não pode ser quebrada, mensagem não faz parte de uma thread"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Não pude unir threads"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Nenhum cabeçalho Message-ID disponível para vincular thread"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Primeiro, por favor marque mensagem a ser vinculada aqui"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Threads vinculadas"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Nenhuma thread vinculada"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Você está na última mensagem"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Nenhuma mensagem não removida"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Você está na primeira mensagem"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Nenhuma mensagem nova nesta visão restringida"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Não há mensagens novas"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Nenhuma mensagem não lida nesta visão restringida"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Não há mensagens não lidas"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "A pesquisa voltou ao início"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "A pesquisa passou para o final"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Não pude sinalizar mensagem"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Não pude alternar sinalização de leitura"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Nenhuma discussão restante"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Você está na primeira discussão"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "A discussão contém mensagens sinalizadas ou não lidas"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Não é possível apagar mensagem"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Não é possível editar mensagem"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2714,7 +2953,7 @@ msgstr[1] "%d rótulos alterados"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Nenhum rótulo foi alterado"
+
+@@ -2722,275 +2961,140 @@ msgstr "Nenhum rótulo foi alterado"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "Incapaz de marcar mensagens como lidas"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Entre com sequência de teclas para atalho da macro: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "descrição do atalho"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Mensagem atrelada a %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Nenhuma Id de mensagem para macro"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "Responder mensagem de acordo com a preferencia do rementente?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "Não é permitido postar neste grupo, pode ser moderado. Continuar?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Não é possível restaurar mensagem."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Erro na linha de comando: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Alarme na linha de comando: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "não foi possível determinar nodename via uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: sem nome de grupo"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "argumentos insuficientes"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "Erro: incapaz de montar caminho para '%s'"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "Erro: inclusão cíclica do arquivo de configuração '%s'"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Erro em %s, linha %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Aviso em %s, linha %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: erros em %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "fonte: leitura interrompida devido ao excesso de erros em %s"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "fonte: %d aviso em %s"
+-msgstr[1] "fonte: %d avisos em %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "apelido: sem endereço"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Aviso: IDN '%s' inválida no contato '%s'"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "anexos: sem disposição"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "Configurações atuais para anexos:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "anexos: disposição inválida"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: faltando -rx ou -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: aviso: IDN '%s' inválida"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "Erro: %s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "campo de cabeçalho inválido"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: variável desconhecida"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s não está atribuída"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: erro em %s"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "fonte: arquivo %s não pôde ser importado"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: nenhuma coincidência com o padrão"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: nenhuma coincidência com o padrão"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Incapaz de inscrever em %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "Nenhuma pasta especificada"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "desvinculados: sem disposição"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "desvinculados: disposição inválida"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Incapaz de desinscrever de %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: comando desconhecido"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "'charset' deve conter apenas um nome de conjunto de caracteres"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Valor inválido para opção %s: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "Opção %s não pode ser alterada no paginador"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Função %s não permitida no modo de anexar mensagem (attach-message)"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr "A opção %s deve estar entre 78 e 998, inclusive"
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "Associação '%s' irá apelidar '%s' Antes, tente: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Laço de macro detectado"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Tecla não associada"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tecla não associada. Pressione '%s' para ajuda."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: sequência de teclas nula"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Função '%s' não disponível no menu '%s'"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: seqüência de teclas vazia"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: sem argumentos"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: não existe tal função"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Entre com as teclas (^G para cancelar): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Char = %s, Octal = %o, Decimal = %d"
+@@ -3014,7 +3118,7 @@ msgstr "entrada no mailcap para o tipo %s não foi encontrada."
+ msgid "Scanning %s..."
+ msgstr "Analisando %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Lendo %s..."
+@@ -3028,13 +3132,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message(): incapaz de configurar tempo no arquivo"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Gravando %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3075,7 +3179,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3153,54 +3257,54 @@ msgstr ""
+ " -z Abre a primeira caixa ou uma especificada (-f) se houver mensagem disponível\n"
+ " Ou sai imediatamente retornando código 1 caso contrário"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Erro ao inicializar terminal"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "não foi possível determinar o nome do usuário"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "não foi possível determinar o diretório do usuário"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Erro: valor '%s' é inválido para -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Falha ao interpretar link 'mailto:'"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Nenhum destinatário foi especificado"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Incapaz de usar flag -E com stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Incapaz de interpretar modelo de mensagem: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: não foi possível anexar o arquivo"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Nenhuma caixa com novas mensagens"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Nenhuma caixa de entrada definida"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "A caixa de mensagens está vazia"
+
+@@ -3242,52 +3346,52 @@ msgstr "Não foi possível reabrir a caixa de mensagens"
+ msgid "Can't write message"
+ msgstr "Não foi possível gravar a mensagem"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Pular para: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Número de índice inválido"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Nenhuma entrada"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Você não pode mais rolar para baixo"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Você não pode mais rolar para cima"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Você está na primeira página"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Você está na última página"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Você está na última entrada"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Você está na primeira entrada"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Procurar por: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Busca reversa por: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Não encontrado"
+
+@@ -3330,20 +3434,20 @@ msgstr "Esperando pela tentativa de flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Arquivo de histórico com formato inválido (line %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Não foi possível criar um arquivo temporário"
+
+@@ -3362,7 +3466,7 @@ msgstr "Depurando no nível %d para o arquivo '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Realizando log no nível %d para o arquivo '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "Erro: conversão de caminho relativo para completo"
+
+@@ -3385,17 +3489,17 @@ msgstr "Sinal %d (%s) interceptado... Saindo.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Sinal %d interceptado... Saindo.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf tamanho=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "abre /dev/urandom: %s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "ler /dev/urandom: %s"
+@@ -3403,146 +3507,119 @@ msgstr "ler /dev/urandom: %s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "O caminho é um diretório, salvar ali dentro? (y)sim, (n)não, (a)todos"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "O caminho é um diretório, salvar ali dentro?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Arquivo no diretório: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Arquivo existe, (o)sobrescreve, (a)concatena ou (c)cancela?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Incapaz de gravar mensagem na caixa do tipo POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Anexa mensagens a %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "Incapaz de gravar mensagem no servidor de notícias"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Nome de usuário em %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Senha para %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "Comando de atualizaçao OAUTH não definido"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "Incapaz de executar comando de atualização"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "Comando respondeu com mensagem vazia"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Não pude associar o modelo de nomeação, continuo?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Entrada de composição no mailcap requer %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Erro ao abrir o arquivo para interpretar os cabeçalhos"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Erro ao abrir o arquivo para retirar cabeçalhos"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Falha ao renomear arquivo"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Nenhuma entrada de composição 'mailcap' para %s, criando arquivo vazio"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Entrada de edição 'mailcap' requer %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Nenhuma entrada de edição 'mailcap' para %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Nenhuma entrada 'mailcap' associada. Exibindo como texto."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Tipo MIME não definido. Não foi possível exibir o anexo."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Comando: %-20.20s Descrição: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Commando: %-30.30s Anexos: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Anexos: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Anexos: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Erro de gravação"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Eu não sei como imprimir isto"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Busca"
+
+@@ -3551,21 +3628,21 @@ msgstr "Busca"
+ msgid "History '%s'"
+ msgstr "Histórico '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Valor inválido para opção %s: %ld"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "Erro: Não foi possível carregar o interpretador lua"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Incapaz de importar código lua: %s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nova mensagem em "
+
+@@ -3586,20 +3663,20 @@ msgstr "A mensagem raiz não está visível nesta visão restringida"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "A mensagem pai não está visível nesta visão restringida"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Aquisição de %s interrompida..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "Incapaz de gravar %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "mensagem não apagada"
+@@ -3609,69 +3686,69 @@ msgstr[1] "mensagens não apagadas"
+ msgid "Can't open trash folder"
+ msgstr "Incapaz de acessar lixeira"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Marcar todos artigos como lidos?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Mover %d mensagem lida para %s?"
+ msgstr[1] "Mover %d mensagens lidas para %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Remover %d mensagem apagada?"
+ msgstr[1] "Remover %d mensagens apagadas?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Movendo mensagens lidas para %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "A caixa de mensagens não sofreu mudanças"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d mantidas, %d movidas, %d apagadas"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d mantidas, %d apagadas"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Pressione '%s' para trocar entre gravar ou não"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Use 'toggle-write' para reabilitar a gravação"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "A caixa está marcada como não gravável. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Ponto de controle feito para caixa de mensagens"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (tempo atual: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- saída %s segue%s --]\n"
+@@ -3680,52 +3757,52 @@ msgstr "[-- saída %s segue%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Senha(s) esquecida(s)"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "PGP incorporado não pode ser usado com anexos. Reverter para PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Email não enviado: PGP incorporado não pode ser usado com anexos"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "PGP incorporado não pode ser usado com format=flowed. Reverter para PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Email não enviado: PGP incorporado não pode ser usado com format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Executando PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Mensagem não pode ser enviada de forma incorporada. Reverter para PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Mensagem não enviada"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Mensagens S/MIME sem dicas no conteúdo não são suportadas"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Tentando extrair chaves PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Tentando extrair certificados S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3734,7 +3811,7 @@ msgstr ""
+ "[-- Erro: Protocolo multipart/signed %s desconhecido --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3742,7 +3819,7 @@ msgstr ""
+ "[-- Erro: Assinatura \"multipart/signed\" omitida ou inconsistente --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3751,7 +3828,7 @@ msgstr ""
+ "[-- Aviso: Não foi possível verificar %s/%s assinaturas. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3759,7 +3836,7 @@ msgstr ""
+ "[-- Os dados a seguir estão assinados --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3767,7 +3844,7 @@ msgstr ""
+ "[-- Aviso: Não foi possível encontrar assinatura alguma. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3786,229 +3863,229 @@ msgstr "Executando S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Nome: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "aka: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "'From:' validado "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "'To:' validado "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Tipo de chave: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Uso da chave: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Impressão digital: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "No. serial: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Emitido por: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Sub-chave: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "erro ao habilitar protocolo CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "erro ao criar objeto de dados gpgme: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "erro ao alocar objeto de dados: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "erro ao retroceder objeto de dados: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[arquivo temporário]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "erro ao acessar objeto de dados: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "erro ao adicionar destinatário '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "chave secreta '%s' não encontrada: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "especificação ambígua da chave secreta '%s'\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "erro ao configurar chave secreta '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "erro ao configurar notação de assinatura PKA: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "erro ao encriptar dados: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "erro ao assinar dados: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as desconfigurado e sem chave pré-definida em ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Aviso: Uma das chaves foi revogada\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Aviso: A chave usada para criar a assinatura expirou em: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Aviso: Ao menos uma chave de certificação expirou\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Aviso: A assinatura expirou em: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Incapaz de verificar devido à ausência de chave ou certificado\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL indisponível\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "CRL disponível é antigo demais\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Uma exigência das diretrizes não foi atendida\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Ocorreu um erro de sistema"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "AVISO: registro PKA não coincide endereço do signatário: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Endereço PKA verificado do signatário é: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "AVISO: Não temos indicação alguma se a chave pertence à pessoa nomeada conforme mostrado acima\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "AVISO: A chave não pertence à pessoa nomeada conforme mostrado acima\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "AVISO: Não é garantido que a chave pertença à pessoa nomeada conforme mostrado acima\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "KeyID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "Não há assinatura digital disponível"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "criado: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Erro ao obter informação da chave para KeyID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Assinatura válida de:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "Assinatura *INVÁLIDA* de:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Assinatura problemática de:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " expira: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Início da informação da assinatura --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Erro: verificação falhou: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Inicia Notação (assinado por: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Finaliza Notação ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4016,7 +4093,7 @@ msgstr ""
+ "[-- Fim da informação da assinatura --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4025,21 +4102,26 @@ msgstr ""
+ "[-- Erro: decriptação falhou: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "Erro ao importar chave: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Erro: decriptação/verificação falhou: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Mensagem PGP decriptada com sucesso"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Erro: copiar dados falhou\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4047,11 +4129,11 @@ msgstr ""
+ "[-- INÍCIO DE MENSAGEM DO PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- INÍCIO DE BLOCO DE CHAVE PÚBLICA DO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4059,29 +4141,29 @@ msgstr ""
+ "[-- INÍCIO DE MENSAGEM ASSINADA POR PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- FIM DE MENSAGEM DO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- FIM DE BLOCO DE CHAVE PÚBLICA DO PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- FIM DE MENSAGEM ASSINADA POR PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+ msgstr "[-- Erro: não foi possível encontrar o início da mensagem do PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Erro: não foi possível criar um arquivo temporário --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4089,7 +4171,7 @@ msgstr ""
+ "[-- Os dados a seguir estão assinados e encriptados com PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4097,24 +4179,20 @@ msgstr ""
+ "[-- Os dados a seguir estão encriptados com PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Fim dos dados assinados e encriptados com PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Fim dos dados encriptados com PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Mensagem PGP decriptada com sucesso"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Incapaz de decriptar mensagem PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4122,7 +4200,7 @@ msgstr ""
+ "[-- Os dados a seguir estão assinados com S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4130,34 +4208,34 @@ msgstr ""
+ "[-- Os dados a seguir estão encriptados com S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Fim dos dados assinados com S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Fim dos dados encriptados com S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Incapaz de exibir esta ID de usuário (codificação desconhecida)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Incapaz de exibir esta ID de usuário (codificação inválida)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Incapaz de exibir esta ID de usuário (DN inválido)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Inválido]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4165,94 +4243,94 @@ msgstr[0] "%s, %lu bit %s\n"
+ msgstr[1] "%s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "encriptação"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "assinando"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certificação"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Revogado]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Expirado]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Desabilitado]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Coletando dados..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Erro ao procurar emissor da chave: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Erro: cadeia de certificação longa demais - parando aqui\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Key ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start falhou: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next falhou: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Todas chaves coincidentes estão expiradas/revogadas"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Escolher "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Verificar chave "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Chaves PGP e S/MIME que coincidem"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Chaves PGP que coincidem"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Chaves do S/MIME que coincidem"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Chaves que coincidem"
+
+@@ -4260,55 +4338,55 @@ msgstr "Chaves que coincidem"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Esta chave não pode ser usada: expirada/desabilitada/revogada"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID expirada/desabilitada/revogada. Você realmente quer usar esta chave?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID inválida. Você realmente quer usar esta chave?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID apenas marginalmente válida. Você realmente quer usar esta chave?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID tem validade indefinida. Você realmente quer usar esta chave?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Procurando por chaves que casam com \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "Nenhuma chave coincidente encontrada para \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Usar keyID = \"%s\" para %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Entre a keyID para %s: "
+@@ -4317,15 +4395,15 @@ msgstr "Entre a keyID para %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Nenhuma chave secreta encontrada"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Por favor entre o key ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Erro ao exportar chave: %s"
+@@ -4333,92 +4411,92 @@ msgstr "Erro ao exportar chave: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Chave do PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: protocolo OpenPGP indisponível"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: protocolo CMS indisponível"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "(s)assinar S/MIME, (a)assinar como, (p)pgp, (c)limpar, (o)desligar modo oppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "(s)assinar PGP, (a)assinar como, (m)s/mime, (c)limpar, (o)desligar modo oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)encriptar, (s)assinar, (a)assinar como, (b)ambos, (p)pgp, (c)limpar, ou (o)oppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "esabpco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)encriptar, (s)assinar, (a)assinar como, (b)ambos, (m)s/mime, (c)limpar, ou (o)oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "(e)encriptar com S/MIME, (s)assinar, (a)assinar como, (b)ambos, (p)pgp, ou (c)limpar"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "(e)encriptar com PGP, (s)assinar, (a)assinar como, (b)ambos, (m)s/mime, ou (c)limpar"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Falha ao verificar remetente"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Falha ao descobrir remetente"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Entre a senha do PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Erro: não foi possível criar o subprocesso do PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4429,15 +4507,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "Mensagem PGP não criptografada"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Erro interno. Por favor submeta um relatório de problema (bug report)."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4445,125 +4523,125 @@ msgstr ""
+ "[-- Erro: não foi possível criar um subprocesso para o PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Desencriptação falhou"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Não foi possível abrir o subprocesso do PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Não foi possível executar o PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "i)incorporado"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "(s)assinar com PGP, (a) assinar como, %s format, (c)limpar, ou (o)desligar modo oppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(s)assinar com PGP, (a) assinar como, (c)limpar, ou (o)desligar modo oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)encriptar, (s)assinar, (a)assinar como, (b)ambos, %s format, (c)limpar, ou (o)modo oppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)encriptar com PGP, (s)assinar, (a)assinar como, (b)ambos, (c)limpar, ou (o)modo oppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "(e)encriptar com PGP, (s)assinar, (a)assinar como, (b)ambos, %s format, ou (c)limpar?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(e)encriptar com PGP, (s)assinar, (a)assinar como, (b)ambos, ou (c)limpar?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Obtendo chave PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Todas as chaves que coincidem estão expiradas, revogadas, ou desabilitadas"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Chaves do PGP que casam com <%s>. "
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Chaves do PGP que casam com \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Não foi possível abrir /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Chave do PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Entre com a senha do S/MIME:"
+
+@@ -4572,7 +4650,7 @@ msgstr "Entre com a senha do S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Expirou "
+
+@@ -4581,7 +4659,7 @@ msgstr "Expirou "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Inválido "
+
+@@ -4590,7 +4668,7 @@ msgstr "Inválido "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Revogado "
+
+@@ -4599,7 +4677,7 @@ msgstr "Revogado "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Confiável "
+
+@@ -4608,7 +4686,7 @@ msgstr "Confiável "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Não verificado"
+
+@@ -4617,7 +4695,7 @@ msgstr "Não verificado"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Verificado "
+
+@@ -4626,58 +4704,58 @@ msgstr "Verificado "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Desconhecido "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Certificados S/MIME que coincidem com \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID não é confiável. Você realmente quer usar esta chave?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Entre com a keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Nenhum certificado (válido) encontrado para %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Erro: incapaz de criar subprocesso OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Rótulo para certificado: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "Não há arquivo de certificação"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "nenhuma caixa de mensagens (mbox)"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Nenhuma saída proveniente do OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Incapaz de assinar: nenhuma chave especificada. Use 'assinar como'."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Incapaz de abrir subprocesso OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4685,19 +4763,19 @@ msgstr ""
+ "[-- Fim da saída do OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Erro: incapaz de criar subprocesso OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Os dados a seguir estão encriptados com S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Os dados a seguir estão assinados com S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4705,7 +4783,7 @@ msgstr ""
+ "\n"
+ "[-- Fim dos dados encriptados com S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4714,160 +4792,160 @@ msgstr ""
+ "[-- Fim dos dados assinados com S/MIME --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(s)assinar com S/MIME, (w)encriptar com, (a)assinar como, (c)limpar, ou (o)modo oppenc desligado?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)encriptar com S/MIME, (s)assinar, (w)encriptar com, (a)assinar como, (b)ambos, (c)limpar, ou (o)modo oppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(e)encriptar com S/MIME, (s)assinar, (w)encriptar com, (a)assinar como, (b)ambos, (c)limpar?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Escolha uma família de algorítimos: (1) DES, (2) RC2, (3) AES, or (c)limpar?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "Carregando lista de grupos do cachê..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "Nenhum servidor de notícias configurado"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s é uma especificação inválida para servidor de notícias"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "O servidor fechou a conexão"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "Servidor não oferece suporte a modo leitura"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Nenum autenticador disponível."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "Autenticação %s falhou"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "A conexão com %s foi perdida. Reconetar?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "Obtendo lista de artigos..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Verificando por novas mensagens..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "Incapaz de mudar para modo leitor"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Conectado com %s. %s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "Postagem está ok"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "Postagem NÃO está ok"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "Incapaz de postar artigo: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Carregando lista de grupos do servidor %s..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "Carregando descrições..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "Verificando por novos grupos de notícias..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "Incapaz de encontrar artigos filhos pois o servidor não oferece suporte para o comando XPAT"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s é uma especificação inválida para grupo de notícias"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "Grupo de notícias %s não encontrado no servidor"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "Grupo de notícias %s foi removido do servidor"
+@@ -4879,8 +4957,8 @@ msgstr "falha ao interpretar consulta do tipo notmuch: %s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "falha ao interpretar uri do notmuch: %s"
++msgid "failed to parse notmuch url: %s"
++msgstr "falha ao interpretar url do notmuch: %s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5970,182 +6048,182 @@ msgstr "alterna exibição da barra lateral"
+ msgid "show S/MIME options"
+ msgstr "mostra opções S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Indisponível neste menu"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PagAnt"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "ProxPag"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Ver Anexo"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Prox"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "tudo"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "fim"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "O fim da mensagem está sendo mostrado"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "O início da mensagem está sendo mostrado"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "A ajuda está sendo mostrada"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Não há mais texto citado"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Não há mais texto não-citado após o texto citado"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Erro na expressão: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Expressão vazia"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "Nenhum comando de busca definido"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Executando comando de busca: %s ..."
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Dia do mês inválido: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Mês inválido: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Data relativa inválida: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "Nenhuma mensagem atual"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "Sem Contexto"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Erro ao abrir o fluxo para memória"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Erro ao abrir novamente o fluxo para memória"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "Erro ao abrir /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "erro no padrão em: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "faltam padrão: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "parêntese sem um corresponente: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: padrão de modificação inválido"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: não há suporte neste modo"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "faltam parâmetros"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "padrão vazio"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "erro: busca personalizada no servidor somente suportada com IMAP"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "erro: operação %d desconhecida (relate este erro)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Compilando padrão de busca..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Executando comando nas mensagens que casam..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Nenhuma mensagem casa com o critério"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Buscando..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "A busca chegou ao fim sem encontrar um resultado"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "A busca chegou ao início sem encontrar um resultado"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Busca interrompida"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Não há suporte para o comando TOP neste servidor"
+
+@@ -6153,7 +6231,7 @@ msgstr "Não há suporte para o comando TOP neste servidor"
+ msgid "Can't write header to temporary file"
+ msgstr "Incapaz de gravar cabeçalho no arquivo temporário"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Não há suporte para o comando UIDL neste servidor"
+
+@@ -6168,7 +6246,7 @@ msgstr[1] "%d mensagens foram perdidas. Tente abrir a caixa de mensagens novamen
+ msgid "POP host is not defined"
+ msgstr "Servidor POP não está definido"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s é um caminho POP inválido"
+@@ -6201,152 +6279,152 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d de %d mensagem lida]"
+ msgstr[1] "%s [%d de %d mensagens lidas]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Obtendo lista de mensagens..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Marcando mensagens como apagadas..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Incapaz de gravar mensagem para o arquivo temporário"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Autenticando (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "Registro inválido de tempo (timestamp) POP"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Autenticando (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Autenticação APOP falhou"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Não há suporte para o comando USER neste servidor"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "Autenticação falhou."
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "URL POP inválida: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Incapaz de deixar mensagens no servidor"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Erro ao conectar com servidor: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Fechando conexão com servidor POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verificando índices de mensagens..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Conexão perdida. Reconectar com servidor POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Mensagens Adiadas"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Nenhuma mensagem adiada"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Cabeçalho S/MIME ilegal"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Cabeçalho cripto ilegal"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Desencriptando mensagem..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nova Consulta"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Criar Apelido"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Agurdando pela resposta..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Consulta: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Consulta '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Comando de consulta não definido"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Cano"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Imprimir"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Salvando..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Anexo salvo"
+ msgstr[1] "%d anexos salvos"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "AVISO! Você está prestes a sobrescrever %s, continuar?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Anexo filtrado"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrar através de: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Passar por cano a: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Eu não sei como imprimir anexos %s"
+@@ -6354,55 +6432,55 @@ msgstr "Eu não sei como imprimir anexos %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Imprimir anexo marcado?"
+ msgstr[1] "Imprimir %d anexos marcados?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Imprimir anexo?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Não há suporte para alterações estruturais em anexos desencriptados."
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Incapaz de desencriptar mensagem encriptada"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Anexos"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Não existem sub-partes a serem exibidas"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Incapaz de apagar anexos do servidor POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "Incapaz de apagar anexos do servidor de notícias"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Deleção de anexos de mensagens encriptadas não é suportada"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Deleção de anexos de mensagens assinadas podem invalidar a assinatura"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Somente a deleção de anexos multiparte é suportada"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Você só pode repetir partes message/rfc822"
+
+@@ -6440,7 +6518,7 @@ msgstr "Não é possível criar %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Não foi encontrada nenhuma mensagem marcada"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Nenhuma lista de email encontrada"
+
+@@ -6456,69 +6534,69 @@ msgstr ""
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Somente possível redigir para um signatário com partes message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Anexar"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Inserir"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<aleatório>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Não foi possível obter o type2.list do mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Escolha uma sequência de reenviadores"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Erro: %s não pode ser usado como reenviador final de uma sequência"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Sequências do mixmaster são limitadas a %d elementos"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "A sequência de reenviadores já está vazia"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "O primeiro elemento da sequência já está selecionado"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "O último elemento da sequência já está selecionado"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "O mixmaster não aceita cabeçalhos Cc ou Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr ""
+ "Por favor, defina a variável hostname para um valor adequado quando for\n"
+ "usar o mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Erro ao enviar mensagem, processo filho terminou com código %d\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Erro ao enviar mensagem"
+
+@@ -6548,41 +6626,41 @@ msgstr "Encaminhar anexos?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Responder para %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Responder para %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Incluir mensagem na resposta?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Enviando mensagem citada..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Não foi possível incluir todas as mensagens solicitadas"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Encaminar como anexo?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Preparando mensagem encaminhada..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Não há suporte par Fcc para uma caixa IMAP em modo lote"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Salvar anexos em Fcc?"
+
+@@ -6590,190 +6668,190 @@ msgstr "Salvar anexos em Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Falha em Fcc. (r)repetir, (m)caixa alternativa, (s)ignorar?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rms"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Caixa para Fcc"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Incapaz de adiar mensagem. $postponed desconfigurado"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Editar mensagem adiada?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Editar mensagem encaminhada?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Cancelar mensagem não modificada?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Mensagem não modificada cancelada"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "Nenhum sistema (backend) configurado para cripto. Desabilitando configurações de segurança de mensagens."
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "Artigo não postado"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Mensagem adiada"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Sem assunto, cancelar envio?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Nenhum assunto especificado"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "Nenhum grupo de notícias especificado"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "Sem anexos, cancelar envio?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "Mensagem contém texto coincidindo com \"$abort_noattach_regex\". Envio cancelado."
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Enviando mensagem..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Não foi possível enviar a mensagem"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Enviando em segundo plano"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "Artigo postado"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Mensagem enviada"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nenhum parâmetro de fronteira encontrado [relate este erro]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s não mais existe"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s não é um arquivo comum"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "Incapaz de encontrar qualquer arquivo mime.types."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Não foi possível abrir %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail deve estar configurado a fim de se enviar mensagens"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Erro ao enviar a mensagem, processo filho saiu com código %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Saída do processo de entrega"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "IDN %s inválida durante preparação remetente re-enviado"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Sessão SMTP falhou: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Sessão SMTP falhou: incapaz de abrir %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "URL SMTP inválida: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "Método %s de autenticação SMTP requer SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Autenticação %s falhou, tentando próximo método"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "Autenticação SMTP requer SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "Servidor SMTP não oferece suporte à autenticação"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Endereço remetente não foi fornecido"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Sessão SMTP falhou: erro de acesso"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Sessão SMTP falhou: erro de escrita"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Resposta inválida do servidor"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Ordenando caixa..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Não foi possível encontrar a função de ordenação [relate este problema]"
+
+@@ -6843,10 +6921,10 @@ msgstr ""
+ "NeoMutt é um programa livre, e você é encorajado a redistribuí-lo\n"
+ "sob certas condições; digite 'neomutt -vv' para os detalhes.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Opções pré-definidas:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Opções de compilação:"
+diff --git a/po/ru.po b/po/ru.po
+index 1d7f23654..a7b33e3b4 100644
+--- a/po/ru.po
++++ b/po/ru.po
+@@ -13,7 +13,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-05-10 19:58+0300\n"
+ "Last-Translator: Vsevolod Volkov <vvv@mutt.org.ua>\n"
+ "Language-Team: neomutt-ru@woe.spb.ru\n"
+@@ -23,16 +23,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)отвергнуть, (o)принять, (a)принять и сохранить, (s)пропустить"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)отвергнуть, (o)принять, (a)принять и сохранить"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)отвергнуть, (o)принять, (s)пропустить"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)отвергнуть, (o)принять"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Выход"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Удалить"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Восстановить"
+
+@@ -40,18 +64,18 @@ msgstr "Восстановить"
+ msgid "Select"
+ msgstr "Выбрать"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Помощь"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Список псевдонимов отсутствует"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Псевдонимы"
+
+@@ -60,52 +84,52 @@ msgstr "Псевдонимы"
+ msgid "Alias as: "
+ msgstr "Псевдоним: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Такой псевдоним уже присутствует"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Предупреждение: Этот псевдоним может не работать. Исправить?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Адрес: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Некорректный IDN: %s"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Полное имя: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Принять?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Сохранить в файл: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Ошибка чтения файла псевдонимов"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Ошибка чтения файла псевдонимов"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Псевдоним создан"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Ошибка позиционирования в файле псевдонимов"
+
+@@ -114,7 +138,7 @@ msgstr "Ошибка позиционирования в файле псевдо
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "Каталог %s не существует. Создать?"
+@@ -123,8 +147,8 @@ msgstr "Каталог %s не существует. Создать?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Не удалось создать %s: %s"
+@@ -134,7 +158,7 @@ msgstr "Не удалось создать %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "Создать учётную запись autocrypt?"
+
+@@ -143,7 +167,7 @@ msgstr "Создать учётную запись autocrypt?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Адрес учётной записи autocrypt: "
+
+@@ -152,7 +176,7 @@ msgstr "Адрес учётной записи autocrypt: "
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "Введите только один адрес"
+
+@@ -161,7 +185,7 @@ msgstr "Введите только один адрес"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "Этот адрес уже имеет учётную запись autocrypt"
+
+@@ -173,14 +197,14 @@ msgstr "Этот адрес уже имеет учётную запись autocr
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "Предпочесть шифрование?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Учётная запись autocrypt успешно создана"
+
+@@ -188,7 +212,7 @@ msgstr "Учётная запись autocrypt успешно создана"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "Создание учётной записи autocrypt прервано"
+
+@@ -197,7 +221,7 @@ msgstr "Создание учётной записи autocrypt прервано"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Не найден (действительный) ключ autocrypt для %s"
+@@ -209,12 +233,12 @@ msgstr "Не найден (действительный) ключ autocrypt дл
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Проверить наличие заголовков autocrypt в почтовом ящике?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Проверка почтового ящика"
+
+@@ -225,21 +249,21 @@ msgstr "Проверка почтового ящика"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Проверить наличие заголовков autocrypt в другом почтовом ящике?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Создать"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Удалить"
+
+@@ -247,9 +271,9 @@ msgstr "Удалить"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Перекл Актив"
+
+@@ -257,17 +281,17 @@ msgstr "Перекл Актив"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Предп Шифр"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "предпочитать шифрование"
+
+@@ -276,7 +300,7 @@ msgstr "предпочитать шифрование"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "ручное шифрование"
+
+@@ -284,7 +308,7 @@ msgstr "ручное шифрование"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "активн"
+
+@@ -292,12 +316,12 @@ msgstr "активн"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "неактивн"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Учётные записи autocrypt"
+
+@@ -305,13 +329,13 @@ msgstr "Учётные записи autocrypt"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Ошибка сохранения информации об учётной записи"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Действительно удалить учётную запись \"%s\"?"
+@@ -329,7 +353,7 @@ msgstr "Действительно удалить учётную запись \"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Не удалось открыть базу данных autocrypt %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "ошибка создания gpgme контекста: %s"
+@@ -402,284 +426,235 @@ msgstr "Версия базы данных autocrypt слишком новая"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s не является каталогом"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Перейти в: "
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Маска"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Подключено к %s"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Отключено от %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s не является каталогом"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Подключено к %s"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Почтовые ящики [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Подключение [%s], маска файла: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Каталог [%s], маска файла: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Вложение каталогов не поддерживается"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Нет файлов, удовлетворяющих данной маске"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Создание поддерживается только для почтовых ящиков на IMAP-серверах"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Переименование поддерживается только для почтовых ящиков на IMAP-серверах"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Удаление поддерживается только для почтовых ящиков на IMAP-серверах"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "показать имя текущего файла"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Удалить почтовый ящик \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Почтовый ящик удален"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Не удалось удалить почтовый ящик"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Почтовый ящик не удален"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Перейти в: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Ошибка просмотра каталога"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Маска файла: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Обратный порядок по (d)дате, (a)имени, (z)размеру или (n)отсутствует?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Упорядочить по (d)дате, (a)имени, (z)размеру или (n)отсутствует?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Новое имя файла: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Не удалось просмотреть каталог"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Ошибка при попытке просмотра файла"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Подключено к %s"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Отключено от %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Нет файлов, удовлетворяющих данной маске"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: цвет не поддерживается терминалом"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: нет такого цвета"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: нет такого объекта"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: слишком мало аргументов"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: нет такого атрибута"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: слишком много аргументов"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "цвета по умолчанию не поддерживаются"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Ошибка: score: неверное значение"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Проверить подпись?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Не удалось создать временный файл"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Не удалось создать фильтр просмотра"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Не удалось скопировать сообщение"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-подпись проверена"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Отправитель сообщения не является владельцем S/MIME-сертификата"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Предупреждение: часть этого сообщения не подписана"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-подпись проверить НЕ удалось"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-подпись проверена"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-подпись проверить НЕ удалось"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Ошибка выполнения \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Команда: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Предупреждение: сообщение не содержит заголовка From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Перенаправить сообщение: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Перенаправить сообщения: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Ошибка разбора адреса"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -687,7 +662,7 @@ msgstr[0] "Перенаправить сообщение %s?"
+ msgstr[1] "Перенаправить сообщения %s?"
+ msgstr[2] "Перенаправить сообщения %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+@@ -695,7 +670,7 @@ msgstr[0] "Сообщение не перенаправлено"
+ msgstr[1] "Сообщения не перенаправлены"
+ msgstr[2] "Сообщения не перенаправлены"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+@@ -703,29 +678,29 @@ msgstr[0] "Сообщение перенаправлено"
+ msgstr[1] "Сообщения перенаправлены"
+ msgstr[2] "Сообщения перенаправлены"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Не удалось создать процесс фильтра"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Передать программе: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Команда для печати не определена"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Напечатать сообщение?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Напечатать отмеченные сообщения?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+@@ -733,7 +708,7 @@ msgstr[0] "Сообщение напечатано"
+ msgstr[1] "Сообщения напечатаны"
+ msgstr[2] "Сообщения напечатаны"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -742,161 +717,325 @@ msgstr[1] "Не удалось напечатать сообщения"
+ msgstr[2] "Не удалось напечатать сообщения"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Обр.пор.:(d)дата/(f)от/(r)получ/(s)тема/(o)кому/(t)диск/(u)без/(z)разм/(c)конт/(p)спам/(l)метка?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Порядок:(d)дата/(f)от/(r)получ/(s)тема/(o)кому/(t)диск/(u)без/(z)разм/(c)конт/(p)спам/(l)метка?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Программа: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Декодировать и сохранить в почтовый ящик"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Декодировать и сохранить помеченное в почтовый ящик"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Расшифровать и сохранить в почтовый ящик"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Расшифровать и сохранить помеченное в почтовый ящик"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Сохранить в почтовый ящик"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Сохранить помеченное в почтовый ящик"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Декодировать и копировать в почтовый ящик"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Декодировать и копировать помеченное в почтовый ящик"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Расшифровать и копировать в почтовый ящик"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Расшифровать и копировать помеченное в почтовый ящик"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Копировать в почтовый ящик"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Копировать помеченное в почтовый ящик"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Копируется в %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Значение Content-Type изменено на %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Перекодировать в %s при отправке?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Значение Content-Type изменено на %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Установлена новая кодировка: %s; не перекодировать"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Установлена новая кодировка: %s; перекодировать"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: слишком мало аргументов"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: имя группы отсутствует"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "слишком мало аргументов"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Ошибка в %s: строка %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Ошибка в %s: строка %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: ошибки в %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: чтение прервано из-за большого количества ошибок в %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: ошибки в %s"
++msgstr[1] "source: ошибки в %s"
++msgstr[2] "source: ошибки в %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "псевдоним: отсутствует адрес"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Предупреждение: некорректный IDN \"%s\" в псевдониме \"%s\""
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: отсутствует параметр disposition"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "изменить описание вложения"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: неверное значение параметра disposition"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: слишком много аргументов"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: отсутствует -rx или -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: предупреждение: некорректный IDN \"%s\""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "недопустимое поле в заголовке"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: неизвестная переменная"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s: значение не определено"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: ошибка в %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Не удалось напечатать сообщения"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "спам: образец не найден"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "не спам: образец не найден"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Подключено к %s"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Подключено к %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Тема сообщения не указана."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: отсутствует параметр disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: неверное значение параметра disposition"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Отключено от %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Отключено от %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Вложений нет"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Безопасность: "
+
+@@ -907,78 +1046,78 @@ msgstr "Безопасность: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Подписать как: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Отвечать по %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "изменить поле \"Reply-To:\""
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Отправить"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Прервать"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "To"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Subj"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Вложить файл"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Описание"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Тема сообщения не указана."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Откл"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Нет"
+
+@@ -986,7 +1125,7 @@ msgstr "Нет"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Не понятно"
+
+@@ -994,14 +1133,14 @@ msgstr "Не понятно"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Доступно"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Да"
+
+@@ -1011,7 +1150,7 @@ msgstr "Да"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (e)шифровать, (c)очистить, (a)автоматически?"
+
+@@ -1019,51 +1158,51 @@ msgstr "Autocrypt: (e)шифровать, (c)очистить, (a)автомат
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Не поддерживается"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Подписать и зашифровать"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Зашифровать"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Подписать"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Нет"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP/текст)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (режим OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<по умолчанию>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Зашифровать: "
+
+@@ -1072,11 +1211,11 @@ msgstr "Зашифровать: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Рекомендация: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1087,7 +1226,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Вложение #%d уже не существует: %s"
+@@ -1099,57 +1238,57 @@ msgstr "Вложение #%d уже не существует: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Вложение #%d изменено. Обновить кодировку для %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Вложения"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Вы не можете удалить единственное вложение"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Некорректный IDN в '%s': %s."
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Вложение сохранено"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Текущее вложение не будет перекодировано"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Вложение обработано"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Ошибка отправки сообщения"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+@@ -1157,182 +1296,302 @@ msgstr[0] "Вкладываются помеченные файлы..."
+ msgstr[1] "Вкладываются помеченные файлы..."
+ msgstr[2] "Вкладываются помеченные файлы..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Не удалось вложить %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Вложить сообщение из почтового ящика"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Вложить сообщение из почтового ящика"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Не удалось открыть почтовый ящик %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "В этом почтовом ящике/файле нет сообщений"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Пометьте сообщения, которые вы хотите вложить"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Не удалось создать вложение"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Перекодирование допустимо только для текстовых вложений"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Текущее вложение не будет перекодировано"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Текущее вложение будет перекодировано"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Неверная кодировка"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Сохранить копию этого сообщения?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Отправить вложение с именем: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Переименовать в: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Не удалось получить информацию о %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Новый файл: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Поле Content-Type должно иметь вид тип/подтип"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Неизвестное значение поля Content-Type: %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Не удалось создать файл %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Не удалось создать вложение"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Продолжить отложенное сообщение?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Записать сообщение в почтовый ящик"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Сообщение записывается в %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Сообщение записано"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Поддержка PGP не настроена"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME уже используется. Очистить и продолжить?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Поддержка S/MIME не настроена"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP уже используется. Очистить и продолжить?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Невозможно дозаписать без append-hook или close-hook: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Не удалось заблокировать почтовый ящик"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Распаковка %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Не удалось распознать содержимое упакованного файла"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Не удалось найти описание для почтового ящика типа %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Ошибка команды упаковки: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Дозапись не поддерживается для этого типа почтового ящика"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Невозможно синхронизировать упакованный файл без close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Упаковывается %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Упаковывается и дозаписывается %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Ошибка. Временный файл оставлен: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Неверно указана относительная дата: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Неверно указана относительная дата: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Ошибка: score: неверное значение"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Неверное значение для параметра %s: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Неверное название месяца: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "В режиме \"вложить сообщение\" функция недоступна."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Ошибка: score: неверное значение"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Ошибка: score: неверное значение"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Неверно указана относительная дата: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Неверное значение для параметра %s: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Ошибка: неверное значение \"%s\" для -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: неизвестная переменная"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Неверно указана относительная дата: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Неверно указана относительная дата: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Имя пользователя для %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Пароль для %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Команда запроса не определена"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1353,7 +1612,7 @@ msgstr "Устанавливается соединение с %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Не удалось установить соединение с %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "неизвестная ошибка"
+
+@@ -1367,23 +1626,23 @@ msgstr "Ошибка при взаимодействии с %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Соединение с %s закрыто"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "SASL: неизвестный протокол"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "SASL: ошибка создания соединения"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "SASL: ошибка установки свойств безопасности"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "SASL: ошибка установки уровня внешней безопасности"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "SASL: ошибка установки внешнего имени пользователя"
+
+@@ -1396,133 +1655,109 @@ msgstr "Команда, предшествующая соединению, за
+ msgid "Connection to %s closed"
+ msgstr "Соединение с %s закрыто"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Накопление энтропии: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s имеет небезопасный режим доступа"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "Использование SSL-протокола невозможно из-за недостатка энтропии"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Неизвестно"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[ошибка вычислений]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[недопустимая дата]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Сертификат все еще недействителен"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Срок действия сертификата истек"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Недостаточно энтропии"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "не удалось получить subject сертификата"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "не удалось получить common name сертификата"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "владелец сертификата не соответствует имени хоста %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Данный сертификат принадлежит:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Данный сертификат был выдан:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Данный сертификат действителен"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " с %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " по %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1-отпечаток пальца: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA1-отпечаток пальца: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "Проверка SSL-сертификата (сертификат %zu из %zu в цепочке)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)отвергнуть, (o)принять, (a)принять и сохранить, (s)пропустить"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)отвергнуть, (o)принять, (a)принять и сохранить"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)отвергнуть, (o)принять, (s)пропустить"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)отвергнуть, (o)принять"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Выход "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Предупреждение: не удалось сохранить сертификат"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Сертификат сохранен"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Не удалось выполнить проверку хоста сертификата: %s"
+@@ -1530,15 +1765,15 @@ msgstr "Не удалось выполнить проверку хоста се
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Предупреждение: не удалось установить имя хоста TLS SNI"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "ошибка ввода/вывода"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "Не удалось установить SSL-соединение: %s"
+@@ -1546,89 +1781,73 @@ msgstr "Не удалось установить SSL-соединение: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Не удалось создать SSL контекст"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Предупреждение: ошибка влкючения ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Не удалось получить сертификат сервера"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Ошибка проверки сертификата (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Сертификат не соответствует стандарту X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Ошибка инициализации данных сертификата gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Ошибка обработки данных сертификата"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: сертификат сервера уже недействителен"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: cрок действия сертификата сервера истек"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: сертификат сервера был отозван"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: имя сервера не соответствует сертификату"
+
+-#: conn/ssl_gnutls.c:655
+-msgid "WARNING: Signer of server certificate is not a CA"
+-msgstr "ПРЕДУПРЕЖДЕНИЕ: сертификат сервера не подписан CA"
+-
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
+-msgid "Warning: Server certificate was signed using an insecure algorithm"
+-msgstr "Предупреждение: сертификат подписан с использованием небезопасного алгоритма"
+-
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
++#: conn/ssl_gnutls.c:686
++msgid "WARNING: Signer of server certificate is not a CA"
++msgstr "ПРЕДУПРЕЖДЕНИЕ: сертификат сервера не подписан CA"
+
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
++msgid "Warning: Server certificate was signed using an insecure algorithm"
++msgstr "Предупреждение: сертификат подписан с использованием небезопасного алгоритма"
+
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Запрещены все доступные протоколы для TLS/SSL-соединения"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Явное указание набора шифров через $ssl_ciphers не поддерживается"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-соединение с использованием %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Ошибка: не удалось открыть TLS-сокет"
+
+@@ -1647,7 +1866,7 @@ msgstr "Ошибка туннеля при взаимодействии с %s: %
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Туннель к %s вернул ошибку %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1655,31 +1874,11 @@ msgstr[0] ""
+ msgstr[1] ""
+ msgstr[2] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Нет доступного механизма расшифровки для сообщения"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "да"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "нет"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Завершить работу с NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Чтобы продолжить, нажмите любую клавишу..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (\"?\" -- список): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1701,7 +1900,7 @@ msgstr ""
+ "~M сообщения включить и процитировать сообщения с заголовками\n"
+ "~p напечатать это сообщение\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1723,20 +1922,20 @@ msgstr ""
+ "~? вывести это сообщение\n"
+ ". строка, содержащая только точку, заканчивает редактирование\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: недопустимый номер сообщения.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Для завершения введите строку, содержащую только .)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Нет почтового ящика.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Сообщение содержит:\n"
+
+@@ -1744,19 +1943,19 @@ msgstr "Сообщение содержит:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(продолжить)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "отсутствует имя файла.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Текст сообщения отсутствует.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: неизвестная команда редактора (введите ~? для справки)\n"
+@@ -1803,19 +2002,73 @@ msgstr "Не удалось дозаписать почтовый ящик: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Составное сообщение требует наличия параметра boundary"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Группировка по дискуссиям не включена"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Установить флаг"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Сбросить флаг"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: цвет не поддерживается терминалом"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: нет такого цвета"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: нет такого объекта"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: нет такого атрибута"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "цвета по умолчанию не поддерживаются"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Ошибка: score: неверное значение"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "да"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "нет"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Завершить работу с NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Чтобы продолжить, нажмите любую клавишу..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (\"?\" -- список): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1836,23 +2089,23 @@ msgstr "[-- Автопросмотр; используется %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Запускается программа автопросмотра: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Не удалось создать фильтр"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Не удалось выполнить %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Автопросмотр стандартного потока ошибок %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Ошибка: тип message/external требует наличие параметра access-type --]\n"
+
+@@ -1871,7 +2124,7 @@ msgstr "[-- Ошибка: тип message/external требует наличие
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1903,7 +2156,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1918,7 +2171,7 @@ msgstr[2] "[-- Это вложение типа %s/%s (размер %s байт
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1930,12 +2183,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Это вложение типа %s/%s было удалено --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- имя: %s --]\n"
+@@ -1943,7 +2196,7 @@ msgstr "[-- имя: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1959,7 +2212,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1968,94 +2221,94 @@ msgstr ""
+ "[-- Это вложение типа %s/%s не было включено --]\n"
+ "[-- в сообщение, и значение access-type %s не поддерживается --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Ошибка: не удалось показать ни одну из частей Multipart/Alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Вложение #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Вложение #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Одна или несколько частей этого сообщения не могут быть отображены"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Не удалось открыть временный файл"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Не удалось открыть временный файл"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Ошибка: тип multipart/signed требует наличия параметра protocol"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Это вложение (используйте \"%s\" для просмотра этой части) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- тип %s/%s не поддерживается (используйте \"%s\" для просмотра этой части) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Это вложение (функция view-attachments не назначена ни одной клавише) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- тип %s/%s не поддерживается (функция view-attachments не назначена ни одной клавише) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Это вложение --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- тип %s/%s не поддерживается --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ОШИБКА: пожалуйста. сообщите о ней"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<НЕИЗВЕСТНО>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Стандартные назначения:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Неназначенные функции:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Справка для %s"
+@@ -2072,41 +2325,41 @@ msgstr "сокращение для почтового ящика раскрыт
+ msgid "badly formatted command string"
+ msgstr "плохо отфороматированная командная строка"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Невозможно выполнить unhook * из команды hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: неизвестный тип события: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Невозможно удалить %s из команды %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: нет такого меню"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: нет такого меню"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: нет такого меню"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Не удалось создать временный файл %s"
+@@ -2144,28 +2397,28 @@ msgstr "Ошибка GSSAPI-аутентификации"
+ msgid "LOGIN disabled on this server"
+ msgstr "Команда LOGIN запрещена на этом сервере"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Регистрация..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Регистрация не удалась"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Аутентификация (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Ошибка OAUTHBEARER-аутентификации"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Аутентификация (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Ошибка SASL-аутентификации"
+
+@@ -2212,75 +2465,65 @@ msgstr "Не удалось переименовать: %s"
+ msgid "Mailbox renamed"
+ msgstr "Почтовый ящик переименован"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Почтовый ящик %s@%s закрыт"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Превышено время ожидания соединение с %s"
+
+ # "neomutt не поддерживает версию протокола, используемый на этом сервере"
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Этот IMAP-сервер использует устаревший протокол. NeoMutt не сможет работать с ним."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Не указано имя заголовка при поиске заголовка: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Не удалось выполнить команду CREATE: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Закрытие соединения с сервером %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Использовать безопасное TLS-соединение?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Не удалось установить TLS-соединение"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Зашифрованное соединение не доступно"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Подключение к %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Отключение от %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Подключено к %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Отключено от %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2288,16 +2531,16 @@ msgstr[0] "%d сообщений копируются в %s..."
+ msgstr[1] "%d сообщений копируются в %s..."
+ msgstr[2] "%d сообщений копируются в %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Создать %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Не удалось очистить почтовый ящик"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2306,7 +2549,7 @@ msgstr[1] "%d сообщений помечаются как удаленные.
+ msgstr[2] "%d сообщений помечаются как удаленные..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2314,37 +2557,37 @@ msgstr[0] "Сохранение изменённых сообщений... [%d/%
+ msgstr[1] "Сохранение изменённых сообщений... [%d/%d]"
+ msgstr[2] "Сохранение изменённых сообщений... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Ошибка сохранения флагов. Закрыть почтовый ящик?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Ошибка сохранения флагов"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Удаление сообщений с сервера..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: ошибка выполнения команды EXPUNGE"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Выбирается %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Ошибка открытия почтового ящика"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP сервер не поддерживает аутентификацию"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Неправильный "
+@@ -2355,7 +2598,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Нехватка памяти"
+
+@@ -2375,7 +2618,7 @@ msgstr "Получение заголовков сообщений..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Получение списка заголовков не поддерживается этим IMAP-сервером"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Получение заголовков сообщений..."
+
+@@ -2389,156 +2632,156 @@ msgstr "Сообщение загружается на сервер..."
+ msgid "Copying message %d to %s..."
+ msgstr "Сообщение %d копируется в %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Получение сообщения..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Нумерация сообщений изменилась. Требуется повторно открыть почтовый ящик."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Продолжить?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Выход"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Сохранить"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Создать"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Ответить"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Всем"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Отвечать по %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Нет открытого почтового ящика"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Сообщений нет"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Нет видимых сообщений"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Почтовый ящик немодифицируем"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "В режиме \"вложить сообщение\" функция недоступна"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Операция запрещена ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Не удалось разрешить запись в почтовый ящик, открытый только для чтения"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Изменения в состояние почтового ящика будут внесены при его закрытии"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Изменения в состояние почтового ящика не будут внесены"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s не является почтовым ящиком"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Ящик был изменен внешней программой. Значения флагов могут быть некорректны."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Новая почта в этом ящике"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Ящик был изменен внешней программой"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Нет отмеченных сообщений"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Нет помеченных сообщений"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Введите идентификатор ключа: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Корневое сообщение не видимо при просмотре с ограничением"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Удаление сообщений с сервера..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "удалить все сообщения в дискуссии"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Перейти к сообщению: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Аргумент должен быть номером сообщения"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Неверный номер сообщения"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Это сообщение невидимо"
+
+@@ -2551,38 +2794,38 @@ msgstr "Это сообщение невидимо"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Не удалось удалить сообщение"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Удалить сообщения по образцу: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Шаблон ограничения списка отсутствует"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Шаблон ограничения: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Ограничиться сообщениями, соответствующими: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Используйте \"all\" для просмотра всех сообщений"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Выйти из NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Пометить сообщения по образцу: "
+
+@@ -2590,204 +2833,204 @@ msgstr "Пометить сообщения по образцу: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Не удалось восстановить сообщение"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Восстановить сообщения по образцу: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Снять пометку с сообщений по образцу: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Соединения с IMAP-серверами отключены"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Нет темы письма, отказ"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP сервер не поддерживает аутентификацию"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Нет темы письма, отказ"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Нет темы письма, отказ"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Открыть почтовый ящик только для чтения"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Открыть почтовый ящик"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Нет почтовых ящиков с новой почтой"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Открыть почтовый ящик только для чтения"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Выйти из NeoMutt без сохранения изменений?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Не удалось соединить дискуссии"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Дискуссия разделена"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Дискуссия не может быть разделена, сообщение не является частью дискуссии"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Не удалось соединить дискуссии"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Отсутствует заголовок Message-ID: для соединения дискуссии"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Сначала необходимо пометить сообщение, которое нужно соединить здесь"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Дискуссии соединены"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Дискуссии не соединены"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Это последнее сообщение"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Нет восстановленных сообщений"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Это первое сообщение"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Нет новых сообщений при просмотре с ограничением"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Нет новых сообщений"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Нет непрочитанных сообщений при просмотре с ограничением"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Нет непрочитанных сообщений"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Достигнут конец; продолжаем поиск с начала"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Достигнуто начало; продолжаем поиск с конца"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Не удалось переключить флаг сообщения"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Не удалось переключить флаг \"новое\""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Нет больше дискуссий"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Это первая дискуссия"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "В дискуссии присутствуют непрочитанные сообщения"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Не удалось удалить сообщение"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Не удалось отредактировать сообщение"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2798,7 +3041,7 @@ msgstr[2] "Метки были изменены: %d"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Ни одна метка не была изменена"
+
+@@ -2806,7 +3049,7 @@ msgstr "Ни одна метка не была изменена"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Не удалось пометить сообщения как прочитанные"
+@@ -2814,271 +3057,133 @@ msgstr "Не удалось пометить сообщения как проч
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Введите макрос сообщения: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "макрос сообщения"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Сообщение связяно с %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Нет Message-ID для создания макроса"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Не удалось восстановить сообщение"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Ошибка в командной строке: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Ошибка в командной строке: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "не удалось определить имя узла с помощью uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: имя группы отсутствует"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "слишком мало аргументов"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Ошибка в %s: строка %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Ошибка в %s: строка %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: ошибки в %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: чтение прервано из-за большого количества ошибок в %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: ошибки в %s"
+-msgstr[1] "source: ошибки в %s"
+-msgstr[2] "source: ошибки в %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "псевдоним: отсутствует адрес"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Предупреждение: некорректный IDN \"%s\" в псевдониме \"%s\""
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: отсутствует параметр disposition"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "изменить описание вложения"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: неверное значение параметра disposition"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: отсутствует -rx или -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: предупреждение: некорректный IDN \"%s\""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "недопустимое поле в заголовке"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: неизвестная переменная"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s: значение не определено"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: ошибка в %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Не удалось напечатать сообщения"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "спам: образец не найден"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "не спам: образец не найден"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Подключено к %s"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Тема сообщения не указана."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: отсутствует параметр disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: неверное значение параметра disposition"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Отключено от %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: неизвестная команда"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Неверное значение для параметра %s: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "В режиме \"вложить сообщение\" функция недоступна."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Обнаружен цикл в определении макроса"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Клавише не назначена никакая функция"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Клавише не назначена никакая функция. Для справки используйте \"%s\"."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: последовательность клавиш пуста"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: пустая последовательность клавиш"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: нет аргументов"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: нет такой функции"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Введите ключи (^G - прерывание ввода): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Символ = %s, восьмиричный = %o, десятичный = %d"
+@@ -3102,7 +3207,7 @@ msgstr "для типа %s не найдено записи в файле mailca
+ msgid "Scanning %s..."
+ msgstr "Просматривается %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Читается %s..."
+@@ -3117,13 +3222,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): не удалось установить время файла"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Пишется %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3146,7 +3251,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3189,54 +3294,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Ошибка инициализации терминала"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "не удалось определить имя пользователя"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "не удалось определить домашний каталог"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Ошибка: неверное значение \"%s\" для -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Не удалось распознать ссылку mailto:"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Адресаты не указаны"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Невозможно использовать ключ -E с stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Не удалось открыть файл сообщения: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: не удалось вложить файл"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Нет почтовых ящиков с новой почтой"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Не определено ни одного почтового ящика со входящими письмами"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Почтовый ящик пуст"
+
+@@ -3278,52 +3383,52 @@ msgstr "Не удалось заново открыть почтовый ящи
+ msgid "Can't write message"
+ msgstr "Ошибка записи сообщения"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Перейти к: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Неверный индекс"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Записи отсутствуют"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Дальнейшая прокрутка невозможна"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Дальнейшая прокрутка невозможна"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Вы уже на первой странице"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Вы уже на последней странице"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Вы уже на последней записи"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Вы уже на первой записи"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Поиск: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Обратный поиск: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Не найдено"
+
+@@ -3366,20 +3471,20 @@ msgstr "Попытка flock-блокировки файла... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Некорректный формат файла истории (строка %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Не удалось создать временный файл"
+
+@@ -3398,7 +3503,7 @@ msgstr "Отладка на уровне %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Отладка на уровне %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Ошибка при установлении соединения: %s"
+@@ -3423,17 +3528,17 @@ msgstr "Получен сигнал %d (%s) ... Завершение работ
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Получен сигнал %d ... Завершение работы.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3441,148 +3546,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Указанный файл -- это каталог. Сохранить в нем?(y)да, (n)нет, (a)все"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Указанный файл -- это каталог. Сохранить в нем?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Имя файла в каталоге: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Файл существует, (o)переписать, (a)добавить, (с)отказ?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Запись сообщений не поддерживается POP-сервером"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Добавить сообщения к %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Невозможно оставить сообщения на сервере"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Имя пользователя для %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Пароль для %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Команда запроса не определена"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Не удалось разобрать имя. Продолжить?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Указанный в mailcap способ создания требует наличия параметра %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Не удалось открыть файл для разбора заголовков"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Не удалось открыть файл для удаления заголовков"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Не удалось переименовать файл"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "В mailcap не определен способ создания для %s; создан пустой файл"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Указанный в mailcap способ редактирования требует наличия параметра %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "В mailcap не определен способ редактирования для %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Подходящая запись в mailcap не найдена; просмотр как текста."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-тип не определен. Невозможно просмотреть вложение."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Команда: %-20.20s Описание: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Команда: %-30.30s Вложение: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Вложение: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Вложение: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Ошибка записи"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Неизвестно, как это печатать"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Искать"
+
+@@ -3591,21 +3668,21 @@ msgstr "Искать"
+ msgid "History '%s'"
+ msgstr "Запрос \"%s\""
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Неверное значение для параметра %s: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Не удалось заблокировать %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Новая почта в "
+
+@@ -3626,20 +3703,20 @@ msgstr "Корневое сообщение не видимо при просм
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Родительское сообщение не видимо при просмотре с ограничением"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Поиск прерван."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Не удалось вложить %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3651,13 +3728,13 @@ msgstr[2] "сообщения не удалены"
+ msgid "Can't open trash folder"
+ msgstr "Не удалось открыть мусорную корзину"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3665,7 +3742,7 @@ msgstr[0] "Переместить прочитанные сообщения в %
+ msgstr[1] "Переместить прочитанные сообщения в %s?"
+ msgstr[2] "Переместить прочитанные сообщения в %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3673,49 +3750,49 @@ msgstr[0] "Вычистить %d удаленное сообщение?"
+ msgstr[1] "Вычистить %d удаленных сообщений?"
+ msgstr[2] "Вычистить %d удаленных сообщений?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Прочитанные сообщения перемещаются в %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Почтовый ящик не изменился"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "Оставлено: %d, перемещено: %d, удалено: %d"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "Оставлено: %d, удалено: %d"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Используйте \"%s\" для разрешения/запрещения записи"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Используйте команду toggle-write для разрешения записи"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Почтовый ящик стал доступен только для чтения. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Почтовый ящик обновлен"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (текущее время: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Результат работы программы %s%s --]\n"
+@@ -3724,52 +3801,52 @@ msgstr "[-- Результат работы программы %s%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Фразы-пароли удалены из памяти"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Невозможно использовать PGP/текст с вложениями. Применить PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Письмо не отправлено: невозможно использовать PGP/текст с вложениями"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Невозможно использовать PGP/текст с format=flowed. Применить PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Письмо не отправлено: невозможно использовать PGP/текст с format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Запускается программа PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Не удалось отправить PGP-сообщение в текстовом формате. Использовать PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Письмо не отправлено"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-сообщения без указания типа содержимого не поддерживаются"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Попытка извлечь PGP ключи...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Попытка извлечь S/MIME сертификаты..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3778,7 +3855,7 @@ msgstr ""
+ "[-- Ошибка: неизвестный multipart/signed протокол %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3786,7 +3863,7 @@ msgstr ""
+ "[-- Ошибка: отсутствует или нарушена структура multipart/signed-сообщения --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3795,7 +3872,7 @@ msgstr ""
+ "[-- Предупреждение: не удалось проверить %s/%s подписи. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3803,7 +3880,7 @@ msgstr ""
+ "[-- Начало подписанных данных --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3811,7 +3888,7 @@ msgstr ""
+ "[-- Предупреждение: не найдено ни одной подписи. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3830,229 +3907,229 @@ msgstr "Вызывается S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Имя: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "aka: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Действ. с: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Действ. до: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Тип ключа: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Использование: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Отпечаток пальца: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Сер. номер: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Издан: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Подключ: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "ошибка включения CMS протокола: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "ошибка создания объекта данных gpgme: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "ошибка размещения объекта данных: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "ошибка позиционирования в начало объекта данных: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "ошибка чтения объекта данных: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "ошибка добавления получателя \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "секретный ключ \"%s\" не найден: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "неоднозначное указание секретного ключа \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "ошибка установки секретного ключа \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "ошибка установки примечания к подписи: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "ошибка шифрования данных: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "ошибка подписывания данных: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "ключ по умолчанию не определён в $pgp_sign_as и в ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Предупреждение: один из ключей был отозван\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Предупреждение: ключ, используемый для создания подписи, просрочен: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Предупреждение: срок действия одного или нескольких сертификатов истек\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Предупреждение: срок действия подписи истёк: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Не удалось проверить по причине отсутствия ключа или сертификата\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL не доступен\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Доступный CRL слишком старый\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Требование политики не было обнаружено\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Системная ошибка"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: PKA запись не соответствует адресу владельца:"
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Адрес, проверенный при помощи PKA: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: НЕ известно, принадлежит ли данный ключ указанной выше персоне\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: ключ НЕ ПРИНАДЛЕЖИТ указанной выше персоне\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: НЕТ уверенности в том, что ключ принадлежит указанной выше персоне\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "ID ключа "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "создано: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Ошибка получения информации о ключе с ID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Хорошая подпись от:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*ПЛОХАЯ* подпись от:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Сомнительная подпись от:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " действительна до: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Начало информации о подписи --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Ошибка: проверка не удалась: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Начало системы обозначения (подпись от: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Конец системы обозначения ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4060,7 +4137,7 @@ msgstr ""
+ "[-- Конец информации о подписи --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4069,21 +4146,26 @@ msgstr ""
+ "[-- Ошибка: не удалось расшифровать: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Ошибка экспорта ключа: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Ошибка: не удалось расшифровать или проверить подпись: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-сообщение успешно расшифровано"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Ошибка: не удалось скопировать данные\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4091,11 +4173,11 @@ msgstr ""
+ "[-- Начало PGP-сообщения --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Начало блока открытого PGP-ключа --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4103,19 +4185,19 @@ msgstr ""
+ "[-- Начало сообщения, подписанного PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- Конец PGP-сообщения --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Конец блока открытого PGP-ключа --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- Конец сообщения, подписанного PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4123,11 +4205,11 @@ msgstr ""
+ "[-- Ошибка: не удалось найти начало PGP-сообщения --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Ошибка: не удалось создать временный файл --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4135,7 +4217,7 @@ msgstr ""
+ "[-- Начало данных, подписанных и зашифрованных в формате PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4143,24 +4225,20 @@ msgstr ""
+ "[-- Начало данных, зашифрованных в формате PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Конец данных, подписанных и зашифрованных в формате PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Конец данных, зашифрованных в формате PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-сообщение успешно расшифровано"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Не удалось расшифровать PGP-сообщение"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4168,7 +4246,7 @@ msgstr ""
+ "[-- Начало данных, подписанных в формате S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4176,34 +4254,34 @@ msgstr ""
+ "[-- Начало данных, зашифрованных в формате S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Конец данных, подписанных в формате S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Конец данных, зашифрованных в формате S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Не возможно отобразить ID этого пользователя (неизвестная кодировка)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Не возможно отобразить ID этого пользователя (неправильная кодировка)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Не возможно отобразить ID этого пользователя (неправильный DN)"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Неправильное значение]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4212,94 +4290,94 @@ msgstr[1] "%s, %lu бит %s\n"
+ msgstr[2] "%s, %lu бит %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "шифрование"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "подпись"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "сертификация"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Отозван]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Просрочен]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Запрещён]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Сбор данных..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Ошибка поиска ключа издателя: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Ошибка: цепь сертификации слишком длинная - поиск прекращён\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Идентификатор ключа: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "Ошибка gpgme_op_keylist_start: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "Ошибка gpgme_op_keylist_next: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Все подходящие ключи помечены как просроченные или отозванные"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Выбрать "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Тест ключа "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP и S/MIME-ключи, соответствующие"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-ключи, соответствующие"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-ключи, соответствующие"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "ключи, соответствующие"
+
+@@ -4307,59 +4385,59 @@ msgstr "ключи, соответствующие"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Этот ключ не может быть использован: просрочен, запрещен или отозван"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID просрочен, запрещен или отозван. Использовать этот ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID недействителен. Использовать этот ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID действителен только частично. Использовать этот ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Степень доверия для ID не определена. Использовать этот ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Поиск ключей, соответствующих \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Использовать ключ \"%s\" для %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Введите идентификатор ключа для %s: "
+@@ -4368,15 +4446,15 @@ msgstr "Введите идентификатор ключа для %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "Скретный ключ не найден"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Введите, пожалуйста, идентификатор ключа: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Ошибка экспорта ключа: %s"
+@@ -4384,96 +4462,96 @@ msgstr "Ошибка экспорта ключа: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-ключ 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: Протокол OpenPGP не доступен"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: Протокол CMS не доступен"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)подпись, (a)подпись как, (p)gp, (c)отказаться, отключить (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)подпись, (a)подпись как, s/(m)ime, (c)отказаться, отключить (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)шифр, (s)подпись, (a)подпись как, (b)оба, (p)gp, (c)отказ, (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "esabpc"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, s/(m)ime, (c)отказ, (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)шифр, (s)подпись, (a)подпись как, (b)оба, (p)gp, (c)отказаться?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, s/(m)ime, (c)отказаться?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Не удалось проверить отправителя"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Не удалось вычислить отправителя"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Введите PGP фразу-пароль:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Ошибка: не удалось создать PGP-подпроцесс --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4484,15 +4562,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-сообщение не зашифровано."
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Внутренняя ошибка. Пожалуйста, сообщите о ней разработчикам."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4500,129 +4578,129 @@ msgstr ""
+ "[-- Ошибка: не удалось создать PGP-подпроцесс --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Расшифровать не удалась"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Не удалось открыть PGP-подпроцесс"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Не удалось запустить программу PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)PGP/текст"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)подпись, (a)подпись как, %s, (c)отказаться, отключить (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)подпись, (a)подпись как, (c)отказаться, отключить (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, %s, (c)отказ, (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, (c)отказ, (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, %s, (c)отказаться?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)шифр, (s)подпись, (a)подпись как, (b)оба, (c)отказаться?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Получение PGP-ключа..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Все подходящие ключи помечены как просроченные, отозванные или запрещённые"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-ключи, соответствующие <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-ключи, соответствующие \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Не удалось открыть /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-ключ %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Введите S/MIME фразу-пароль:"
+
+@@ -4631,7 +4709,7 @@ msgstr "Введите S/MIME фразу-пароль:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Просроченный "
+
+@@ -4640,7 +4718,7 @@ msgstr "Просроченный "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Неправильный "
+
+@@ -4649,7 +4727,7 @@ msgstr "Неправильный "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Отозванный "
+
+@@ -4658,7 +4736,7 @@ msgstr "Отозванный "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Доверенный "
+
+@@ -4667,7 +4745,7 @@ msgstr "Доверенный "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Непроверенный"
+
+@@ -4676,7 +4754,7 @@ msgstr "Непроверенный"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Проверенный "
+
+@@ -4685,59 +4763,59 @@ msgstr "Проверенный "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Неизвестный "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-сертификаты, соответствующие \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID недоверенный. Использовать этот ключ?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Введите идентификатор ключа: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Не найдено (правильного) сертификата для %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Ошибка: не удалось создать OpenSSL-подпроцесс"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Метка для сертификата: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "нет файла сертификата"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "нет почтового ящика"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Нет вывода от программы OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Не удалось подписать: не указан ключ. Используйте \"подписать как\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Не удалось открыть OpenSSL-подпроцесс"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4745,19 +4823,19 @@ msgstr ""
+ "[-- Конец вывода программы OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Ошибка: не удалось создать OpenSSL-подпроцесс --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Начало данных, зашифрованных в формате S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Начало данных, подписанных в формате S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4765,7 +4843,7 @@ msgstr ""
+ "\n"
+ "[-- Конец данных, зашифрованных в формате S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4774,168 +4852,168 @@ msgstr ""
+ "[-- Конец данных, подписанных в формате S/MIME --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)подпись, (w)шифр как, (a)подпись как, (c)отказ, отключить (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)шифр, (s)подпись, (w)шифр как, (a)подпись как, (b)оба, (c)отказ, (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)шифр, (s)подпись, (w)шифр как, (a)подпись как, (b)оба, (c)отказ?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Выберите семейство алгоритмов: (1) DES, (2) RC2, (3) AES, (c)отказ?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "Неверно указано имя POP-ящика: %s"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Сервер закрыл соединение"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP сервер не поддерживает аутентификацию"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Нет доступных методов аутентификации."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Ошибка SASL-аутентификации"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Соединение с %s закрыто"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Получение списка сообщений..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Проверка наличия новых сообщений..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "ошибка записи во временный почтовый ящик: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Устанавливается соединение с %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Нет помеченных сообщений"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Не удалось получить информацию о %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Удаление сообщений с сервера..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Регистрация..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Проверка наличия новых сообщений..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "Неверно указано имя POP-ящика: %s"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4947,7 +5025,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Не удалось распознать ссылку mailto:\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -5024,11 +5102,11 @@ msgstr "удалить текущую учётную запись"
+
+ #: opcodes.h:35
+ msgid "toggle the current account active/inactive"
+-msgstr "включение/выключение предпочтения шифрования учётной записи"
++msgstr "сделать учётную запись активной/неактивной"
+
+ #: opcodes.h:36
+ msgid "toggle the current account prefer-encrypt flag"
+-msgstr ""
++msgstr "включение/выключение предпочтения шифрования учётной записи"
+
+ #: opcodes.h:37
+ msgid "move to the bottom of the page"
+@@ -6077,187 +6155,187 @@ msgstr "скрыть/показать боковой список"
+ msgid "show S/MIME options"
+ msgstr "вывести параметры S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "В этом меню недоступно"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Назад"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Вперед"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Вложения"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Следующий"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Последняя строка сообщения уже на экране"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Первая строка сообщения уже на экране"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Подсказка уже перед вами"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Нет больше цитируемого текста"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "За цитируемым текстом больше нет основного текста"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Ошибка в выражении: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Пустое выражение"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Команда запроса не определена"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Запускается программа автопросмотра: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Неверный день месяца: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Неверное название месяца: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Неверно указана относительная дата: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Нет непрочитанных сообщений."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Ошибка открытия почтового ящика"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Ошибка открытия почтового ящика"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Не удалось открыть /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "ошибка в образце: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "пропущен образец: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "пропущена скобка: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: неверный модификатор образца"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: в этом режиме не поддерживается"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "пропущен параметр"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "пустой образец"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "ошибка: неизвестная операция %d (сообщите об этой ошибке)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Образец поиска компилируется..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Исполняется команда для подходящих сообщений..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Ни одно сообщение не подходит под критерий"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Поиск..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Поиск дошел до конца, не найдя ничего подходящего"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Поиск дошел до начала, не найдя ничего подходящего"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Поиск прерван"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Команда TOP сервером не поддерживается"
+
+@@ -6265,7 +6343,7 @@ msgstr "Команда TOP сервером не поддерживается"
+ msgid "Can't write header to temporary file"
+ msgstr "Ошибка записи заголовка во временный файл"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Команда UIDL сервером не поддерживается"
+
+@@ -6281,7 +6359,7 @@ msgstr[2] "%d сообщений было потеряно. Требуется
+ msgid "POP host is not defined"
+ msgstr "POP-сервер не определен"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "Неверно указано имя POP-ящика: %s"
+@@ -6316,127 +6394,127 @@ msgstr[0] "%s [сообщений прочитано: %d из %d]"
+ msgstr[1] "%s [сообщений прочитано: %d из %d]"
+ msgstr[2] "%s [сообщений прочитано: %d из %d]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Получение списка сообщений..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Пометка сообщений как удаленные..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Ошибка записи сообщения во временный файл"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Аутентификация (метод SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "APOP: неверное значение времени"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Аутентификация (метод APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Ошибка APOP-аутентификации"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Команда USER сервером не поддерживается"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Ошибка SASL-аутентификации"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Неверный POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Невозможно оставить сообщения на сервере"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Ошибка при установлении соединения: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Закрытие соединения с POP-сервером..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Проверка номеров сообщений..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Соединение потеряно. Установить соединение повторно?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Отложенные сообщения"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Нет отложенных сообщений"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Неверный S/MIME-заголовок"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Неверный crypto-заголовок"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Расшифровка сообщения..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Новый запрос"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Создать псевдоним"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Ожидается ответ..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Запрос: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Запрос \"%s\""
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Команда запроса не определена"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Передать программе"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Напечатать"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Сохраняется..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6444,26 +6522,26 @@ msgstr[0] "Вложение сохранено"
+ msgstr[1] "Вложение сохранено"
+ msgstr[2] "Вложение сохранено"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ПРЕДУПРЕЖДЕНИЕ: вы собираетесь перезаписать %s. Продолжить?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Вложение обработано"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Пропустить через: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Передать программе: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Неизвестно как печатать %s вложения"
+@@ -6471,7 +6549,7 @@ msgstr "Неизвестно как печатать %s вложения"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6479,49 +6557,49 @@ msgstr[0] "Напечатать отмеченные вложения?"
+ msgstr[1] "Напечатать отмеченные вложения?"
+ msgstr[2] "Напечатать отмеченные вложения?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Напечатать вложение?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Изменение структуры расшифрованных вложений не поддерживается"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Не удалось расшифровать зашифрованное сообщение"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Вложения"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Дайджест не содержит ни одной части"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Удаление вложений не поддерживается POP-сервером"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Удаление вложений не поддерживается POP-сервером"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Удаление вложений из зашифрованных сообщений не поддерживается"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Удаление вложений из зашифрованных сообщений может аннулировать подпись"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Для составных вложений поддерживается только удаление"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Вы можете перенаправлять только части типа message/rfc822"
+
+@@ -6559,7 +6637,7 @@ msgstr "Не удалось создать %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Помеченные сообщения отсутствуют"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Списков рассылки не найдено"
+
+@@ -6574,67 +6652,67 @@ msgstr "Удалось раскодировать не все вложения.
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Вы можете перенаправлять только части типа message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Добавить"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Вставить"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Не удалось получить type2.list mixmaster"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Выбрать цепочку remailer"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Ошибка: %s не может быть использован как последний remailer"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Цепочки mixmaster имеют ограниченное количество элементов: %d"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Цепочка remailer уже пустая"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Вы уже пометили первый элемент цепочки"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Вы уже пометили последний элемент цепочки"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster не позволяет использовать заголовки Cc и Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Установите значение переменной hostname для использования mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Сообщение отправить не удалось, процесс-потомок вернул %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Ошибка отправки сообщения"
+
+@@ -6664,41 +6742,41 @@ msgstr "Переслать вложения?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Отвечать по %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Отвечать по %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Вставить сообщение в ответ?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Включается цитируемое сообщение..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Не удалось вставить все затребованные сообщения"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Переслать как вложение?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Подготовка пересылаемого сообщения..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc в ящик на IMAP-сервере не поддерживается в пакетном режиме"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Сохранить вложения в Fcc?"
+
+@@ -6706,195 +6784,195 @@ msgstr "Сохранить вложения в Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Ошибка сохранения в Fcc. (r)повторить, (m)другой ящик, (s)пропустить? "
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rms"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc ящик"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Не удалось отложить сообщение. Значение $postponed не определено."
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Продолжить отложенное сообщение?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Редактировать пересылаемое сообщение?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Отказаться от неизмененного сообщения?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Сообщение не изменилось, отказ"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Письмо не отправлено"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Сообщение отложено"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Нет темы сообщения, прервать отправку?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Тема сообщения не указана"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Тема сообщения не указана"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "изменить транспортную кодировку для вложения"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Сообщение отправляется..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Сообщение отправить не удалось"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Сообщение отправляется в фоновом режиме"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Сообщение отправлено"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Параметр boundary не найден (Сообщите об этой ошибке)"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s больше не существует"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s не является файлом"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Сообщение отправить не удалось."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Не удалось открыть %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "Для отправки почты должна быть установлена переменная $sendmail"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Сообщение отправить не удалось, процесс-потомок вернул %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Результат работы программы доставки почты"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Некорректный IDN %s при подготовке Resent-From"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Ошибка SMTP сессии: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Ошибка SMTP сессии: не удалось открыть %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Неверный SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Не удалось выполнить %s аутентификацию, пробуем следующий метод"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Ошибка GSSAPI-аутентификации"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP сервер не поддерживает аутентификацию"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Не указан адрес отправителя"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Ошибка SMTP сессии: ошибка чтения"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Ошибка SMTP сессии: ошибка записи"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Неверный ответ сервера"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Почтовый ящик сортируется..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Не удалось найти функцию сортировки (сообщите об этой ошибке)"
+
+@@ -6964,11 +7042,50 @@ msgstr ""
+ "распространять его при соблюдении определенных условий; для получения\n"
+ "более подробной информации введите \"neomutt -vv\".\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Параметры компиляции:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Параметры компиляции:"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Ошибка создания ключа autocrypt: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(c)создать новый или (s)выбрать существующий ключ GPG? "
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: (e)шифровать, (c)очистить, (a)автоматически? "
++
++#~ msgid "$send_multipart_alternative_filter is not set"
++#~ msgstr "Значение $send_multipart_alternative_filter не установлено"
++
++#~ msgid "Generate multipart/alternative content?"
++#~ msgstr "генерировать multipart/alternative содержимое?"
++
++#~ msgid "Missing mime type from output of \"%s\"!"
++#~ msgstr "Отсутствует MIME-тип в выводе \"%s\"!"
++
++#~ msgid "Missing blank line separator from output of \"%s\"!"
++#~ msgstr "Отсутствует пустая строка-разделитель в выводе \"%s\"!"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation"
++#~ msgstr "$send_multipart_alternative_filter не поддерживает генерацию типа multipart"
++
++#~ msgid "view multipart/alternative"
++#~ msgstr "просмотреть multipart/alternative"
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "просмотреть multipart/alternative как текст"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "просмотреть multipart/alternative с использованием базы mailcap"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "выбрать новый почтовый ящик"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "выбрать новый почтовый ящик в режиме только для чтения"
+diff --git a/po/sk.po b/po/sk.po
+index 46e588d04..b48bbc267 100644
+--- a/po/sk.po
++++ b/po/sk.po
+@@ -10,7 +10,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2016-11-23 21:20+0100\n"
+ "Last-Translator: František Hájik <ferko.hajik@gmail.com>\n"
+ "Language-Team: Slovak <sk@li.org>\n"
+@@ -20,16 +20,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr ""
++
++msgid "roas"
++msgstr ""
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr ""
++
++msgid "roa"
++msgstr ""
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr ""
++
++msgid "ros"
++msgstr ""
++
++msgid "(r)eject, accept (o)nce"
++msgstr ""
++
++msgid "ro"
++msgstr ""
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Koniec"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Zmaž"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Odmaž"
+
+@@ -37,18 +61,18 @@ msgstr "Odmaž"
+ msgid "Select"
+ msgstr "Označiť"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Pomoc"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Nemáte žiadne aliasy"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Aliasy"
+
+@@ -57,51 +81,51 @@ msgstr "Aliasy"
+ msgid "Alias as: "
+ msgstr "Alias ako: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Alias s týmto menom je už zadefinovaný"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Pozor: Tento názov aliasu nemusí fungovať. Opraviť?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adresa: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Zlý IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Vlastné meno: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Akceptovať?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Uložiť do súboru: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Chyba pri čítaní súboru aliasov"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "Chyba pri pridávaní aliasu"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Alias pridaný"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Chyba pri prehľadávaní súboru aliasov."
+
+@@ -110,7 +134,7 @@ msgstr "Chyba pri prehľadávaní súboru aliasov."
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr ""
+@@ -119,8 +143,8 @@ msgstr ""
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Nemožno vytvoriť súbor %s: %s"
+@@ -130,7 +154,7 @@ msgstr "Nemožno vytvoriť súbor %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -139,7 +163,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -148,7 +172,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -157,7 +181,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -169,7 +193,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "Šifrovanie"
+@@ -177,7 +201,7 @@ msgstr "Šifrovanie"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -185,7 +209,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -194,7 +218,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr ""
+@@ -206,12 +230,12 @@ msgstr ""
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Žiadna schránka.\n"
+@@ -223,14 +247,14 @@ msgstr "Žiadna schránka.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Vytvoriť %s?"
+@@ -238,7 +262,7 @@ msgstr "Vytvoriť %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ #, fuzzy
+ msgid "Delete"
+ msgstr "Zmazať"
+@@ -247,9 +271,9 @@ msgstr "Zmazať"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -257,17 +281,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -276,7 +300,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -284,7 +308,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -292,12 +316,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -305,13 +329,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Chyba pri čítaní adresára"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Naozaj zmazať mailbox \"%s\"?"
+@@ -329,7 +353,7 @@ msgstr "Naozaj zmazať mailbox \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Nemožno uzamknúť schránku!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "Chyba pri vytváraní gpgme kontextu: %s"
+@@ -402,279 +426,230 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Cache zo správami %s nie je adresár"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Zmena adresára"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Otvor"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maska"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Zoznam"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Odoberať"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Zrušiť odber."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "Zachytiť"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s nie je adresár"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Odoberať skupinu správ"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "Skupina správ na servri [%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Schránky [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, fuzzy, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Adresár [%s], maska súboru: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Adresár [%s], maska súboru: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Nemožno prilepiť adresár"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Maske nevyhovujú žiadne súbory"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Vytváranie je podporovaná len pre IMAP mailboxy."
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Premenovanie je podporovaná len pre IMAP mailboxy."
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Mazanie je podporovaná len pre IMAP mailboxy."
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "zobraz meno aktuálne označeného súboru"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Naozaj zmazať mailbox \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Schránka bola vymazaná"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Vymazanie schránky zlyhalo"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Schránka nebola vymazaná"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Zmeň adresár na: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Chyba pri čítaní adresára"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Maska súborov: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Spätné triedenie podľa (d)átumu, (z)nakov, (v)eľkosti, (p)opisu, p(o)čtu, no(v)ých, (n)etriediť?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Triedenie podľa (d)átumu, (z)nakov, (v)eľkosti, (p)opisu, p(o)čtu, no(v)ých, (n)etriediť?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dzvpovn"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nové meno súboru: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Nemožno prezerať adresár"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Chyba pri prezeraní súboru"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Odoberať podľa vzoru: "
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Neodoberať podľa vzoru: "
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Žiadne diskusné skupiny nezodpovedajú maske"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: terminál túto farbu nepodporuje"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: nenájdená farba"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: nenájdený objekt"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: príliš málo parametrov"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: vlastnosť nenájdená"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: príliš veľa argumentov"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "štandardné farby nepodporované"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: neplatné číslo správy.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Overiť podpis?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Nemožno vytvoriť dočasný súbor"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Nemožno vytvoriť filter zobrazenia."
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Nemožno správu skopírovať."
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME podpis úspešne overený"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME certifikát vlastníka nezodpovedá odosielateľovi"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Upozornenie: Časť z tejto správy nebola podpísaná"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME podpis NEMOL BYŤ overený"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP podpis úspešne overený"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP podpis NEMOL BYŤ overený"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Chyba behu \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Príkaz: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Upozornenie: Správa neobsahuje From: hlavičku."
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Presmerovať správu do: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Presmerovať označené správy do: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Chyba pri analýze adresy"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -682,7 +657,7 @@ msgstr[0] "Presmerovať správu do %s?"
+ msgstr[1] "Presmerovať správy do %s?"
+ msgstr[2] "Presmerovať správy do %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+@@ -690,7 +665,7 @@ msgstr[0] "Správa nebola presmerovaná"
+ msgstr[1] "Správy neboli presmerované"
+ msgstr[2] "Správy neboli presmerované"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+@@ -698,27 +673,27 @@ msgstr[0] "Správa bola presmerovaná"
+ msgstr[1] "Správy boli presmerované"
+ msgstr[2] "Správy boli presmerované"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Filtrovací proces sa nedá vytvoriť."
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Poslať rúrou do príkazu: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Nebol nájdený príkaz na tlač"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "Vytlačiť správu?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "Vytlačiť označené správy?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+@@ -726,7 +701,7 @@ msgstr[0] "Správa bola vytlačené."
+ msgstr[1] "Správy boli vytlačené."
+ msgstr[2] "Správy boli vytlačené."
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -735,153 +710,323 @@ msgstr[1] "Správy nemohli byť vytlačené."
+ msgstr[2] "Správy nemohli byť vytlačené."
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Spät.tried.(d)át/(f)-od/p(r)í/(s)-pred/k(o)mu/(t)-reť/(u)-ne/(z)-veľ/(c)-skóre/sPam/Label?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Tried. (d)át/(f)-od/p(r)í/(s)-pred/k(o)mu/(t)-reť/(u)-ne/(z)-veľ/(c)-skó/sPam/Lab?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Príkaz shell-u: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "Dekódovať-Uložiť do schránky"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Dekódovať-Uložiť označené do schránky"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dešifrovať-Uložiť do schránky"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dešifrovať-Uložiť označené do schránky"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "Uložiť do schránky"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "Uložiť označené do schránky"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "Dekódovať-Skopírovať do schránky"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Dekódovať-Skopírovať označené do schránky"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dešifrovať-Skopírovať do schránky"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dešifrovať-Skopírovať označené do schránky"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "Skopírovať do schránky"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "Skopírovať označené do schránky"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopírujem do %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Položka 'Content-Type' zmenená na %s.."
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Pred odoslaním konvertovať do %s?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Položka 'Content-Type' zmenená na %s.."
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Znaková sada zmenená na %s; neprevádzam"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Znaková sada zmenená na %s; prevádzam"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: príliš málo parametrov"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "príliš málo argumentov"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Chyba v %s, riadok %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Chyba v %s, riadok %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "zdroj: chyby v %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr ""
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "zdroj: chyby v %s"
++msgstr[1] "zdroj: chyby v %s"
++msgstr[2] "zdroj: chyby v %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "zástupca: žiadna adresa"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr ""
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "upraviť popis prílohy"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "upraviť popis prílohy"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "upraviť popis prílohy"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: príliš veľa argumentov"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr ""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "neplatná položka hlavičky"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: neznáma premenná"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s je nenastavené"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "zdroj: chyba na %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Správy nemohli byť vytlačené"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "označiť správy zodpovedajúce vzoru"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "odznačiť správy zodpovedajúce vzoru"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "Kopírujem do %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Kopírujem do %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Nebol uvedený predmet."
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "upraviť popis prílohy"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "Spájam sa s %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Spájam sa s %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Správa je bez príloh"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "Od: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "Komu: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Kopia: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Predmet: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Odpovedz: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Kopia do súboru: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Zabezpečenie: "
+
+@@ -892,79 +1037,79 @@ msgstr "Zabezpečenie: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Podpíš ako: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ #, fuzzy
+ msgid "Newsgroups: "
+ msgstr "Otvor newsgroup."
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Nasleduj"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "upraviť pole Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Poslať"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Prerušiť"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "Kopia"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Predm"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Pripoj súbor"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Popis"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Otvor newsgroup."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ #, fuzzy
+ msgid "No"
+ msgstr "Žiadne"
+@@ -973,7 +1118,7 @@ msgstr "Žiadne"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -981,14 +1126,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "áno"
+@@ -999,7 +1144,7 @@ msgstr "áno"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1007,51 +1152,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Nie je podorované."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Podpíš, zašifruj"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Zašifruj"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Podpíš"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Žiadne"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (inline PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (OppEnc mode)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<štd>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Zašifruj s: "
+
+@@ -1060,12 +1205,12 @@ msgstr "Zašifruj s: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "upraviť pole Reply-To"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1076,7 +1221,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] už neexistuje"
+@@ -1088,56 +1233,56 @@ msgstr "%s [#%d] už neexistuje"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] bolo zmenené. Aktualizovať kódovanie?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Prílohy"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Nemôžete zmazať jediné pridané dáta"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Chybné IDN v '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Pripojené dáta boli uložené"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Táto príloha nebude prevedená"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Príloha bola prefiltrovaná"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "Neodosielam túto správu"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+@@ -1145,182 +1290,302 @@ msgstr[0] "Vyvolávam správu..."
+ msgstr[1] "Vyvolávam správu..."
+ msgstr[2] "Vyvolávam správu..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Nemožno pripojiť %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Otvor schránku, z ktorej sa bude pridávať správa"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Otvor schránku, z ktorej sa bude pridávať správa"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Nemožno uzamknúť schránku!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "V tejto zložke nie sú správy"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Označte správy, ktoré chcete pridať"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Nemožno pripojiť"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Prekódovanie sa týka iba textových príloh"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Táto príloha nebude prevedená"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Táto príloha bude prevedená"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "Prázdny 'Content-Language'"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Neplatné kódovanie"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Uložiť kópiu tejto správy?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Poslať prílohu pod menom: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Premenovať na: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Nemožno zistiť status %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Nový súbor: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type je formy základ/pod"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Neznáme Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Nemožno vytvoriť súbor %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Nemožno vytvoriť pripojené dáta"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Vyvolať odloženú správu?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Zapísať správu do schránky"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Zapisujem správu do %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Správa bola zapísaná"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME je už vybrané. Vyčistiť & pokračovať?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP je už vybrané. Vyčistiť & pokračovať?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Nedá sa pripojiť bez append-hook-u alebo close-hook-u: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Nemožno uzamknúť schránku"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Dekomprimácia %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Nemožno určiť obsah komprimovaného súboru."
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, fuzzy, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Nemožno nájsť ops schránky pre typ schránky %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Komprimačný program zlyhal: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Komprimácia do %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Komprimácia-pridávacia do %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, fuzzy, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Chyba. Zachovávam dočasný súbor: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Neplatný mesiac: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Neplatný mesiac: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: neplatné číslo správy.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Neplatný deň v mesiaci: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Neplatný mesiac: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "V režime prikladania správ táto funkcia nie je dovolená"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: neplatné číslo správy.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: neplatné číslo správy.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Neplatný mesiac: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Neplatný deň v mesiaci: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr ""
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: neznáma premenná"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Neplatný mesiac: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Neplatný mesiac: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Užívateľské meno na %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Heslo pre %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Príkaz otázky nie je definovaný"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, fuzzy, c-format
+ msgid "Looking up %s..."
+@@ -1341,7 +1606,7 @@ msgstr "Spájam sa s %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Nemožno sa spojiť s %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "neznáma chyba"
+
+@@ -1355,23 +1620,23 @@ msgstr "Pripájam sa na %s"
+ msgid "Connection to %s has been aborted"
+ msgstr "Spájam sa s %s..."
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Neznámy SASL profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Chyba pri alokácii SASL spojenia"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1384,136 +1649,112 @@ msgstr ""
+ msgid "Connection to %s closed"
+ msgstr "Spojenie s %s zatvoreno"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr ""
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr ""
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr ""
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ #, fuzzy
+ msgid "Unknown"
+ msgstr "neznáma chyba"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, fuzzy, c-format
+ msgid "[unable to calculate]"
+ msgstr "%s: súbor nemožno pripojiť"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[neplatné dátum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr ""
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr ""
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr ""
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "nemožno určiť domáci adresár"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "nemožno určiť domáci adresár"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr ""
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr ""
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr ""
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr ""
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr ""
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr ""
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr ""
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "Odtlačok kľúča: "
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr ""
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr ""
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr ""
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++#, fuzzy
++msgid "SHA256 Fingerprint: "
++msgstr "Odtlačok kľúča: "
++
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Koniec "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr ""
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr ""
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Chyba v príkazovom riadku: %s\n"
+@@ -1521,15 +1762,15 @@ msgstr "Chyba v príkazovom riadku: %s\n"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr ""
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, fuzzy, c-format
+ msgid "SSL failed: %s"
+ msgstr "Prihlasovanie zlyhalo."
+@@ -1537,93 +1778,76 @@ msgstr "Prihlasovanie zlyhalo."
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "[-- Chyba: nemožno vytvoriť podproces OpenSSL! --]\n"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ #, fuzzy
+ msgid "Unable to get certificate from peer"
+ msgstr "nemožno určiť domáci adresár"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Chyba pri inicializácii terminálu."
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-#, fuzzy
+-msgid "roa"
+-msgstr "oac"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr ""
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "Pripájam sa na %s"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1642,7 +1866,7 @@ msgstr "Pripájam sa na %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1650,31 +1874,11 @@ msgstr[0] ""
+ msgstr[1] ""
+ msgstr[2] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Pre správu nebol nájdený dešifrovací program"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "áno"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nie"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Opustiť NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Stlačte kláves pre pokračovanie..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " ('?' pre zoznam): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1706,7 +1910,7 @@ msgstr ""
+ "~? táto pomoc\n"
+ ". samotná bodka na riadku ukončí vstup\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1738,20 +1942,20 @@ msgstr ""
+ "~? táto pomoc\n"
+ ". samotná bodka na riadku ukončí vstup\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: neplatné číslo správy.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Ukončite správu so samotnou bodkou na riadku)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Žiadna schránka.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Správa obsahuje:\n"
+
+@@ -1759,19 +1963,19 @@ msgstr "Správa obsahuje:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(pokračovať)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "chýbajúci názov súboru.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Správa neobsahuje žiadne riadky.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: neznámy príkaz editoru (~? pre nápovedu)\n"
+@@ -1820,19 +2024,73 @@ msgstr "Nemožno vytvoriť súbor %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "viaczložková správa nemá parameter ohraničenia (boundary)"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Vláknenie nie je povolené"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Nastaviť príznak"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Vymazať príznak"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: terminál túto farbu nepodporuje"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: nenájdená farba"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: nenájdený objekt"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: vlastnosť nenájdená"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "štandardné farby nepodporované"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: neplatné číslo správy.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "áno"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nie"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Opustiť NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Stlačte kláves pre pokračovanie..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " ('?' pre zoznam): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1853,23 +2111,23 @@ msgstr "[-- Autoprezeranie použitím %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Vyvolávam príkaz na automatické prezeranie: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Nemožno vytvoriť filter"
+
+-#: handler.c:595
++#: handler.c:594
+ #, fuzzy, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- na %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Chyba pri automatickom prezeraní (stderr) %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Chyba: message/external-body nemá vyplnený parameter access-type --]\n"
+
+@@ -1888,7 +2146,7 @@ msgstr "[-- Chyba: message/external-body nemá vyplnený parameter access-type -
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1920,7 +2178,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1935,7 +2193,7 @@ msgstr[2] "[-- Príloha %s/%s (veľkosť %s bytov) bola zmazaná --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1947,12 +2205,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Príloha %s/%s bola zmazaná --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, fuzzy, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- na %s --]\n"
+@@ -1960,7 +2218,7 @@ msgstr "[-- na %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1976,7 +2234,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1985,92 +2243,92 @@ msgstr ""
+ "[-- Príloha %s/%s nie je vložená v správe, --]\n"
+ "[-- a označený typ prístupu %s nie je podporovaný --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Chyba: Nemožno zobraziť žiadnu časť z Multipart/Alternative --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Príloha #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Príloha #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Nemožno otvoriť 'memory stream'"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Nemožno otvoriť dočasný súbor"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Nemožno znovu otvoriť 'memory stream'"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Chyba: multipart/signed nemá protokol"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Príloha %s/%s (použite '%s' na prezeranie tejto časti) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s nie je podporovaný (použite '%s' na prezeranie tejto časti) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Príloha %s/%s (potrebujem 'view-attachments' priradené na klávesu) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s nie je podporovaný (potrebujem 'view-attachments' priradené na klávesu) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Toto je príloha --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s nie je podporovaný --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "CHYBA: prosím oznámte túto chybu"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<NEZNÁMY>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Všeobecné väzby:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Neviazané funkcie:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Pomoc pre %s"
+@@ -2087,41 +2345,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr ""
+
+-#: hook.c:474
++#: hook.c:479
+ #, fuzzy, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "%s: neznáma hodnota"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr ""
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: také menu neexistuje"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: také menu neexistuje"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: také menu neexistuje"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, fuzzy, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Nemožno vytvoriť dočasný súbor!"
+@@ -2158,30 +2416,30 @@ msgstr ""
+ msgid "LOGIN disabled on this server"
+ msgstr ""
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Prihlasujem sa..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Prihlasovanie zlyhalo"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Vyberám %s..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, fuzzy, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Vyberám %s..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ #, fuzzy
+ msgid "SASL authentication failed"
+ msgstr "Prihlasovanie zlyhalo."
+@@ -2234,75 +2492,65 @@ msgstr "Prihlasovanie zlyhalo."
+ msgid "Mailbox renamed"
+ msgstr "Bola zistená slučka v makre"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Bola zistená slučka v makre."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Spájam sa s %s..."
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Tento IMAP server je starý. NeoMutt s ním nevie pracovať."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, fuzzy, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Zatváram spojenie s IMAP serverom..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr ""
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr ""
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ #, fuzzy
+ msgid "Encrypted connection unavailable"
+ msgstr "Zakódovaný kľúč sedenia"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, fuzzy, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Kopírujem do %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Spájam sa s %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "Kopírujem do %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Spájam sa s %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2310,17 +2558,17 @@ msgstr[0] "Presúvam prečítané správy do %s..."
+ msgstr[1] "Presúvam prečítané správy do %s..."
+ msgstr[2] "Presúvam prečítané správy do %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Vytvoriť %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ #, fuzzy
+ msgid "Expunge failed"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2329,7 +2577,7 @@ msgstr[1] "Čítam %d nových správ (%d bytov)..."
+ msgstr[2] "Čítam %d nových správ (%d bytov)..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2337,38 +2585,38 @@ msgstr[0] "Ukladám stavové príznaky správy... [%d/%d]"
+ msgstr[1] "Ukladám stavové príznaky správy... [%d/%d]"
+ msgstr[2] "Ukladám stavové príznaky správy... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Chyba pri analýze adresy!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Vymazávam správy zo serveru..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr ""
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Vyberám %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ #, fuzzy
+ msgid "Error opening mailbox"
+ msgstr "Chyba pri zapisovaní do schránky!"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Neplatný mesiac: %s"
+@@ -2379,7 +2627,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Nedostatok pamäte"
+
+@@ -2400,7 +2648,7 @@ msgstr "Sťahujem hlavičky správ..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Nemožno získať hlavičky z tejto verzie IMAP serveru"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Sťahujem hlavičky správ..."
+
+@@ -2414,154 +2662,154 @@ msgstr "Odsúvam správu ..."
+ msgid "Copying message %d to %s..."
+ msgstr "Zapisujem správu do %s ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Vyvolávam správu..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr ""
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ #, fuzzy
+ msgid "Continue?"
+ msgstr "(pokračovať)\n"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Koniec"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Uložiť"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Napíš"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Odpovedz"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Skupina"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "Odoslať"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "Nasleduj"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Nie je otvorená žiadna schránka"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Nie sú žiadne správy"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Žiadne viditeľné správy"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Schránka je iba na čítanie"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "V režime prikladania správ táto funkcia nie je dovolená"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Operácia je v rozpore s ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Nemožno prepnúť zápis na schránke určenej iba na čítanie"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Zmeny v zložke budú zapísané, keď ho opustíte"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Zmeny v zložke nebudú zapísané"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s nie je schránka"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Schránka bola zmenená zvonku. Príznaky môžu byť nesprávne."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "V tejto schránke je nová pošta"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Schránka bola zmenená zvonku"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Žiadne označené správy"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Nič na práci"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "Zadajte ID správy: "
+
+-#: index.c:1481
++#: index.c:1487
+ #, fuzzy
+ msgid "Article has no parent reference"
+ msgstr "Článokt nemá rodičovskú referenciu"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "Táto správa nie je viditeľná vo vybranom prehľade"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Sťahujem %s zo servera..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "Článok %s sa na serveri nenašiel"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "Správa bez ID. Nemožno vykonať operáciu."
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "Vo vlákne neboli nájdené žiadne zmazané spávy"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Skočiť na správu: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Parameter musí byť číslo správy"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Neplatné číslo správy"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Táto správa nie je viditeľná"
+
+@@ -2574,37 +2822,37 @@ msgstr "Táto správa nie je viditeľná"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "Správy nemožno zmazať"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Zmazať správy zodpovedajúce: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Žiadny limitovací vzor nie je aktívny"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Limit: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Limituj správy zodpovedajúce: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Ukončiť NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Označ správy zodpovedajúce: "
+
+@@ -2612,205 +2860,205 @@ msgstr "Označ správy zodpovedajúce: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Žiadne odmazané správy."
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Odmaž správy zodpovedajúce: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Odznač správy zodpovedajúce: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Odhlasujem sa z IMAP servera/ov"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Žiadny virtuálna zložka, ukončujem"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "Zlyhalo vytvorenie dotazu, prerušujem"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "Zlyhalo načítanie vlákna, ukončujem"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Žiadny štítok nebol zadaný, ukončujem"
+
+-#: index.c:2198
++#: index.c:2206
+ #, fuzzy
+ msgid "Update tags..."
+ msgstr "Štítky aktualizované..."
+
+-#: index.c:2238
++#: index.c:2246
+ #, fuzzy
+ msgid "Failed to modify tags, aborting"
+ msgstr "Zlyhala modifikácia štítkov, prerušujem"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "Bez dotazov, ukončujem"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Otvor schránku iba na čítanie."
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Otvor schránku."
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Žiadna schránka s novými správami."
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Otvor \"newsgroup\" iba na čítanie."
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Otvor newsgroup."
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Ukončiť NeoMutt bez uloženia?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "Nemožno porušiť vlákno."
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Vlákno je porušené."
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Vlákno nemožno porušiť, správa nie je súčasťou vlákna."
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Vlákna sa nedajú prepojiť."
+
+-#: index.c:2606
++#: index.c:2632
+ #, fuzzy
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Žiadne ID správy: hlavička je k dispozícii na nalinkovaniu s vláknom."
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "Prosím, najprv označte správu, ktorá tu bude pripojená."
+
+-#: index.c:2621
++#: index.c:2647
+ #, fuzzy
+ msgid "Threads linked"
+ msgstr "Vlákna prepojené."
+
+-#: index.c:2624
++#: index.c:2650
+ #, fuzzy
+ msgid "No thread linked"
+ msgstr "Žiadna pripojené vlákno."
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Ste na poslednej správe"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Žiadne odmazané správy"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Ste na prvej správe"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Vo výbere nie je žiadne nové správy"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Žiadne nové správy"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Vo výbere nie je žiadne neprečítané správy"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Žiadne neprečítané správy"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Vyhľadávanie pokračuje z vrchu"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Vyhľadávanie pokračuje zo spodu"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Nemožno označiť správu."
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Nemožno prepnúť na novú."
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Žiadne ďaľšie vlákna"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Ste na prvom vlákne"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Vlákno obsahuje nečítané správy"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Správu nemožno zmazať."
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Správu nemožno upravovať."
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2821,7 +3069,7 @@ msgstr[2] "Žiadne štítky neboli zmenené"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Žiadne štítky neboli zmenené"
+
+@@ -2829,7 +3077,7 @@ msgstr "Žiadne štítky neboli zmenené"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Nemožno označiť správy za prečítané."
+@@ -2837,14 +3085,14 @@ msgstr "Nemožno označiť správy za prečítané."
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Zadajte ID kľúča pre %s: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Správa bola odložená."
+@@ -2852,269 +3100,125 @@ msgstr "Správa bola odložená."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Správa bola presmerovaná"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "V tejto zložke nie sú správy"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "Žiadne odmazané správy."
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Chyba v príkazovom riadku: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Chyba v príkazovom riadku: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "nemožno určiť meno používateľa"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "príliš málo argumentov"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Chyba v %s, riadok %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Chyba v %s, riadok %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "zdroj: chyby v %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr ""
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "zdroj: chyby v %s"
+-msgstr[1] "zdroj: chyby v %s"
+-msgstr[2] "zdroj: chyby v %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "zástupca: žiadna adresa"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr ""
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "upraviť popis prílohy"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "upraviť popis prílohy"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "upraviť popis prílohy"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr ""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "neplatná položka hlavičky"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: neznáma premenná"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s je nenastavené"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "zdroj: chyba na %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Správy nemohli byť vytlačené"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "označiť správy zodpovedajúce vzoru"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "odznačiť správy zodpovedajúce vzoru"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Kopírujem do %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Nebol uvedený predmet."
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "upraviť popis prílohy"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Spájam sa s %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: neznámy príkaz"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Neplatný deň v mesiaci: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "V režime prikladania správ táto funkcia nie je dovolená"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Bola zistená slučka v makre"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Klávesa nie je viazaná"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Klávesa nie je viazaná. Stlačte '%s' pre nápovedu."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: prázdna postupnosť kláves"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, fuzzy, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "Pre správu nebol nájdený dešifrovací program."
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: prázdna postupnosť kláves"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ #, fuzzy
+ msgid "exec: no arguments"
+ msgstr "exec: príliš málo parametrov"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, fuzzy, c-format
+ msgid "%s: no such function"
+ msgstr "%s: v tabuľke neexistuje taká funkcia"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ #, fuzzy
+ msgid "Enter keys (^G to abort): "
+ msgstr "Zadajte ID kľúča pre %s: "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr ""
+@@ -3138,7 +3242,7 @@ msgstr "položka mailcap-u pre typ %s nenájdená"
+ msgid "Scanning %s..."
+ msgstr "Vyberám %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Čítam %s..."
+@@ -3153,13 +3257,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr ""
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Zapisujem %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3182,7 +3286,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3225,55 +3329,55 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Chyba pri inicializácii terminálu"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "nemožno určiť meno používateľa"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "nemožno určiť domáci adresár"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr ""
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Neboli uvedení žiadni príjemcovia"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Nemožno vytvoriť súbor %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: súbor nemožno pripojiť"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Žiadna schránka s novými správami"
+
+-#: main.c:1180
++#: main.c:1111
+ #, fuzzy
+ msgid "No incoming mailboxes defined"
+ msgstr "cykluj medzi schránkami s príchodzími správami"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Schránka je prázdna"
+
+@@ -3317,52 +3421,52 @@ msgstr "Nemožno znovu otvoriť schránku"
+ msgid "Can't write message"
+ msgstr "upraviť správu"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Skoč do: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Neplatné číslo indexu"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Žiadne položky"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Nemôžte rolovať ďalej dolu"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Nemôžte rolovať ďalej hore"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Ste na prvej stránke"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Ste na poslednej stránke"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Ste na poslednej položke"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Ste na prvej položke"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Hľadať: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Hľadať spätne: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Nenájdené"
+
+@@ -3406,20 +3510,20 @@ msgstr "Čakám na uzamknutie súboru... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Nemožno vytvoriť dočasný súbor"
+
+@@ -3438,7 +3542,7 @@ msgstr "Ladenie na úrovni %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Ladenie na úrovni %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Pripájam sa na %s"
+@@ -3462,17 +3566,17 @@ msgstr "Zachytený signál %d (%s) ... Končím.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Zachytený signál %d ... Končím.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3480,150 +3584,122 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ #, fuzzy
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Súbor je adresár, uložiť v ňom?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Súbor je adresár, uložiť v ňom?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Súbor v adresári: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Súbor existuje, (o)-prepísať, prid(a)ť alebo (c)-zrušiť?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ #, fuzzy
+ msgid "Can't save message to POP mailbox"
+ msgstr "Zapísať správu do schránky"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Pridať správy do %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Vymazávam správy zo serveru.."
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Užívateľské meno na %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Heslo pre %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Príkaz otázky nie je definovaný"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Nenašiel som šablónu názvu, pokračovať?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Zostavovacia položka mailcap-u vyžaduje %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Nemožno otvoriť súbor na analýzu hlavičiek"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Nemožno otvoriť súbor na odstránenie hlavičiek"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Zlyhalo premenovanie súboru"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Žiadna zostavovacia položka mailcap-u pre %s, vytváram prázdny súbor"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Vstupná položka mailcap-u vyžaduje %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Žiadna vstupná položka mailcap-u pre %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Žiadna položka mailcap-u nebola nájdená. Zobrazenie ako text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME typ nie je definovaný. Nemožno zobraziť pripojené dáta."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Príkaz: %-20.20s Popis: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Príkaz: %-20.20s Prílohy: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Prílohy: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Prílohy: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Chyba zápisu"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Neviem, ako vytlačiť dáta"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Hľadať"
+
+@@ -3632,21 +3708,21 @@ msgstr "Hľadať"
+ msgid "History '%s'"
+ msgstr "Otázka '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Neplatný deň v mesiaci: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Nemožno zistiť stav: %s.\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nová pošta v zložke "
+
+@@ -3670,20 +3746,20 @@ msgstr "Táto správa nie je viditeľná"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Táto správa nie je viditeľná"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Hľadanie bolo prerušené."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Nemožno pripojiť %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3695,13 +3771,13 @@ msgstr[2] "správa/y neboli zmazané"
+ msgid "Can't open trash folder"
+ msgstr "Nemožno otvoriť zložku Kôš."
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "Označiť všetky položky ako prečítané?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3709,7 +3785,7 @@ msgstr[0] "Presunúť prečítané správy do %s?"
+ msgstr[1] "Presunúť prečítané správy do %s?"
+ msgstr[2] "Presunúť prečítané správy do %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3717,50 +3793,50 @@ msgstr[0] "Odstrániť %d zmazané správy?"
+ msgstr[1] "Odstrániť %d zmazaných správ?"
+ msgstr[2] "Odstrániť %d zmazaných správ?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Presúvam prečítané správy do %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Schránka je bez zmeny"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d ostalo, %d presunutých, %d vymazaných"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d ostalo, %d vymazaných"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Stlačte '%s' na prepnutie zápisu"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Použite 'prepnúť-zápis' na povolenie zápisu"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Schránka je označená len na čítanie. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ #, fuzzy
+ msgid "Mailbox checkpointed"
+ msgstr "Bola zistená slučka v makre"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr "(aktuálny čas: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Nasleduje výstup %s %s --]\n"
+@@ -3769,69 +3845,69 @@ msgstr "[-- Nasleduje výstup %s %s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Šifrovacie heslo bolo zabudnuté"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "PGP sa v texte s prílohami nedá použiť. Použiť PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Správa nebola odoslaná: PGP sa v texte s prílohami nedá použiť"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "PGP sa v texte s prílohami nedá použiť. Použiť PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ #, fuzzy
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Správa nebola odoslaná: PGP sa v texte s prílohami nedá použiť"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Spúšťam PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Správa nemožno poslať vloženú do textu. Použiť PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Pošta nebola odoslaná"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr ""
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Pokúšam sa extrahovať PGP kľúče ...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Pokúšam sa extrahovať S/MIME certifikáty ..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+ "\n"
+ msgstr "[--Chyba: neznámy multipart/signet protokol %s --].\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+ msgstr "[--Chyba: Nekonzistentná multipart/signet štruktúra --].\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3840,7 +3916,7 @@ msgstr ""
+ "[-- Upozornenie: Nemôžeme overiť %s/%s podpisy. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3848,7 +3924,7 @@ msgstr ""
+ "[-- Nasledujúce udaje sú podpísané --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3856,7 +3932,7 @@ msgstr ""
+ "[-- Upozornenie: Nemôžem nájsť žiadne podpisy. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3875,231 +3951,231 @@ msgstr "Spúšťam S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Meno: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "alias: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Platný od: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Platný do: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Typ kľúča: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Použitie kľúča: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Odtlačok kľúča: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Sériové č.: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Vydal: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Podkľúč: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "Chyba pri zapínaní CMS protokolu: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "Chyba pri vytváraní gpgme dátového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "Chyba pri alokovaní dátového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "Chyba pri pretáčaní dátového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "Chyba pri čítaní dátového objektu: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "Chyba pri pridávaní príjemcu '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "Tajný kľúč '%s' nebol nájdený: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "Nejednoznačné vymedzenie tajného kľúča '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "Chyba pri nastavovaní tajného kľúča '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "Chyba pri nastavovaní PKA podpisovej poznámky: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "Chyba pri šifrovaní dát: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "Chyba pri podpisovaní dát: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as nie je nastavený a v ~/.gnupg/gpg.conf nie je určený východzí kľúč"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Upozornenie: Jeden z kľúčov bol zneplatnený\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Upozornenie: Kľúču použitému na vytvorenie podpisu vypršala platnosť: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Upozornenie: Platnosť aspoň jedného kľúča vypršala.\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Upozornenie: Podpis stratil platnosť: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Nemožno overiť, chýba kľúč alebo certifikát\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "Táto správa nie je viditeľná."
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ #, fuzzy
+ msgid "Available CRL is too old\n"
+ msgstr "Dostupný CLR je príliš starý.\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Požiadavky politiky bezpečnosti neboli splnené.\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Vyskytla sa systémová chyba."
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "UPOZIRNENIE: Položka PKA nesúhlasí s adresou podpísaného: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Adresa podpísaného overená PKA je: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "POZOR: Nemáme ŽIADNY dôkaz, že klúč patrí vyššie menovanej osobe.\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "POZOR: Kľúč NEPATRÍ vyššie menovanej osobe.\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "POZOR: NIE JE ISTÉ, či klúč patrí vyššie menovanej osobe.\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "ID-Kľúča "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "Vytvorený: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Chyba pri získavaní informácií o ID-Kľúči: %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Dobrý podpis od: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*ZLÝ* podpis od: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Problematický podpis od: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " expiruje: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Začiatok informácií o podpise --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Chyba: overovanie zlyhalo: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Začiatok zápisu (podpísané: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Koniec zápisu ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4107,7 +4183,7 @@ msgstr ""
+ "[-- Koniec podrobností o podpise --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4116,21 +4192,26 @@ msgstr ""
+ "[-- Chyba: dešifrovanie zlyhalo: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Chyba pri exporte kľúča: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Chyba: dešifrovanie/overovanie zlyhalo: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP správa bola úspešne dešifrovaná"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Chyba: kopírovanie dát zlyhalo.\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4138,11 +4219,11 @@ msgstr ""
+ "[-- ZAČIATOK SPRÁVY PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- ZAČIATOK BLOKU VEREJNÉHO KĽÚČA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4150,19 +4231,19 @@ msgstr ""
+ "[-- ZAČIATOK SPRÁVY PODPÍSANEJ S PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- KONIEC SPRÁVY PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- KONIEC BLOKU VEREJNÉHO KĽÚČA PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- KONIEC SPRÁVY PODPÍSANEJ S PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4170,11 +4251,11 @@ msgstr ""
+ "[-- Chyba: nemožno nájsť začiatok správy PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Chyba: nemožno vytvoriť dočasný súbor --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4182,7 +4263,7 @@ msgstr ""
+ "[-- Nasledujúce dáta sú šifrované pomocou PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4190,24 +4271,20 @@ msgstr ""
+ "[-- Nasledujúce dáta sú šifrované pomocou PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Koniec dát šifrovaných pomocou PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Koniec dát šifrovaných pomocou PGP/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP správa bola úspešne dešifrovaná"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Nemožno dešifrovať PGP správu."
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4215,7 +4292,7 @@ msgstr ""
+ "[-- Nasledujúce dáta sú podpísané pomocou S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4223,34 +4300,34 @@ msgstr ""
+ "[-- Nasledujúce dáta sú šifrované pomocou S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Koniec dát s podpisom S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Koniec dát šifrovaných pomocou S/MIME --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "Nedá sa zobraziť ID tohoto užívateľa (neznáme kódovanie)"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "Nedá sa zobraziť ID tohoto užívateľa (neplatné kódovanie)"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "Nedá sa zobraziť ID tohoto užívateľa (neplatné DN)"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Neplatný]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4259,94 +4336,94 @@ msgstr[1] "Typ kľúča ....: %s, %lu bit %s\n"
+ msgstr[2] "Typ kľúča ....: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "Šifrovanie"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "podpisovanie"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "overovanie"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Odvolaný]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Expirovaný]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Zakázaný]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Zbieram údaje ..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Chyba pri vyhľadávaní kľúča vydavateľa: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Chyba: overovací reťazec je príliš dlhý - končím tu\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID kľúča: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start zlyhalo: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next zlyhalo: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Všetky vyhovujúce kľúče sú buď expirované alebo zneplatnené"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Označiť "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Skontrolovať kľúč "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP a S/MIME kľúče sa zhodujú"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Kľúče PGP sa zhodujú"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Kľúče S/MIME sa zhodujú"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Kľúče sa zhodujú"
+
+@@ -4354,55 +4431,55 @@ msgstr "Kľúče sa zhodujú"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Tento kľúč nemôže byť použitý: je expirovaný/zakázaný/odvolaný"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID je expirovaný/zakázaný/odvolaný. Chcete naozaj použiť tento kľúč?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Toto ID nie je dôveryhodné. Chcete naozaj použiť tento kľúč?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Toto ID je dôveryhodné iba nepatrne. Chcete naozaj použiť tento kľúč?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID nemá definovanú dôverihodnosť. Chcete naozaj použiť tento kľúč?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Hľadám kľúče vyhovujúce \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Použiť ID kľúča = \"%s\" pre %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Zadajte ID kľúča pre %s: "
+@@ -4411,16 +4488,16 @@ msgstr "Zadajte ID kľúča pre %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Tajný kľúč '%s' nebol nájdený: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Prosím zadajte ID kľúča: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Chyba pri exporte kľúča: %s"
+@@ -4428,92 +4505,92 @@ msgstr "Chyba pri exporte kľúča: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP kľúč 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: OpenPGP protokol nie je k dispozícii."
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: CMS protokol nie je k dispozícii."
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME podpí(s)ať, (p)odpísať ako, p(g)p, (v)yčistiť, alebo vypnúť (o)ppenc mód?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "spgvo"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP podpí(s)ať, (p)odpísať ako, s/(m)ime, (v)yčistiť, alebo vypnúť (o)ppenc mód?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "spmvo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME šif(r)ovať, podpí(s)ať, (p)odpísať ako, o(b)e, p(g)p, (v)yčistiť, alebo vypnúť (o)ppenc mód?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "rspbgvo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP šif(r)ovať, podpí(s)ať, (p)odpísať ako, o(b)e, s/(m)ime, (v)yčistiť, alebo vypnúť (o)ppenc mód?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "rspbmvo"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME šif(r)ovať, podpí(s)ať, (p)odpísať ako, o(b)e, p(g)p, (v)yčistiť?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "rspbgv"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP šif(r)ovať, podpí(s)ať, (p)odpísať ako, o(b)e, s/(m)ime, alebo (v)yčistiť?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "rspbmv"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Nepodarilo sa overiť odosielateľa."
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Nepodarilo sa zistiť odosielateľa."
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Zadajte frázu hesla PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Chyba: nemožno vytvoriť podproces PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4524,16 +4601,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP správa bola úspešne dešifrovaná"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4541,133 +4618,133 @@ msgstr ""
+ "[-- Chyba: nemožno vytvoriť podproces PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Dešifrovanie zlyhalo"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Nemožno otvoriť podproces PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr ""
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "esabif"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "esabif"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabif"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabif"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabif"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(e)-šifr, (s)-podp, podp (a)ko, o(b)e, (i)nline, alebo (f)-zabudnúť na to?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabif"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ #, fuzzy
+ msgid "Fetching PGP key..."
+ msgstr "Vyvolávam správu..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr ""
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, fuzzy, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "Kľúče PGP zhodujúce sa "
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, fuzzy, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "Kľúče PGP zhodujúce sa "
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Nemožno otvoriť /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, fuzzy, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP kľúč 0x%s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Zadajte frázu hesla S/MIME:"
+
+@@ -4676,7 +4753,7 @@ msgstr "Zadajte frázu hesla S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ #, fuzzy
+ msgid "Expired "
+ msgstr "Koniec "
+@@ -4686,7 +4763,7 @@ msgstr "Koniec "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ #, fuzzy
+ msgid "Invalid "
+ msgstr "Neplatný mesiac: %s"
+@@ -4696,7 +4773,7 @@ msgstr "Neplatný mesiac: %s"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr ""
+
+@@ -4705,7 +4782,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr ""
+
+@@ -4714,7 +4791,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr ""
+
+@@ -4723,7 +4800,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr ""
+
+@@ -4732,63 +4809,63 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ #, fuzzy
+ msgid "Unknown "
+ msgstr "neznáma chyba"
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, fuzzy, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "Kľúče S/MIME zhodujúce sa "
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Toto ID nie je dôveryhodné. Chcete naozaj použiť tento kľúč?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Zadajte ID kľúča: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr ""
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ #, fuzzy
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Chyba: nemožno vytvoriť podproces OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "nemožno určiť domáci adresár"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ #, fuzzy
+ msgid "no certfile"
+ msgstr "Nemožno vytvoriť filter."
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "žiadna schránka"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr ""
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Nemožno otvoriť podproces OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ #, fuzzy
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+@@ -4797,26 +4874,26 @@ msgstr ""
+ "[-- Koniec výstupu OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ #, fuzzy
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Chyba: nemožno vytvoriť podproces OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ #, fuzzy
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- Nasledujúce dáta sú šifrované pomocou S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ #, fuzzy
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- Nasledujúce dáta sú podpísané s S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4825,7 +4902,7 @@ msgstr ""
+ "\n"
+ "[-- Koniec dát šifrovaných pomocou S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4835,172 +4912,172 @@ msgstr ""
+ "[-- Koniec dát s podpisom S/MIME --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(e)-šifr, (s)-podp, (w)-šifr s, podp (a)ko, o(b)e, alebo (f)-zabudnúť na to?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(e)-šifr, (s)-podp, (w)-šifr s, podp (a)ko, o(b)e, alebo (f)-zabudnúť na to?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "eswabf"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(e)-šifr, (s)-podp, (w)-šifr s, podp (a)ko, o(b)e, alebo (f)-zabudnúť na to?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "eswabf"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ #, fuzzy
+ msgid "No news server defined"
+ msgstr "Meno používateľa POP nie je definované."
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr ""
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Server uzavrel spojenie"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr ""
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Prihlasovanie zlyhalo"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Spájam sa s %s..."
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Vyvolávam správu..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ #, fuzzy
+ msgid "Checking for new messages..."
+ msgstr "Odsúvam správu ..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "Nemožno vytvoriť dočasný súbor!"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Spájam sa s %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Spájam sa s %s.."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Nemožno zistiť stav: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Vymazávam správy zo serveru..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Prihlasujem sa..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Odsúvam správu ..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr ""
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5012,7 +5089,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6166,190 +6243,190 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "zobraziť S/MIME možnosti "
+
+-#: pager.c:222
++#: pager.c:214
+ #, fuzzy
+ msgid "Not available in this menu"
+ msgstr "V tejto schránke je nová pošta"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "PredSt"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "ĎaľšSt"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Pozri prílohu"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Ďaľší"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Spodok správy je zobrazený"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Vrch správy je zobrazený"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Pomoc sa akurát zobrazuje"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Nie je ďaľší citovaný text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Žiadny ďaľší necitovaný text za citátom"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Chyba vo výraze: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "chyba vo výraze"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Príkaz otázky nie je definovaný"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Vyvolávam príkaz na automatické prezeranie: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Neplatný deň v mesiaci: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Neplatný mesiac: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, fuzzy, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Neplatný mesiac: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Žiadne neprečítané správy."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Chyba pri zapisovaní do schránky!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Chyba pri zapisovaní do schránky!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Nemožno otvoriť /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "chyba vo vzore na: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "chýbajúci parameter"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "nespárované zátvorky: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: neplatný príkaz"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: nepodporovaný v tomto móde"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "chýbajúci parameter"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "prázdny vzor"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "chyba: neznámy operand %d (oznámte túto chybu)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompilujem vyhľadávací vzor..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Vykonávam príkaz na nájdených správach..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Žiadne správy nesplnili kritérium"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "Ukladám..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Hľadanie narazilo na spodok bez nájdenia zhody"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Hľadanie narazilo na vrchol bez nájdenia zhody"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Hľadanie bolo prerušené"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ #, fuzzy
+ msgid "Command TOP is not supported by server"
+ msgstr "Označovanie nie je podporované"
+@@ -6359,7 +6436,7 @@ msgstr "Označovanie nie je podporované"
+ msgid "Can't write header to temporary file"
+ msgstr "Nemožno vytvoriť dočasný súbor"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ #, fuzzy
+ msgid "Command UIDL is not supported by server"
+ msgstr "Označovanie nie je podporované"
+@@ -6376,7 +6453,7 @@ msgstr[2] ""
+ msgid "POP host is not defined"
+ msgstr "Hostiteľ POP nie je definovaný"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr ""
+@@ -6412,138 +6489,138 @@ msgstr[0] "%s [prečítaných správ: %d]"
+ msgstr[1] "%s [prečítaných správ: %d]"
+ msgstr[2] "%s [prečítaných správ: %d]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ #, fuzzy
+ msgid "Fetching list of messages..."
+ msgstr "Vyvolávam správu..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "Čítam %d nových správ (%d bytov)..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ #, fuzzy
+ msgid "Can't write message to temporary file"
+ msgstr "Nemožno vytvoriť dočasný súbor"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr ""
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr ""
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr ""
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ #, fuzzy
+ msgid "Command USER is not supported by server"
+ msgstr "Označovanie nie je podporované"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Neplatný mesiac: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ #, fuzzy
+ msgid "Unable to leave messages on server"
+ msgstr "Vymazávam správy zo serveru.."
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, fuzzy, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Pripájam sa na %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ #, fuzzy
+ msgid "Closing connection to POP server..."
+ msgstr "Zatváram spojenie s IMAP serverom..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ #, fuzzy
+ msgid "Verifying message indexes..."
+ msgstr "Zapisujem správu do %s ..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ #, fuzzy
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Zatváram spojenie s IMAP serverom..."
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Odložené správy"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Žiadne odložené správy"
+
+-#: postpone.c:480
++#: postpone.c:526
+ #, fuzzy
+ msgid "Illegal S/MIME header"
+ msgstr "Neplatná hlavička S/MIME"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Neplatná hlavička PGP"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "Vyvolávam správu..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Nová otázka"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Urobiť alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Čakám na odpoveď..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Otázka: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Otázka '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Príkaz otázky nie je definovaný"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Presmerovať"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Tlačiť"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Ukladám..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6551,26 +6628,26 @@ msgstr[0] "Pripojené dáta boli uložené"
+ msgstr[1] "Pripojené dáta boli uložené"
+ msgstr[2] "Pripojené dáta boli uložené"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "VAROVANIE! Môžete prepísať %s, pokračovať?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Príloha bola prefiltrovaná"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrovať cez: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Presmerovať do: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Neviem ako tlačiť prílohy %s"
+@@ -6578,7 +6655,7 @@ msgstr "Neviem ako tlačiť prílohy %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6586,54 +6663,54 @@ msgstr[0] "Vytlačiť označené prílohy?"
+ msgstr[1] "Vytlačiť označené prílohy?"
+ msgstr[2] "Vytlačiť označené prílohy?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Vytlačiť prílohu?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ #, fuzzy
+ msgid "Can't decrypt encrypted message"
+ msgstr "použiť ďaľšiu funkciu na označené správy"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Prílohy"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ #, fuzzy
+ msgid "There are no subparts to show"
+ msgstr "Vlákno obsahuje nečítané správy."
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ #, fuzzy
+ msgid "Can't delete attachment from POP server"
+ msgstr "vybrať poštu z POP serveru"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "vybrať poštu z POP serveru"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ #, fuzzy
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Mazanie príloh z PGP správ nie je podporované"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Mazanie príloh z PGP správ nie je podporované"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "je podporované iba mazanie viaczložkových príloh"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Presmerovať môžete iba časti message/rfc822"
+
+@@ -6673,7 +6750,7 @@ msgstr "Nemožno vytvoriť %s"
+ msgid "Can't find any tagged messages"
+ msgstr "použiť ďaľšiu funkciu na označené správy"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Nenájdené žiadne poštové zoznamy"
+
+@@ -6688,70 +6765,70 @@ msgstr ""
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Presmerovať môžete iba časti message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ #, fuzzy
+ msgid "Append"
+ msgstr "Poslať"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr ""
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr ""
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr ""
+
+-#: remailer.c:612
++#: remailer.c:673
+ #, fuzzy
+ msgid "Select a remailer chain"
+ msgstr "zmazať všetky znaky v riadku"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr ""
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr ""
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr ""
+
+-#: remailer.c:739
++#: remailer.c:800
+ #, fuzzy
+ msgid "You already have the first chain element selected"
+ msgstr "Ste na prvej správe"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr ""
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr ""
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr ""
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, fuzzy, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Chyba pri posielaní správy, dcérsky proces vrátil %d (%s).\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Chyba pri posielaní správy"
+
+@@ -6782,44 +6859,44 @@ msgstr "zobraziť prílohy MIME"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Odpovedať na adresu %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, fuzzy, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Odpovedať na adresu %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Priložiť správu do odpovede?"
+
+-#: send.c:1128
++#: send.c:1127
+ #, fuzzy
+ msgid "Including quoted message..."
+ msgstr "Posielam správu..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Nemožno pripojiť všetky požadované správy"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Preposlať prílohu?"
+
+-#: send.c:1153
++#: send.c:1152
+ #, fuzzy
+ msgid "Preparing forwarded message..."
+ msgstr "Odsúvam správu ..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: nepodporovaný v tomto móde"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "prezri prílohu ako text"
+@@ -6828,197 +6905,197 @@ msgstr "prezri prílohu ako text"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Žiadna schránka.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Vyvolať odloženú správu?"
+
+-#: send.c:2228
++#: send.c:2239
+ #, fuzzy
+ msgid "Edit forwarded message?"
+ msgstr "Odsúvam správu ..."
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Zrušiť nezmenenú správu?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Nezmenená správa bola zrušená"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Pošta nebola odoslaná"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Správa bola odložená"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Žiadny predmet, zrušiť posielanie?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Nebol uvedený predmet"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Nebol uvedený predmet"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "upraviť kódovanie dát prílohy"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Posielam správu..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Nemožno poslať správu"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr ""
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Správa bola odoslaná"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Nenájdený parameter ohraničenia (boundary) [ohláste túto chybu]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s už viac neexistuje"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s nie je súbor"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Nemožno náisť žiaden mime.types súbor."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Nemožno otvoriť %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Chyba pri posielaní správy, dcérsky proces vrátil %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr ""
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr ""
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Neplatný mesiac: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Prihlasovanie zlyhalo."
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Triedim schránku..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Nemožno nájsť triediacu funkciu [oznámte túto chybu]"
+
+@@ -7070,11 +7147,11 @@ msgstr ""
+ "NeoMutt je voľný program, a ste vítaný šíriť ho\n"
+ "za určitých podmienok; napíšte 'neomutt -vv' pre detaily.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Nastavenia kompilácie:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Nastavenia kompilácie:"
+diff --git a/po/sv.po b/po/sv.po
+index b6c723a6f..fd0ee5941 100644
+--- a/po/sv.po
++++ b/po/sv.po
+@@ -9,7 +9,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2007-12-15 14:05+0100\n"
+ "Last-Translator: Johan Svedberg <johan@svedberg.com>\n"
+ "Language-Team: Swedish <sv@li.org>\n"
+@@ -19,16 +19,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(f)örkasta, (g)odkänn den här gången, godkänn (v)arje gång"
++
++#, fuzzy
++msgid "roas"
++msgstr "fgv"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(f)örkasta, (g)odkänn den här gången, godkänn (v)arje gång"
++
++msgid "roa"
++msgstr "fgv"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(f)örkasta, (g)odkänn den här gången"
++
++#, fuzzy
++msgid "ros"
++msgstr "fg"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(f)örkasta, (g)odkänn den här gången"
++
++msgid "ro"
++msgstr "fg"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Avsluta"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Ta bort"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Återställ"
+
+@@ -36,18 +64,18 @@ msgstr "Återställ"
+ msgid "Select"
+ msgstr "Välj"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Hjälp"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Du saknar alias"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Alias"
+
+@@ -56,53 +84,53 @@ msgstr "Alias"
+ msgid "Alias as: "
+ msgstr "Alias: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Du har redan definierat ett alias med det namnet"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Varning: Detta alias kommer kanske inte att fungera. Fixa det?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adress: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Felaktigt IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Namn: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Godkänn?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Spara till fil: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Fel vid försök att visa fil"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Fel vid försök att visa fil"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Lade till alias"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Fel vid försök att visa fil"
+@@ -112,7 +140,7 @@ msgstr "Fel vid försök att visa fil"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s finns inte. Skapa den?"
+@@ -121,8 +149,8 @@ msgstr "%s finns inte. Skapa den?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Kan inte skapa %s: %s"
+@@ -132,7 +160,7 @@ msgstr "Kan inte skapa %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -141,7 +169,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -150,7 +178,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -159,7 +187,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -171,7 +199,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "kryptering"
+@@ -179,7 +207,7 @@ msgstr "kryptering"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -187,7 +215,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -196,7 +224,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "Inga (giltiga) certifikat hittades för %s"
+@@ -208,12 +236,12 @@ msgstr "Inga (giltiga) certifikat hittades för %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Ingen brevlåda.\n"
+@@ -225,14 +253,14 @@ msgstr "Ingen brevlåda.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "Skapa %s?"
+@@ -240,7 +268,7 @@ msgstr "Skapa %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Radera"
+
+@@ -248,9 +276,9 @@ msgstr "Radera"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -258,17 +286,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -277,7 +305,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -285,7 +313,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -293,12 +321,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -306,13 +334,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Fel vid läsning av katalog"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Ta bort brevlådan \"%s\"?"
+@@ -330,7 +358,7 @@ msgstr "Ta bort brevlådan \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Kunde inte låsa brevlåda!"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "fel vid skapande av gpgme-kontext: %s"
+@@ -403,335 +431,286 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s är inte en katalog"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Ändra katalog"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Mask"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Prenumererar på %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Avslutar prenumeration på %s"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s är inte en katalog"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Prenumererar på %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Brevlådor [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Prenumererar på [%s], filmask: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Katalog [%s], filmask: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Kan inte bifoga en katalog"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Inga filer matchar filmasken"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Endast IMAP-brevlådor kan skapas"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Endast IMAP-brevlådor kan döpas om"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Endast IMAP-brevlådor kan tas bort"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "visa namnet på den valda filen"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Ta bort brevlådan \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Brevlådan har tagits bort"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "Brevlådan har tagits bort"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Brevlådan togs inte bort"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Ändra katalog till: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Fel vid läsning av katalog"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Filmask: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortera omvänt efter (d)atum, (a)lpha, (s)torlek eller i(n)te alls?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sortera efter (d)atum, (a)lpha, (s)torlek eller i(n)te alls?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Nytt filnamn: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Kan inte visa en katalog"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Fel vid försök att visa fil"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Prenumererar på %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Avslutar prenumeration på %s"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Inga filer matchar filmasken"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: färgen stöds inte av terminalen"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: färgen saknas"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: objektet finns inte"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: för få parametrar"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: attributet finns inte"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: för många parametrar"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "standardfärgerna stöds inte"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: ogiltigt meddelandenummer.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Verifiera signatur?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Kunde inte skapa tillfällig fil"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Kan inte skapa filter för visning"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Kunde inte kopiera meddelande"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME-signaturen verifierades framgångsrikt"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Ägarens S/MIME-certifikat matchar inte avsändarens"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Varning: En del av detta meddelande har inte blivit signerat"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME-signaturen kunde INTE verifieras"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP-signaturen verifierades framgångsrikt"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP-signaturen kunde INTE verifieras"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Fel uppstod vid körning av \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Kommando: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Återsänd meddelandet till: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Återsänd märkta meddelanden till: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Fel vid tolkning av adress"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "Återsänd meddelande till %s?"
+ msgstr[1] "Återsänd meddelanden till %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "Meddelande återsändes inte"
+ msgstr[1] "Meddelanden återsändes inte"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "Meddelande återsänt"
+ msgstr[1] "Meddelanden återsända"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Kan inte skapa filterprocess"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Öppna rör till kommando: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Inget utskriftskommando har definierats"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Skriv ut meddelande?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Skriv ut märkta meddelanden?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "Meddelande har skrivits ut"
+ msgstr[1] "Meddelanden har skrivits ut"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -739,165 +718,328 @@ msgstr[0] "Meddelandet kunde inte skrivas ut"
+ msgstr[1] "Meddelanden kunde inte skrivas ut"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Omvänt (d)atum/(f)rån/(m)ot./(ä)re./(t)ill/t(r)åd/(o)sor./(s)tor./(p)oäng/sp(a)m?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sortera (d)atum/(f)rån/(m)ot./(ä)re./(t)ill/t(r)åd/(o)sor./(s)tor./(p)oäng/sp(a)m?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "dfmätrospa"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Skalkommando: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Avkoda-spara till brevlåda"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Avkoda-spara märkt till brevlåda"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Dekryptera-spara till brevlåda"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Dekryptera-spara märkt till brevlåda"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Spara till brevlåda"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Spara märkt till brevlåda"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Avkoda-kopiera till brevlåda"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Avkoda-kopiera märkt till brevlåda"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Dekryptera-kopiera till brevlåda"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Dekryptera-kopiera märkt till brevlåda"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Kopiera till brevlåda"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Kopiera märkt till brevlåda"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Kopierar till %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "\"Content-Type\" ändrade till %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Konvertera till %s vid sändning?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "\"Content-Type\" ändrade till %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Teckenuppsättning ändrad till %s; konverterar inte"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Teckenuppsättning ändrad till %s; konverterar"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: för få parametrar"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: inget gruppnamn"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "slut på parametrar"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Fel i %s, rad %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Fel i %s, rad %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: fel i %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: läsningen avbruten pga för många fel i %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: fel i %s"
++msgstr[1] "source: fel i %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: ingen adress"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Varning: Felaktigt IDN \"%s\" i alias \"%s\""
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "bilagor: ingen disposition"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "redigera bilagebeskrivning"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "bilagor: ogiltig disposition"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: för många parametrar"
++
++#: command_parse.c:801
++#, fuzzy, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "Saknar -rx eller -addr"
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "Varning: Felaktigtt IDN \"%s\""
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "ogiltigt huvudfält"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: okänd variabel"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s är inte satt"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: fel vid %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Meddelanden kunde inte skrivas ut"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: inget matchande mönster"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: inget matchande mönster"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Prenumererar på %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Prenumererar på %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Inget ärende angivet."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "gamla bilagor: ingen disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "gamla bilagor: ogiltigt disposition"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Avslutar prenumeration på %s"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Avslutar prenumeration på %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Det finns inga bilagor"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "Svara"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -908,78 +1050,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Signera som: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Svara till %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "redigera Reply-To-fältet"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Skicka"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Avbryt"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Bifoga fil"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Beskriv"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Inget ärende angivet."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -987,7 +1129,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -995,14 +1137,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "ja"
+@@ -1013,7 +1155,7 @@ msgstr "ja"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1021,54 +1163,54 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "Märkning stöds inte."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Signera, Kryptera"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Kryptera"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Signera"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr " (infogat)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ #, fuzzy
+ msgid " (S/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<standard>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Kryptera med: "
+
+@@ -1077,12 +1219,12 @@ msgstr "Kryptera med: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "redigera Reply-To-fältet"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1093,7 +1235,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] existerar inte längre"
+@@ -1105,240 +1247,360 @@ msgstr "%s [#%d] existerar inte längre"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] modifierad. Uppdatera kodning?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Bilagor"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Du får inte ta bort den enda bilagan"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Felaktigt IDN i '%s': '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Bilaga sparad"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Den aktiva bilagan kommer inte att bli konverterad"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Bilaga filtrerad"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Fel vid sändning av meddelande"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Bifogar valda filer..."
+ msgstr[1] "Bifogar valda filer..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Kunde inte bifoga %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Öppna brevlåda att bifoga meddelande från"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Öppna brevlåda att bifoga meddelande från"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Kunde inte låsa brevlåda!"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Inga meddelanden i den foldern"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Märk de meddelanden du vill bifoga"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Kunde inte bifoga"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Omkodning påverkar bara textbilagor"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Den aktiva bilagan kommer inte att bli konverterad"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Den aktiva bilagan kommer att bli konverterad"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Ogiltig kodning"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Spara en kopia detta meddelande?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "visa bilaga som text"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Byt namn till: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Kan inte ta status på %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Ny fil: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "\"Content-Type\" har formen bas/undertyp"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Okänd \"Content-Type\" %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Kan inte skapa fil %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Vad vi har här är ett misslyckande att skapa en bilaga."
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Återkalla uppskjutet meddelande?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Skriv meddelande till brevlåda"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Skriver meddelande till %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Meddelande skrivet"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME redan valt. Rensa och fortsätt?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP redan valt. Rensa och fortsätt?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Kunde inte låsa brevlåda"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "\"Preconnect\"-kommandot misslyckades."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "Kopierar till %s..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Kopierar till %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Fel. Sparar tillfällig fil: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Ogiltigt relativt datum: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Ogiltigt relativt datum: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: ogiltigt meddelandenummer.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Ogiltig dag i månaden: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Ogiltig månad: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Funktionen ej tillåten i \"bifoga-meddelande\"-läge."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: ogiltigt meddelandenummer.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: ogiltigt meddelandenummer.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Ogiltigt relativt datum: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Ogiltig dag i månaden: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Fel: '%s' är ett dåligt IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: okänd variabel"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Ogiltigt relativt datum: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Ogiltigt relativt datum: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Användarnamn på %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Lösenord för %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Sökkommando ej definierat"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1359,7 +1621,7 @@ msgstr "Ansluter till %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Kunde inte ansluta till %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "okänt fel"
+
+@@ -1373,23 +1635,23 @@ msgstr "Fel uppstod vid förbindelsen till %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "Anslutning till %s stängd"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Okänd SASL-profil"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "fel vid allokering av SASL-anslutning"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Fel vid sättning av SASL:s säkerhetsinställningar"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Fel vid sättning av SASL:s externa säkerhetsstyrka"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Fel vid sättning av SASL:s externa användarnamn"
+
+@@ -1402,138 +1664,112 @@ msgstr "\"Preconnect\"-kommandot misslyckades"
+ msgid "Connection to %s closed"
+ msgstr "Anslutning till %s stängd"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Fyller slumptalscentral: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s har osäkra rättigheter"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL inaktiverat på grund av bristen på slumptal"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Okänd"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[kan inte beräkna]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[ogiltigt datum]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Servercertifikat är inte giltigt än"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Servercertifikat har utgått"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Misslyckades med att hitta tillräckligt med slumptal på ditt system"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "Kunde inte hämta certifikat från \"peer\""
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "Kunde inte hämta certifikat från \"peer\""
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "Ägarens S/MIME-certifikat matchar inte avsändarens."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Det här certifikatet tillhör:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Det här certifikatet utfärdades av:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Det här certifikatet är giltigt"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " från %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+-msgstr " till %s"
+-
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "SHA1 Fingeravtryck: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "SHA1 Fingeravtryck: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(f)örkasta, (g)odkänn den här gången, godkänn (v)arje gång"
++msgstr " till %s"
+
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(f)örkasta, (g)odkänn den här gången, godkänn (v)arje gång"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "SHA1 Fingeravtryck: %s"
+
+-#: conn/ssl.c:975
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(f)örkasta, (g)odkänn den här gången"
++msgid "SHA256 Fingerprint: "
++msgstr "SHA1 Fingeravtryck: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(f)örkasta, (g)odkänn den här gången"
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Avsluta "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Varning: kunde inte spara certifikat"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Certifikat sparat"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Certifikat sparat"
+@@ -1541,15 +1777,15 @@ msgstr "Certifikat sparat"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "I/O-fel"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL misslyckades: %s"
+@@ -1557,90 +1793,74 @@ msgstr "SSL misslyckades: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "Fel: kunde inte skapa OpenSSL-underprocess!"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Kunde inte hämta certifikat från \"peer\""
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Certifikatverifieringsfel (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Certifikat är inte X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Fel vid initiering av gnutls certifikatdata"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Fel vid bearbeting av certifikatdata"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "VARNING: Servercertifikat är inte giltigt än"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "VARNING: Servercertifikat har utgått"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "VARNING: Servercertifikat har återkallats"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "VARNING: Servervärdnamnet matchar inte certifikat"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "VARNING: Signerare av servercertifikat är inte en CA"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "fgv"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "fg"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Alla tillgängliga protokoll för TLS/SSL-anslutning inaktiverade"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "SSL/TLS-anslutning använder %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Fel: ingen TLS-socket öppen"
+
+@@ -1659,38 +1879,18 @@ msgstr "Tunnelfel vid förbindelsen till %s: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Tunnel till %s returnerade fel %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "ja"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "nej"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Avsluta NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Tryck på valfri tangent för att fortsätta..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (\"?\" för lista): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1713,7 +1913,7 @@ msgstr ""
+ "~M meddelanden samma som ~m, fast inkludera huvuden\n"
+ "~p skriv ut meddelandet\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1735,20 +1935,20 @@ msgstr ""
+ "~? det här meddelandet\n"
+ ". ensam på en rad avslutar inmatning\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: ogiltigt meddelandenummer.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Avsluta meddelande med en . på en egen rad)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Ingen brevlåda.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Meddelande innehåller:\n"
+
+@@ -1756,19 +1956,19 @@ msgstr "Meddelande innehåller:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(fortsätt)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "saknar filnamn.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Inga rader i meddelandet.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: okänt redigeringskommando (~? för hjälp)\n"
+@@ -1815,19 +2015,73 @@ msgstr "Kan inte lägga till folder: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "\"multipart\"-meddelande har ingen avgränsningsparameter"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Trådning ej aktiverat"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Sätt flagga"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Ta bort flagga"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: färgen stöds inte av terminalen"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: färgen saknas"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: objektet finns inte"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: attributet finns inte"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "standardfärgerna stöds inte"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: ogiltigt meddelandenummer.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "ja"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "nej"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Avsluta NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Tryck på valfri tangent för att fortsätta..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (\"?\" för lista): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1848,23 +2102,23 @@ msgstr "[-- Automatisk visning med %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Kommando för automatisk visning: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Kan inte skapa filter"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Kan inte köra %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Automatisk visning av standardfel gällande %s --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Fel: \"message/external-body\" har ingen åtkomsttypsparameter --]\n"
+
+@@ -1883,7 +2137,7 @@ msgstr "[-- Fel: \"message/external-body\" har ingen åtkomsttypsparameter --]\n
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1912,7 +2166,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1926,7 +2180,7 @@ msgstr[1] "[-- Den här %s/%s bilagan (storlek %s byte)har raderats --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1938,12 +2192,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Den här %s/%s bilagan har raderats --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- namn: %s --]\n"
+@@ -1951,7 +2205,7 @@ msgstr "[-- namn: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1967,7 +2221,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1976,96 +2230,96 @@ msgstr ""
+ "[-- Den här %s/%s bilagan är inte inkluderad, --]\n"
+ "[-- och den angivna åtkomsttypen %s stöds inte --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Fel : Kan inte visa någon del av \"Multipart/Alternative\" --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Bilaga #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Bilaga #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Varning: En del av detta meddelande har inte blivit signerat."
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Kunde inte öppna tillfällig fil"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Kunde inte öppna tillfällig fil"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "Kunde inte öppna tillfällig fil"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Fel: \"multipart/signed\" har inget protokoll"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Den här %s/%s bilagan (använd \"%s\" för att visa den här delen) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s stöds inte (använd \"%s\" för att visa den här delen) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Den här %s/%s bilagan (\"view-attachments\" måste knytas till tangent) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s stöds inte (\"view-attachments\" måste knytas till tangent) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Den här %s/%s bilagan --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s stöds inte --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "FEL: var vänlig rapportera den här buggen"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<OKÄND>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Allmänna knytningar:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Oknutna funktioner:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Hjälp för %s"
+@@ -2082,41 +2336,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "\"unhook\": Kan inte göra \"unhook *\" inifrån en \"hook\""
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "\"unhook\": okänd \"hook\"-typ: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "\"unhook\": Kan inte ta bort en %s inifrån en %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: ingen sådan meny"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: ingen sådan meny"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: ingen sådan meny"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Kunde inte skapa tillfällig fil %s"
+@@ -2154,30 +2408,30 @@ msgstr "GSSAPI-verifiering misslyckades"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN inaktiverat på den här servern"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Loggar in..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Inloggning misslyckades"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Verifierar (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER-autentisering misslyckades"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Verifierar (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL-autentisering misslyckades"
+
+@@ -2225,90 +2479,80 @@ msgstr "Kunde ej döpa om: %s"
+ msgid "Mailbox renamed"
+ msgstr "Brevlåda omdöpt"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Brevlåda stängd."
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Anslutning till %s stängd"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Den här IMAP-servern är uråldrig. NeoMutt fungerar inte med den."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Huvudsökning utan huvudnamn: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "SSL misslyckades: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Stänger anslutning till %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Säker anslutning med TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Kunde inte förhandla fram TLS-anslutning"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Krypterad anslutning otillgänglig"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Prenumererar på %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Avslutar prenumeration på %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Prenumererar på %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Avslutar prenumeration på %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "Kopierar %d meddelanden till %s..."
+ msgstr[1] "Kopierar %d meddelanden till %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Skapa %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Radering misslyckades"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2316,44 +2560,44 @@ msgstr[0] "Märker %d meddelanden som raderade..."
+ msgstr[1] "Märker %d meddelanden som raderade..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "Sparar ändrade meddelanden... [%d/%d]"
+ msgstr[1] "Sparar ändrade meddelanden... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Fel vid sparande av flaggor. Stäng ändå?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Fel vid sparande av flaggor"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Raderar meddelanden från server..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE misslyckades"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Väljer %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Fel vid öppning av brevlåda"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP-server stöder inte autentisering"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Ogiltig "
+@@ -2364,7 +2608,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Slut på minne"
+
+@@ -2384,7 +2628,7 @@ msgstr "Hämtar meddelandehuvuden..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Kunde inte hämta huvuden från den versionen av IMAP-servern"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Hämtar meddelandehuvuden..."
+
+@@ -2397,156 +2641,156 @@ msgstr "Laddar upp meddelande..."
+ msgid "Copying message %d to %s..."
+ msgstr "Kopierar meddelande %d till %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Hämtar meddelande..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Brevindexet är fel. Försök att öppna brevlådan igen."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Fortsätt?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Avsluta"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Spara"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Brev"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Svara"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Grupp"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Svara till %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Ingen brevlåda är öppen"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Inga meddelanden"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Inga synliga meddelanden"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Brevlådan är skrivskyddad"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Funktionen ej tillåten i \"bifoga-meddelande\"-läge"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, fuzzy, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "Kan inte %s: Operation tillåts inte av ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Kan inte växla till skrivläge på en skrivskyddad brevlåda"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Ändringarna i foldern skrivs när foldern lämnas"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Ändringarna i foldern kommer inte att skrivas"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s är inte en brevlåda"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Brevlådan har ändrats externt. Flaggor kan vara felaktiga."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Nya brev i den här brevlådan"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Brevlådan har ändrats externt"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Inga märkta meddelanden"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Ingenting att göra"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Ange nyckel-ID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Första meddelandet är inte synligt i den här begränsade vyn"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Raderar meddelanden från server..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "radera alla meddelanden i tråd"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Hoppa till meddelande: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Parametern måste vara ett meddelandenummer"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Ogiltigt meddelandenummer"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Det meddelandet är inte synligt"
+
+@@ -2559,38 +2803,38 @@ msgstr "Det meddelandet är inte synligt"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "återställ meddelande(n)"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Radera meddelanden som matchar: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Inget avgränsande mönster är aktivt"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Gräns: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Visa endast meddelanden som matchar: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "För att visa alla meddelanden, begränsa till \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Avsluta NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Märk meddelanden som matchar: "
+
+@@ -2598,213 +2842,213 @@ msgstr "Märk meddelanden som matchar: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "återställ meddelande(n)"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Återställ meddelanden som matchar: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Avmarkera meddelanden som matchar: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr ""
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Inget ämne, avbryter"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP-server stöder inte autentisering"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Inget ämne, avbryter"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Inget ämne, avbryter"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Öppna brevlåda i skrivskyddat läge"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Öppna brevlåda"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Inga brevlådor har nya brev."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Öppna brevlåda i skrivskyddat läge"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Avsluta NeoMutt utan att spara?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "länka trådar"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Tråd bruten"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ #, fuzzy
+ msgid "Can't link threads"
+ msgstr "länka trådar"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Inget Message-ID: huvud tillgängligt för att länka tråd"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Var vänlig att först markera ett meddelande som ska länkas här"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Trådar länkade"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Ingen tråd länkad"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Du är på det sista meddelandet"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Inga återställda meddelanden"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Du är på det första meddelandet"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Första meddelandet är inte synligt i den här begränsade vyn"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "Inga nya meddelanden"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Första meddelandet är inte synligt i den här begränsade vyn"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "Inga olästa meddelanden"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Sökning fortsatte från början"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Sökning fortsatte från slutet"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "flagga meddelande"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ #, fuzzy
+ msgid "Can't toggle new"
+ msgstr "växla ny"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Inga fler trådar"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Du är på den första tråden"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Tråden innehåller olästa meddelanden"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "återställ meddelande(n)"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "Kan inte skriva meddelande"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2814,7 +3058,7 @@ msgstr[1] "Brevlåda är oförändrad"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Brevlåda är oförändrad"
+@@ -2823,7 +3067,7 @@ msgstr "Brevlåda är oförändrad"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "markera meddelande(n) som lästa"
+@@ -2831,14 +3075,14 @@ msgstr "markera meddelande(n) som lästa"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "Ange nyckel-ID: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "Meddelande uppskjutet."
+@@ -2846,260 +3090,123 @@ msgstr "Meddelande uppskjutet."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "Meddelande återsänt"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Inga meddelanden i den foldern"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "återställ meddelande(n)"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Fel i kommandorad: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Fel i kommandorad: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "kunde inte avgöra användarnamn"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: inget gruppnamn"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "slut på parametrar"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Fel i %s, rad %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Fel i %s, rad %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: fel i %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: läsningen avbruten pga för många fel i %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: fel i %s"
+-msgstr[1] "source: fel i %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: ingen adress"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Varning: Felaktigt IDN \"%s\" i alias \"%s\""
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "bilagor: ingen disposition"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "redigera bilagebeskrivning"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "bilagor: ogiltig disposition"
+-
+-#: init.c:1160
+-#, fuzzy, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "Saknar -rx eller -addr"
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "Varning: Felaktigtt IDN \"%s\""
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "ogiltigt huvudfält"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: okänd variabel"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s är inte satt"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: fel vid %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Meddelanden kunde inte skrivas ut"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: inget matchande mönster"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: inget matchande mönster"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Prenumererar på %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Inget ärende angivet."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "gamla bilagor: ingen disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "gamla bilagor: ogiltigt disposition"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Avslutar prenumeration på %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: okänt kommando"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Ogiltig dag i månaden: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Funktionen ej tillåten i \"bifoga-meddelande\"-läge."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Oändlig slinga i macro upptäckt"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Tangenten är inte knuten"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tangenten är inte knuten. Tryck \"%s\" för hjälp."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: tom tangentsekvens"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: tom tangentsekvens"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: inga parametrar"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: ingen sådan funktion"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Ange nycklar (^G för att avbryta): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Tecken = %s, Oktal = %o, Decimal = %d"
+@@ -3123,7 +3230,7 @@ msgstr "\"mailcap\"-post för typ %s hittades inte"
+ msgid "Scanning %s..."
+ msgstr "Scannar %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Läser %s..."
+@@ -3139,13 +3246,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): kunde inte sätta tid på fil"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Skriver %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3168,7 +3275,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3211,54 +3318,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Fel vid initiering av terminalen"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "kunde inte avgöra användarnamn"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "kunde inte avgöra hemkatalog"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Fel: '%s' är ett dåligt IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Misslyckades att tolka mailto:-länk"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Inga mottagare angivna"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Kan inte öppna meddelandefil: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: kunde inte bifoga fil"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Ingen brevlåda med nya brev"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Inga inkommande brevlådor definierade"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Brevlådan är tom"
+
+@@ -3300,52 +3407,52 @@ msgstr "Kunde inte återöppna brevlåda"
+ msgid "Can't write message"
+ msgstr "Kan inte skriva meddelande"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Hoppa till: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Ogiltigt indexnummer"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Inga poster"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Du kan inte rulla längre ner"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Du kan inte rulla längre upp"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Du är på den första sidan"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Du är på den sista sidan"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Du är på den sista posten"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Du är på den första posten"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Sök efter: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Sök i omvänd ordning efter: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Hittades inte"
+
+@@ -3388,20 +3495,20 @@ msgstr "Väntar på \"flock\"-försök... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Felaktigt filformat för historik (rad %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Kan inte skapa tillfällig fil"
+
+@@ -3420,7 +3527,7 @@ msgstr "Avlusning på nivå %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Avlusning på nivå %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Fel vid anslutning till server: %s"
+@@ -3445,17 +3552,17 @@ msgstr "Fångade signal %d (%s) ... Avslutar.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Fångade signal %d ... Avslutar.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3463,148 +3570,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Filen är en katalog, spara i den? (j)a, (n)ej, (a)lla"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "jna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Filen är en katalog, spara i den?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Fil i katalog: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Filen finns, skriv (ö)ver, (l)ägg till, eller (a)vbryt?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "öla"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Kan inte spara meddelande till POP-brevlåda"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Lägg till meddelanden till %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Kunde inte lämna meddelanden på server"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Användarnamn på %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Lösenord för %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Sökkommando ej definierat"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Kan inte para ihop namnmall, fortsätt?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "\"compose\"-posten i mailcap kräver %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Misslyckades med att öpppna fil för att tolka huvuden"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Misslyckades med att öppna fil för att ta bort huvuden"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Misslyckades med att döpa om fil"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "Ingen \"compose\"-post i mailcap för %s, skapar tom fil"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "\"edit\"-posten i mailcap kräver %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "Ingen \"edit\"-post i mailcap för %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Ingen matchande mailcap-post hittades. Visar som text."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME-typ ej definierad. Kan inte visa bilaga."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Bilagor"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- Bilagor"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Fel vid skrivning"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Jag vet inte hur det där ska skrivas ut"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Sök"
+
+@@ -3613,21 +3692,21 @@ msgstr "Sök"
+ msgid "History '%s'"
+ msgstr "Sökning \"%s\""
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Ogiltig dag i månaden: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Kunde inte låsa %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Nytt brev i "
+
+@@ -3649,20 +3728,20 @@ msgstr "Första meddelandet är inte synligt i den här begränsade vyn"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Första meddelandet är inte synligt i den här begränsade vyn"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Sökning avbruten."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Kunde inte bifoga %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3674,69 +3753,69 @@ msgstr[1] "Markerar raderade meddelanden..."
+ msgid "Can't open trash folder"
+ msgstr "Kan inte lägga till folder: %s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Flytta lästa meddelanden till %s?"
+ msgstr[1] "Flytta lästa meddelanden till %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Rensa %d raderat meddelande?"
+ msgstr[1] "Rensa %d raderade meddelanden?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Flyttar lästa meddelanden till %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Brevlåda är oförändrad"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d behölls, %d flyttades, %d raderades"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d behölls, %d raderades"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Tryck \"%s\" för att växla skrivning"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Använd \"toggle-write\" för att återaktivera skrivning"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Brevlåda är märkt som ej skrivbar. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Brevlåda är synkroniserad"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (aktuell tid: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s utdata följer%s --]\n"
+@@ -3745,55 +3824,55 @@ msgstr "[-- %s utdata följer%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "Lösenfrasen glömd"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Meddelande kan inte skickas infogat. Återgå till att använda PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Meddelande kan inte skickas infogat. Återgå till att använda PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Startar PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Meddelande kan inte skickas infogat. Återgå till att använda PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Brevet skickades inte"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "S/MIME-meddelanden utan ledtrådar till innehållet stöds ej"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Försöker att extrahera PGP-nycklar...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Försöker att extrahera S/MIME-certifikat..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3802,7 +3881,7 @@ msgstr ""
+ "[-- Fel: Okänt \"multipart/signed\" protokoll %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3811,7 +3890,7 @@ msgstr ""
+ "[-- Fel: Inkonsekvent \"multipart/signed\" struktur --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3820,7 +3899,7 @@ msgstr ""
+ "[-- Varning: Vi kan inte verifiera %s/%s signaturer. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3828,7 +3907,7 @@ msgstr ""
+ "[-- Följande data är signerat --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3836,7 +3915,7 @@ msgstr ""
+ "[-- Varning: Kan inte hitta några signaturer. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3855,242 +3934,242 @@ msgstr "Startar S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Name: "
+ msgstr "Namn ......: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "Giltig From : %s\n"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "Giltig To ..: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Type: "
+ msgstr "Nyckel-användning .: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Key Usage: "
+ msgstr "Nyckel-användning .: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Fingeravtryck: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Serie-nr .: 0x%s\n"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Issued By: "
+ msgstr "Utfärdad av .: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "Undernyckel ....: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "fel vid aktivering av CMS-protokoll: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "fel vid skapande av gpgme dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "fel vid allokering av dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "fel vid tillbakaspolning av dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "fel vid läsning av dataobjekt: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "fel vid tilläggning av mottagare '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "hemlig nyckel '%s' hittades inte: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "otydlig specifikation av hemlig nyckel '%s'"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "fel vid sättning av hemlig nyckel '%s': %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "fel vid sättning av notation för PKA-signatur: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "fel vid kryptering av data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "fel vid signering av data: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Varning: En av nycklarna har blivit återkallad\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Varning: Nyckeln som användes för att skapa signaturen utgick vid: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Varning: Åtminstone en certifikatsnyckel har utgått\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Varning: Signaturen utgick vid: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Kan inte verifiera på grund av saknad nyckel eller certifikat\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL:en är inte tillgänglig\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Tillgänglig CRL är för gammal\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Ett policykrav blev inte uppfyllt\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Ett systemfel inträffade"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "VARNING: PKA-post matchar inte signerarens adress: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "PKA verifierade att signerarens adress är: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "VARNING: Vi har INGEN indikation hurvida nyckeln tillhör personen med namnet som visas ovanför\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "VARNING: Nyckeln TILLHÖR INTE personen med namnet som visas ovanför\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "VARNING: Det är INTE säkert att nyckeln tillhör personen med namnet som visas ovanför\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "Skapa %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Fel vid hämtning av nyckelinformation: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ #, fuzzy
+ msgid "Good signature from:"
+ msgstr "Bra signatur från: "
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ #, fuzzy
+ msgid "*BAD* signature from:"
+ msgstr "Bra signatur från: "
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ #, fuzzy
+ msgid "Problem signature from:"
+ msgstr "Bra signatur från: "
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ #, fuzzy
+ msgid " expires: "
+ msgstr " aka: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Signaturinformation börjar --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Fel: verifiering misslyckades: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Notation börjar (signatur av: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Notation slutar ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4098,7 +4177,7 @@ msgstr ""
+ "[-- Slut på signaturinformation --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4107,21 +4186,26 @@ msgstr ""
+ "[-- Fel: avkryptering misslyckades: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Fel vid hämtning av nyckelinformation: "
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Fel: avkryptering/verifiering misslyckades: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP-meddelande avkrypterades framgångsrikt"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Fel: datakopiering misslyckades\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4129,11 +4213,11 @@ msgstr ""
+ "[-- PGP-MEDDELANDE BÖRJAR --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- START PÅ BLOCK MED PUBLIK PGP-NYCKEL --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4141,19 +4225,19 @@ msgstr ""
+ "[-- START PÅ PGP-SIGNERAT MEDDELANDE --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP-MEDDELANDE SLUTAR --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- SLUT PÅ BLOCK MED PUBLIK PGP-NYCKEL --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- SLUT PÅ PGP-SIGNERAT MEDDELANDE --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4161,11 +4245,11 @@ msgstr ""
+ "[-- Fel: kunde inte hitta början av PGP-meddelande --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Fel: kunde inte skapa tillfällig fil --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4173,7 +4257,7 @@ msgstr ""
+ "[-- Följande data är PGP/MIME-signerad och krypterad --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4181,24 +4265,20 @@ msgstr ""
+ "[-- Följande data är PGP/MIME-krypterad --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Slut på PGP/MIME-signerad och krypterad data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Slut på PGP/MIME-krypterad data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP-meddelande avkrypterades framgångsrikt"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Kunde inte avkryptera PGP-meddelande"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4206,7 +4286,7 @@ msgstr ""
+ "[-- Följande data är S/MIME-signerad --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4214,34 +4294,34 @@ msgstr ""
+ "[-- Följande data är S/MIME-krypterad --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Slut på S/MIME-signerad data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Slut på S/MIME-krypterad data --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Kan inte visa det här användar-ID:t (okänd kodning)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Kan inte visa det här användar-ID:t (felaktig kodning)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Kan inte visa det här användar-ID:t (felaktig DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Ogiltig]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4249,95 +4329,95 @@ msgstr[0] "Nyckel-typ ..: %s, %lu bit %s\n"
+ msgstr[1] "Nyckel-typ ..: %s, %lu bit %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "kryptering"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "signering"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "certifikat"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Återkallad]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Utgången]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Inaktiverad]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Samlar data..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Fel vid sökning av utfärdarnyckel: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Fel: certifikatskedje för lång - stannar här\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Nyckel-ID: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start misslyckades: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next misslyckades: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Alla matchande nycklar är markerade utgångna/återkallade"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Välj "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Kontrollera nyckel "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP- och S/MIME-nycklar som matchar"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP-nycklar som matchar"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME-nycklar som matchar"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "nycklar som matchar"
+
+@@ -4345,59 +4425,59 @@ msgstr "nycklar som matchar"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Den här nyckeln kan inte användas: utgången/inaktiverad/återkallad"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID:t är utgånget/inaktiverat/återkallat. Vill du verkligen använda nyckeln?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID:t är inte giltigt. Vill du verkligen använda nyckeln?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID:t är endast marginellt giltigt. Vill du verkligen använda nyckeln?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID:t har odefinierad giltighet. Vill du verkligen använda nyckeln?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Söker efter nycklar som matchar \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Använd nyckel-ID = \"%s\" för %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Ange nyckel-ID för %s: "
+@@ -4406,16 +4486,16 @@ msgstr "Ange nyckel-ID för %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "hemlig nyckel '%s' hittades inte: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Var vänlig ange nyckel-ID: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Fel vid hämtning av nyckelinformation: "
+@@ -4423,102 +4503,102 @@ msgstr "Fel vid hämtning av nyckelinformation: "
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP-nyckel %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, (p)gp eller (r)ensa?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "ksobpr"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, s/(m)ime eller (r)ensa?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "ksobmr"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, (p)gp eller (r)ensa?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "ksobpr"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, s/(m)ime eller (r)ensa?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "ksobmr"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, (p)gp eller (r)ensa?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "ksobpr"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)ägge, s/(m)ime eller (r)ensa?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "ksobmr"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Misslyckades att verifiera sändare"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Misslyckades att ta reda på sändare"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Mata in PGP-lösenfras:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Fel: kunde inte skapa PGP-underprocess --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4529,16 +4609,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP-meddelande avkrypterades framgångsrikt"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4546,132 +4626,132 @@ msgstr ""
+ "[-- Fel: kunde inte skapa en PGP-underprocess --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Avkryptering misslyckades"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Kan inte öppna PGP-underprocess"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Kan inte starta PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)nfogat"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "ksobr"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "ksobr"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "ksobr"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "ksobr"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "ksobir"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (k)ryptera, (s)ignera, signera s(o)m, (b)åda %s, eller (r)ensa?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "ksobr"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Hämtar PGP-nyckel..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Alla matchande nycklar är utgångna, återkallade, eller inaktiverade"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP-nycklar som matchar <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP-nycklar som matchar \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Kan inte öppna /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP-nyckel %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Mata in S/MIME-lösenfras:"
+
+@@ -4680,7 +4760,7 @@ msgstr "Mata in S/MIME-lösenfras:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Utgången "
+
+@@ -4689,7 +4769,7 @@ msgstr "Utgången "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Ogiltig "
+
+@@ -4698,7 +4778,7 @@ msgstr "Ogiltig "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Återkallad "
+
+@@ -4707,7 +4787,7 @@ msgstr "Återkallad "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Betrodd "
+
+@@ -4716,7 +4796,7 @@ msgstr "Betrodd "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Overifierad"
+
+@@ -4725,7 +4805,7 @@ msgstr "Overifierad"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Verifierad "
+
+@@ -4734,60 +4814,60 @@ msgstr "Verifierad "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Okänd "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME-certifikat som matchar \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID:t är inte giltigt. Vill du verkligen använda nyckeln?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Ange nyckel-ID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Inga (giltiga) certifikat hittades för %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Fel: kunde inte skapa OpenSSL-underprocess"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Kunde inte hämta certifikat från \"peer\""
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "ingen certifikatfil"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "ingen mbox"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Ingen utdata från OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Kan inte signera: Inget nyckel angiven. Använd signera som."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Kan inte öppna OpenSSL-underprocess"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4795,23 +4875,23 @@ msgstr ""
+ "[-- Slut på utdata från OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Fel: kunde inte skapa OpenSSL-underprocess --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- Följande data är S/MIME-krypterad --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- Följande data är S/MIME-signerad --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4819,7 +4899,7 @@ msgstr ""
+ "\n"
+ "[-- Slut på S/MIME-krypterad data. --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4828,170 +4908,170 @@ msgstr ""
+ "[-- Slut på S/MIME-signerad data. --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, kryptera (m)ed, signera s(o)m, (b)åda, eller (r)ensa?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "ksmobr"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, kryptera (m)ed, signera s(o)m, (b)åda, eller (r)ensa?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "ksmobr"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (k)ryptera, (s)ignera, kryptera (m)ed, signera s(o)m, (b)åda, eller (r)ensa?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "ksmobr"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Välj algoritmfamilj: (1) DES, (2) RC2, (3) AES, eller r(e)nsa?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123e"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s är en ogilitig POP-sökväg"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Servern stängde förbindelsen"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP-server stöder inte autentisering"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Ingen verifieringsmetod tillgänglig"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL-verifiering misslyckades"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "Anslutning till %s stängd"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Hämtar lista över meddelanden..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Kollar efter nya meddelanden..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "kunde inte skriva tillfällig brevfolder: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "Ansluter till %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Ingenting att göra"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Kan inte ta status på %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Raderar meddelanden från server..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Loggar in..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Kollar efter nya meddelanden..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s är en ogilitig POP-sökväg"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5003,7 +5083,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Misslyckades att tolka mailto:-länk\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6150,187 +6230,187 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "visa S/MIME-flaggor"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Inte tillgänglig i den här menyn"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "Föreg. sida"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "Nästa sida"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Visa bilaga"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Nästa"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Slutet av meddelande visas"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Början av meddelande visas"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Hjälp visas just nu"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Ingen mer citerad text"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Ingen mer ociterad text efter citerad text"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Fel i uttryck: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Tomt uttryck"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Sökkommando ej definierat"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Kommando för automatisk visning: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Ogiltig dag i månaden: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Ogiltig månad: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Ogiltigt relativt datum: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Inga olästa meddelanden"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Fel vid öppning av brevlåda"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Fel vid öppning av brevlåda"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Kan inte öppna /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "fel i mönster vid: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "saknar parameter"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "missmatchande parentes: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: felaktig mönstermodifierare"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c: stöds inte i det här läget"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "saknar parameter"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "tomt mönster"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "fel: okänd operation %d (rapportera det här felet)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Kompilerar sökmönster..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Kör kommando på matchande meddelanden..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Inga meddelanden matchade kriteriet"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Söker..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Sökning nådde slutet utan att hitta träff"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Sökning nådde början utan att hitta träff"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Sökning avbruten"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Kommandot TOP stöds inte av servern"
+
+@@ -6338,7 +6418,7 @@ msgstr "Kommandot TOP stöds inte av servern"
+ msgid "Can't write header to temporary file"
+ msgstr "Kan inte skriva huvud till tillfällig fil"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Kommandot UIDL stöds inte av servern"
+
+@@ -6353,7 +6433,7 @@ msgstr[1] "Brevindexet är fel. Försök att öppna brevlådan igen."
+ msgid "POP host is not defined"
+ msgstr "POP-värd är inte definierad"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s är en ogilitig POP-sökväg"
+@@ -6386,153 +6466,153 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [%d av %d meddelanden lästa]"
+ msgstr[1] "%s [%d av %d meddelanden lästa]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Hämtar lista över meddelanden..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Markerar raderade meddelanden..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Kan inte skriva meddelande till tillfällig fil"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Verifierar (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP-tidsstämpel är felaktig"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Verifierar (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP-verifiering misslyckades"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Kommandot USER stöds inte av servern"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL-autentisering misslyckades"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Ogiltig SMTP-URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Kunde inte lämna meddelanden på server"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Fel vid anslutning till server: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Stänger anslutning till POP-server..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Verifierar meddelandeindex..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Anslutning tappad. Återanslut till POP-server?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Uppskjutna meddelanden"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Inga uppskjutna meddelanden"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Otillåtet S/MIME-huvud"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Otillåtet krypto-huvud"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Avkrypterar meddelande..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Ny sökning"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Skapa alias"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Väntar på svar..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Sökning: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Sökning \"%s\""
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Sökkommando ej definierat"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Rör"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Skriv ut"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Sparar..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Bilaga sparad"
+ msgstr[1] "Bilaga sparad"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "VARNING! Du är på väg att skriva över %s, fortsätt?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Bilaga filtrerad"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Filtrera genom: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Skicka genom rör till: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Jag vet inte hur %s bilagor ska skrivas ut"
+@@ -6540,57 +6620,57 @@ msgstr "Jag vet inte hur %s bilagor ska skrivas ut"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "Skriv ut märkta bilagor?"
+ msgstr[1] "Skriv ut märkta bilagor?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Skriv ut bilaga?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Kan inte avkryptera krypterat meddelande"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Bilagor"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Det finns inga underdelar att visa"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Kan inte radera bilaga från POP-server"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Kan inte radera bilaga från POP-server"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Radering av bilagor från krypterade meddelanden stöds ej"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Radering av bilagor från krypterade meddelanden stöds ej"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Endast radering av \"multipart\"-bilagor stöds"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Du kan bara återsända \"message/rfc822\"-delar"
+
+@@ -6627,7 +6707,7 @@ msgstr "Kan inte skapa %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Kan inte hitta några märkta meddelanden"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Inga sändlistor hittades"
+
+@@ -6642,67 +6722,67 @@ msgstr "Kan inte avkoda alla märkta bilagor. MIME-inkapsla de övriga?"
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Du kan bara återsända \"message/rfc822\"-delar"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Lägg till"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Infoga"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Kan inte hämta mixmasters type2.list"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Välj en återpostarkedja"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Fel: %s kan inte användas som den sista återpostaren i en kedja"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster-kedjor är begränsade till %d element"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Återpostarkedjan är redan tom"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Du har redan valt det första kedjeelementet"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Du har redan valt det sista kedjeelementet"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster accepterar inte Cc eller Bcc-huvuden"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Var vänlig och sätt \"hostname\"-variabeln till ett passande värde vid användande av mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Fel vid sändning av meddelande, barn returnerade %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Fel vid sändning av meddelande"
+
+@@ -6733,42 +6813,42 @@ msgstr "Vidarebefordra som bilagor?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Svara till %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Svara till %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Inkludera meddelande i svar?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Inkluderar citerat meddelande..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Kunde inte inkludera alla begärda meddelanden"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Vidarebefordra som bilaga?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Förbereder vidarebefordrat meddelande..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c: stöds inte i det här läget"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "visa bilaga som text"
+@@ -6777,196 +6857,196 @@ msgstr "visa bilaga som text"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Ingen brevlåda.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Återkalla uppskjutet meddelande?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Redigera vidarebefordrat meddelande?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Meddelandet har inte ändrats. Avbryt?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Meddelandet har inte ändrats. Avbröt"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Brevet skickades inte"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Meddelande uppskjutet"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Inget ärende, avbryt sändning?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Inget ärende angivet"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Inget ärende angivet"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "redigera transportkodning för bilagan"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Skickar meddelande..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Kunde inte skicka meddelandet"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Skickar i bakgrunden"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Brevet skickat"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Ingen begränsningsparameter hittad [Rapportera det här felet]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s existerar inte längre"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s är inte en normal fil"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Kunde inte skicka meddelandet."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Kunde inte öppna %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Fel vid sändning av meddelande, barn returnerade %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Utdata från sändprocessen"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Felaktigt IDN %s vid förberedning av \"resent-from\""
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP-session misslyckades: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP-session misslyckades: kunde inte öppna %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Ogiltig SMTP-URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL-autentisering misslyckades"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI-verifiering misslyckades"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-server stöder inte autentisering"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP-session misslyckades: läsfel"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP-session misslyckades: skrivfel"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Sorterar brevlåda..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Kunde inte hitta sorteringsfunktion [Rapportera det här felet]"
+
+@@ -7037,11 +7117,11 @@ msgstr ""
+ "NeoMutt är fri mjukvara, och du är välkommen att sprida det vidare\n"
+ "under vissa villkor; kör 'neomutt -vv' för detaljer.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Kompileringsval:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Kompileringsval:"
+diff --git a/po/tr.po b/po/tr.po
+index af8edfb95..da0de2173 100644
+--- a/po/tr.po
++++ b/po/tr.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2006-01-11 04:13+0200\n"
+ "Last-Translator: Recai Oktaş <roktas@debian.org>\n"
+ "Language-Team: Debian L10n Turkish <debian-l10n-turkish@lists.debian.org>\n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)eddet, (s)adece bu defa, (d)aima kabul et, (a)tla"
++
++msgid "roas"
++msgstr "rsda"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)eddet, (s)adece bu defa, (d)aima kabul et"
++
++msgid "roa"
++msgstr "rsd"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)eddet, (s)adece bu defalığına kabul et, (a)tla"
++
++msgid "ros"
++msgstr "rsa"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)eddet, (s)adece bu defalığına kabul et"
++
++msgid "ro"
++msgstr "rs"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Çık"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Sil"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Kurtar"
+
+@@ -38,18 +62,18 @@ msgstr "Kurtar"
+ msgid "Select"
+ msgstr "Seç"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Yardım"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Hiç bir lâkabınız yok"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Lâkaplar"
+
+@@ -58,53 +82,53 @@ msgstr "Lâkaplar"
+ msgid "Alias as: "
+ msgstr "Farklı lâkap oluştur: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Bu isimde bir lâkap zaten tanımlanmış"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Uyarı: Bu lâkap kullanılamayabilir. Düzeltinsin mi?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Adres:"
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Hatalı IDN: '%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Kişisel isim: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Kabul?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Dosyaya kaydet: "
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "Lâkap dosyasını görüntülenirken hata oluştu"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Lâkap dosyasını görüntülenirken hata oluştu"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Lâkap eklendi"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "Lâkap dosyasını görüntülenirken hata oluştu"
+@@ -114,7 +138,7 @@ msgstr "Lâkap dosyasını görüntülenirken hata oluştu"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s yok. Yaratılsın mı?"
+@@ -123,8 +147,8 @@ msgstr "%s yok. Yaratılsın mı?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "%s yaratılamadı: %s"
+@@ -134,7 +158,7 @@ msgstr "%s yaratılamadı: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -143,7 +167,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -152,7 +176,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -161,7 +185,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -173,7 +197,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "şifreleme"
+@@ -181,7 +205,7 @@ msgstr "şifreleme"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -189,7 +213,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -198,7 +222,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, fuzzy, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "%s için (geçerli) sertifika bulunamadı"
+@@ -210,12 +234,12 @@ msgstr "%s için (geçerli) sertifika bulunamadı"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "Eposta kutusu yok.\n"
+@@ -227,14 +251,14 @@ msgstr "Eposta kutusu yok.\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "%s yaratılsın mı?"
+@@ -242,7 +266,7 @@ msgstr "%s yaratılsın mı?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Sil"
+
+@@ -250,9 +274,9 @@ msgstr "Sil"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -260,17 +284,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -279,7 +303,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -287,7 +311,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -295,12 +319,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -308,13 +332,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "Dizin taranırken hata oluştu"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "\"%s\" eposta kutusu gerçekten silinsin mi?"
+@@ -332,7 +356,7 @@ msgstr "\"%s\" eposta kutusu gerçekten silinsin mi?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "%s eposta kutusu açılamaz"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "gpgme bağlamı oluşturulurken hata: %s"
+@@ -405,329 +429,280 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "Mesaj önbelleği bir dizin değil: %s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Dizine geç"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "Git"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Maske"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "Liste"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "Abone ol"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "Aboneliği iptal et"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s bir dizin değil"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Abone olunan haber grupları"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "[%s] sunucuda haber grupları"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "[%d] posta kutusu "
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Abone [%s], Dosya maskesi: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Dizin [%s], Dosya maskesi: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Bir dizin eklenemez"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Dosya maskesine uyan dosya yok"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Yaratma sadece IMAP eposta kutuları için destekleniyor"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Yeniden isimlendirme sadece IMAP eposta kutuları için destekleniyor"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Silme sadece IMAP eposta kutuları için destekleniyor"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "seçili dosyanın ismini göster"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "\"%s\" eposta kutusu gerçekten silinsin mi?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Eposta kutusu silindi"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Eposta kutusunu silme başarısız oldu"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Eposta kutusu silinmedi"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Dizine geç: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Dizin taranırken hata oluştu"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Dosya Maskesi: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Tersine sıralama seçeneği: (t)arih, (a)lfabetik, (b)oyut, tarı(m), (s)ayı, (y)eni, (h)iç?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Sıralama seçeneği: (t)arih, (a)lfabetik, (b)oyut, tarı(m), (s)ayı, (y)eni, (h)iç?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "tabmsyh"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Yeni dosya ismi: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Bir dizin görüntülenemez"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Dosya görüntülenirken hata oluştu"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "%s eposta kutusuna abone olunuyor..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "%s aboneliği iptal ediliyor..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "Tabire uyan haber grubu bulunamaz"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: renk uçbirim tarafından desteklenmiyor"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: böyle bir renk yok"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: böyle bir şey yok"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: eksik argüman"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: böyle bir nitelik yok"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: fazla argüman"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "varsayılan renkler desteklenmiyor"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d: geçersiz ileti numarası.\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Imzası doğrulansın mı?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Geçici dosya yaratılamadı"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Gösterim süzgeci oluşturulamadı"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "İleti kopyalanamadı"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME imzası başarıyla doğrulandı"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME sertifikasının sahibiyle gönderen uyuşmuyor"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Uyarı: Bu iletinin bir bölümü imzalanmamış"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME imzası doğrulanamadı"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP imzası başarıyla doğrulandı"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP imzası doğrulanamadı"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "\"%s\" çalıştırılırken bir hata oluştu"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Komut: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "İletinin geri gönderme adresi: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "İşaretli iletileri geri gönder:"
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Adres ayrıştırılırken hata"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "İletiyi %s adresine geri gönder"
+ msgstr[1] "İletilerin geri gönderme adresi: %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "İleti geri gönderilmedi"
+ msgstr[1] "İletiler geri gönderilmedi"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "İleti geri gönderildi"
+ msgstr[1] "İletiler geri gönderildi"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Süzgeç süreci yaratılamadı"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Borulanacak komut: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Yazdırma komutu tanımlanmadı"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "İleti yazdırılsın mı?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "İşaretlenen iletiler yazdırılsın mı?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "İleti yazdırıldı"
+ msgstr[1] "İletiler yazdırıldı"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -735,161 +710,325 @@ msgstr[0] "İleti yazdırılamadı"
+ msgstr[1] "İletiler yazdırılamadı"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Ters-sıra: (t)arih/(k)imden/(a)lıcı/k(o)nu/ki(m)e/(i)lmek/sırası(z)/(b)oyut/(p)uan/(s)pam/(e)tiket?:"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Sıra: (t)arih/(k)imden/(a)lıcı/k(o)nu/ki(m)e/(i)lmek/sırası(z)/(b)oyut/(p)uan/(s)pam/(e)tiket?:"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "tkaomizbpse"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Kabuk komutu: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Eposta kutusuna çözerek kaydedilecek"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Eposta kutusuna çözerek kaydedilecek işaretliler"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Eposta kutusuna şifre çözerek kaydedilecek"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Eposta kutusuna şifre çözerek kaydedilecek işaretliler"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Eposta kutusuna kaydedilecek"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Eposta kutusuna kaydedilecek işaretliler"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Eposta kutusuna çözerek kopyalanacak"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Eposta kutusuna çözerek kopyalanacak işaretliler"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Eposta kutusuna şifre çözerek kopyalanacak"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Eposta kutusuna şifre çözerek kopyalanacak işaretliler"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Eposta kutusuna kopyalanacak"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Eposta kutusuna kopyalanacak işaretliler"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "%s konumuna kopyalanıyor..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "İçerik-Tipi %s olarak değiştirildi"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Gönderilirken %s karakter kümesine dönüştürülsün mü?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "İçerik-Tipi %s olarak değiştirildi"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Karakter kümesi %s olarak değiştirildi; dönüştürme yapılmıyor"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Karakter kümesi %s olarak değiştirildi; dönüştürme yapılıyor"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: eksik argüman"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "eksik argüman"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "%s dosyasında hata var, satır %d: %s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "%s dosyasında hata var, satır %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: %s dosyasında hatalar var"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: %s dosyasındaki çok fazla sayıda hatadan dolayı okuma iptal edildi"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "kaynak: %d hata var, %s dosyasında"
++msgstr[1] "kaynak: %d hata var, %s dosyasında"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: adres yok"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Uyarı: '%2$s' adresindeki '%1$s' IDN'si hatalı"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "ekler: dispozisyon yok"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "ek açıklamasını düzenle"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "ekler: geçersiz dispozisyon"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: fazla argüman"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgrup: uyarı: IDN'si hatalı '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "geçersiz başlık alanı"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: bilinmeyen değişken"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s ayarlanmadan bırakıldı"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: hata konumu: %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "İletiler yazdırılamadı"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "spam: uyuşan bir tabir yok"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "nospam: uyuşan bir tabir yok"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "%s eposta kutusuna abone olmuş"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "%s eposta kutusuna abone olunuyor..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Konu girilmedi."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "ek olmayanlar: dispozisyon yok"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "ek olmayanlar: geçersiz dispozisyon"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "%s eposta kutusundan aboneliği iptal etmiş"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "%s aboneliği iptal ediliyor..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Posta eki yok"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -900,75 +1039,75 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Farklı imzala: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr ""
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Gönder"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "İptal"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Dosya ekle"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Açıklama"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "Haber grupları"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -976,7 +1115,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -984,14 +1123,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ #, fuzzy
+ msgid "Yes"
+ msgstr "evet"
+@@ -1002,7 +1141,7 @@ msgstr "evet"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1010,51 +1149,51 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Desteklenmiyor"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "İmzala, Şifrele"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "Şifrele"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "İmzala"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (satıriçi PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<varsayılan>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Şifreleme anahtarı: "
+
+@@ -1063,11 +1202,11 @@ msgstr "Şifreleme anahtarı: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr ""
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1078,7 +1217,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] artık mevcut değil"
+@@ -1090,239 +1229,359 @@ msgstr "%s [#%d] artık mevcut değil"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] değiştirildi. Kodlama yenilensin mi?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Ekler"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Tek kalmış bir eki silemezsiniz"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "'%s' hatalı IDN'e sahip: '%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Ek kaydedildi"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Mevcut ek dönüştürülmeyecek"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Ek, süzgeçten geçirildi"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "İleti gönderilirken hata oluştu"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "Seçili dosyalar ekleniyor..."
+ msgstr[1] "Seçili dosyalar ekleniyor..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "%s eklenemedi"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Eklenecek iletileri içeren eposta kutusunu seçin"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "Eklenecek iletileri içeren eposta kutusunu seçin"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "%s eposta kutusu açılamaz"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Bu klasörde ileti yok"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Eklemek istediğiniz iletileri işaretleyin"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Eklenemedi"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Tekrar kodlama sadece metin ekleri üzerinde etkilidir"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Mevcut ek dönüştürülmeyecek"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Mevcut ek dönüştürülecek"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Geçersiz kodlama"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Bu iletinin bir kopyası kaydedilsin mi?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "eki metin olarak göster"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Yeniden adlandır: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "%s incelenemiyor: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Yeni dosya: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "İçerik-Tipi temel/alt-tür biçiminde girilmeli"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Bilinmeyen İçerik-Tipi %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Dosya %s yaratılamadı"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Ek hazırlanırken bir hata oluştu"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Ertelenen ileti açılsın mı?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "İletiyi eposta kutusuna kaydet"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "İleti %s eposta kutusuna kaydediliyor..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "İleti kaydedildi"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME zaten seçili durumda. Önceki iptâl edilerek devam edilsin mi?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP zaten seçili durumda. Önceki iptâl edilerek devam edilsin mi?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Eposta kutusu kilitlenemedi"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Önceden bağlanma komutu (preconnect) başarısız oldu."
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "%s konumuna kopyalanıyor..."
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "%s konumuna kopyalanıyor..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Hata. Geçici dosya %s korunmaya alındı"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Geçersiz göreceli tarih: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Geçersiz göreceli tarih: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d: geçersiz ileti numarası.\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Geçersiz ay günü: %s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Geçersiz ay: %s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Bu işleve ileti ekle kipinde izin verilmiyor."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d: geçersiz ileti numarası.\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d: geçersiz ileti numarası.\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Geçersiz göreceli tarih: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Geçersiz ay günü: %s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Hata: '%s' hatalı bir IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: bilinmeyen değişken"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Geçersiz göreceli tarih: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Geçersiz göreceli tarih: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "%s makinesindeki kullanıcı adı: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s için parola: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Sorgulama komutu tanımlanmadı"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1343,7 +1602,7 @@ msgstr "%s sunucusuna bağlanılıyor..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "%s sunucusuna bağlanılamadı (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "bilinmeyen hata"
+
+@@ -1357,24 +1616,24 @@ msgstr "%s soketiyle konuşurken hata oluştu (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "%s soketine yapılan bağlantı kapatıldı"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "veri nesnesi için bellek ayrılırken hata: %s\n"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1387,134 +1646,110 @@ msgstr "Önceden bağlanma komutu (preconnect) başarısız oldu"
+ msgid "Connection to %s closed"
+ msgstr "%s soketine yapılan bağlantı kapatıldı"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Entropi havuzu dolduruluyor: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s güvenilir erişim haklarına sahip değil"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ #, fuzzy
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL, entropi seviyesinin yetersizliğinden dolayı etkisizleştirildi"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Bilinmiyor"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[hesaplanamıyor]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[geçersiz tarih]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Sunucu sertifikası henüz geçerli değil"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Sunucu sertifikasının süresi dolmuş"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Sistemde, rastgele süreçler için gerekli entropi yeterli seviyede değil"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "sertifika konusunu alınamadı"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "sertifika genel ismi alınamadı"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, fuzzy, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "S/MIME sertifikasının sahibiyle gönderen uyuşmuyor."
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Sertifikanın sahibi:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Sertifikayı düzenleyen:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Bu sertifika geçerli"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " %s tarihinden"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " %s tarihine dek"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
+-#, c-format
+-msgid "SHA1 Fingerprint: %s"
+-msgstr "SHA1 Parmak izi: %s"
+-
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
+-#, fuzzy
+-msgid "SHA256 Fingerprint: "
+-msgstr "SHA1 Parmak izi: %s"
+-
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "rsda"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)eddet, (s)adece bu defa, (d)aima kabul et, (a)tla"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)eddet, (s)adece bu defa, (d)aima kabul et, (a)tla"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)eddet, (s)adece bu defalığına kabul et, (a)tla"
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
++#, c-format
++msgid "SHA1 Fingerprint: %s"
++msgstr "SHA1 Parmak izi: %s"
+
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)eddet, (s)adece bu defalığına kabul et, (a)tla"
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
++#, fuzzy
++msgid "SHA256 Fingerprint: "
++msgstr "SHA1 Parmak izi: %s"
++
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Çık "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Uyarı: Sertifika kaydedilemedi"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Sertifika kaydedildi"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Sertifika sunucusunu denetleme başarısız oldu: %s"
+@@ -1522,15 +1757,15 @@ msgstr "Sertifika sunucusunu denetleme başarısız oldu: %s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "G/Ç hatası"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL başarısız oldu: %s"
+@@ -1538,90 +1773,74 @@ msgstr "SSL başarısız oldu: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "[-- Hata: OpenSSL alt süreci yaratılamadı! --]"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Karşı taraftan sertifika alınamadı"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Sertifika doğrulama hatası (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Sertifika X.509 değil"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Gnutls sertifika verisi ilklendirilirken hata oluştu"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Sertifika verisi işlenirken hata oluştu"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "UYARI: Sunucu sertifikası henüz geçerli değil"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "UYARI: Sunucu sertifikasının süresi dolmuş"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "UYARI: Sunucu sertifikası hükümsüz kılınmış"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "UYARI: Sunucu makine adı ile sertifika uyuşmuyor"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "UYARI: Sunucu sertifikasını imzalayan bir CA değil"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "rsd"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "rs"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "SSL/TLS bağlantısı için mevcut bütün protokoller etkisizleştirildi"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "%s (%s/%s/%s) kullanarak SSL/TLS bağlantısı kuruluyor"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Hata: açık TLS soketi yok"
+
+@@ -1640,38 +1859,18 @@ msgstr "%s ile konuşurken tünel hatası oluştu: %s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "%s tüneli %d hatası üretti (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+ msgstr[1] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "evet"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "hayır"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "NeoMutt'tan çıkılsın mı?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Devam etmek için bir tuşa basın..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (liste için '?'e basın): "
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1694,7 +1893,7 @@ msgstr ""
+ "~M iletiler ~m'ye benzer, ama başlıkları da içerir\n"
+ "~p iletiyi yazdır\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1716,20 +1915,20 @@ msgstr ""
+ "~? bu ileti\n"
+ ". tek '.' içeren bir satır girdiyi sonlandırır\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: geçersiz ileti numarası.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(İletiyi tek '.' içeren bir satırla sonlandır)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Eposta kutusu yok.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "İleti içeriği:\n"
+
+@@ -1737,19 +1936,19 @@ msgstr "İleti içeriği:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(devam et)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "dosya ismi eksik.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "İletide herhangi bir satır yok.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: bilinmeyen metin düzenleyici komutu (~? yardım görüntüler)\n"
+@@ -1796,19 +1995,73 @@ msgstr "%s dizinine eklenemiyor"
+ msgid "multipart message has no boundary parameter"
+ msgstr "çok parçalı (multipart) iletinin sınırlama (boundary) değişkeni yok"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "İlmek kullanımı etkin değil"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Bayrağı ayarla"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Bayrağı sil"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: renk uçbirim tarafından desteklenmiyor"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: böyle bir renk yok"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: böyle bir şey yok"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: böyle bir nitelik yok"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "varsayılan renkler desteklenmiyor"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d: geçersiz ileti numarası.\n"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "evet"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "hayır"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "NeoMutt'tan çıkılsın mı?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Devam etmek için bir tuşa basın..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (liste için '?'e basın): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1829,23 +2082,23 @@ msgstr "[-- %s ile görüntüleniyor --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Otomatik görüntüleme komutu çalıştırılıyor: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Süzgeç oluşturulamadı"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- %s çalıştırılamıyor --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- %s otomatik görüntüleme komutunun ürettiği hata --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Hata: \"message/external-body\" herhangi bir erişim tipi içermiyor --]\n"
+
+@@ -1864,7 +2117,7 @@ msgstr "[-- Hata: \"message/external-body\" herhangi bir erişim tipi içermiyor
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1893,7 +2146,7 @@ msgstr[1] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1907,7 +2160,7 @@ msgstr[1] "[-- Bu %s/%s eki(boyut %s bayt) silindi --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1919,12 +2172,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Bu %s/%s ekisilindi --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- isim: %s --]\n"
+@@ -1932,7 +2185,7 @@ msgstr "[-- isim: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1948,7 +2201,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1957,94 +2210,94 @@ msgstr ""
+ "[-- Bu %s/%s eki eklenmiyor --]\n"
+ "[-- ve belirtilen %s erişim tipi de desteklenmiyor --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Hata: \"Multipart/Alternative\"e ait hiç bir bölüm görüntülenemiyor --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Ek #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Ek #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ #, fuzzy
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Uyarı: Bu iletinin bir bölümü imzalanmamış."
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "Bellek akışı açılamadı"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Geçici dosya açılamadı"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "bellek akışını yeniden açma başarısız oldu"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Hata: \"multipart/signed\"e ait bir protokol yok"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Bu bir ek ('%s' ile bu bölümü görüntüleyebilirsiniz) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s desteklenmiyor ('%s' ile bu bölümü görüntüleyebilirsiniz) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Bu bir ek ('view-attachments' komutunun bir tuşa atanması gerekiyor) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s desteklenmiyor ('view-attachments' komutunun bir tuşa atanması gerekiyor) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Bu bir ek --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s desteklenmiyor --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "HATA: bu hatayı lütfen bildirin"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<BİLİNMİYOR>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Genel tuş atamaları:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Herhangi bir tuş atanmamış işlevler:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s için yardım"
+@@ -2061,41 +2314,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Bir kanca (hook) içindeyken unhook * komutu kullanılamaz"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: bilinmeyen kanca (hook) tipi: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: %s bir %s içindeyken silinemez"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s: böyle bir menü yok"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s: böyle bir menü yok"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s: böyle bir menü yok"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Geçici dosya %s yaratılamadı!"
+@@ -2133,30 +2386,30 @@ msgstr "GSSAPI doğrulaması başarısız oldu"
+ msgid "LOGIN disabled on this server"
+ msgstr "Bu sunucuda LOGIN kapalı"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Giriş yapılıyor..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Giriş başarısız oldu"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Doğrulanıyor (SASL)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER doğrulaması başarısız oldu"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Doğrulanıyor (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL doğrulaması başarısız oldu"
+
+@@ -2203,89 +2456,79 @@ msgstr "Yeniden isimlendirme başarısız: %s"
+ msgid "Mailbox renamed"
+ msgstr "Eposta kutusu yeniden isimlendirildi"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "%s@%s eposta kutusu kapatıldı"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "%s soketine yapılan bağlantı kapatıldı"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Bu IMAP sunucusu çok eski. NeoMutt bu sunucuyla çalışmaz."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "%s başlık ismi verilmeden başlık araması"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE başarısız oldu: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "%s bağlantısı kapatılıyor..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "TLS ile güvenli bağlanılsın mı?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "TLS bağlantısı kurulamadı"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Şifrelenmiş bağlantı mevcut değil"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "%s eposta kutusuna abone olunuyor..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "%s eposta kutusundan aboneliği iptal ediliyor..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "%s eposta kutusuna abone olmuş"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "%s eposta kutusundan aboneliği iptal etmiş"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "%d ileti %s eposta kutusuna kopyalanıyor..."
+ msgstr[1] "%d ileti %s eposta kutusuna kopyalanıyor..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "%s yaratılsın mı?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Silme işlemi başarısız oldu"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2293,44 +2536,44 @@ msgstr[0] "%d ileti silinmek için işaretlendi..."
+ msgstr[1] "%d ileti silinmek için işaretlendi..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "İleti durum bayrakları kaydediliyor... [%d/%d]"
+ msgstr[1] "İleti durum bayrakları kaydediliyor... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "Adres ayrıştırılırken hata!"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "İletileri sunucudan sil..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: EXPUNGE başarısız oldu"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "%s seçiliyor..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Eposta kutusu açılırken hata oluştu!"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "Geçersiz IMAP eposta bayrakları"
+
+@@ -2340,7 +2583,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Bellek tükendi"
+
+@@ -2360,7 +2603,7 @@ msgstr "İleti başlıkları alınıyor..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "Bu IMAP sunucu sürümünden başlıklar alınamıyor"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "İleti başlıkları alınıyor..."
+
+@@ -2373,156 +2616,156 @@ msgstr "İleti yükleniyor..."
+ msgid "Copying message %d to %s..."
+ msgstr "%d ileti %s eposta kutusuna kopyalanıyor..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "İleti alınıyor..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "İleti indeksi hatalı. Eposta kutusu yeniden açılıyor."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Devam edilsin mi?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Çık"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Kaydet"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Gönder"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Cevapla"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Gruba"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Cevap adresi olarak %s%s kullanılsın mı? [Mail-Followup-To]"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Hiç bir eposta kutusu açık değil"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "İleti yok"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Görüntülenebilir bir ileti yok"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Eposta kutusu salt okunur"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Bu işleve ileti ekle kipinde izin verilmiyor"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Salt-okunur bir eposta kutusu yazılabilir yapılamaz"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Klasördeki değişiklikler çıkışta kaydedilecek"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Klasördeki değişiklikler kaydedilmeyecek"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s bir eposta kutusu değil"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Eposta kutusu değiştirildi. Bazı eposta bayrakları hatalı olabilir."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Bu kutuda yeni eposta var!"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Eposta kutusu değiştirildi"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "İşaretlenmiş ileti yok"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Yapılacak bir işlem yok"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Message-Id'yi girin: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Sınırlandırılmış görünümde ana ileti görünemez"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Sunucudan %s aliniyor..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "İlmekteki silindiği iletiler bulunamadı"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "İletiye geç: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Argüman bir ileti numarası olmak zorunda"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Geçersiz ileti numarası"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Bu ileti görünmez"
+
+@@ -2535,38 +2778,38 @@ msgstr "Bu ileti görünmez"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "İleti silinemedi"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Tabire uyan iletileri sil: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Herhangi bir sınırlandırma tabiri etkin değil"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Sınır: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Sadece tabire uyan iletiler: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "İletilerin hepsini görmek için \"all\" tabirini kullanın"
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "NeoMutt'tan çıkılsın mı?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Tabire uyan iletileri işaretle: "
+
+@@ -2574,206 +2817,206 @@ msgstr "Tabire uyan iletileri işaretle: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "İleti kurtarılamadı"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Tabire uyan iletileri kurtar: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Tabire uyan iletilerdeki işareti sil: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr ""
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Sanal dizin bulunamadı, iptal ediliyor"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Konu girilmedi, iptal ediliyor"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Konu girilmedi, iptal ediliyor"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Eposta kutusunu salt okunur aç"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Eposta kutusunu aç"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "Yeni eposta içeren bir eposta kutusu yok."
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Haber grubunu salt okunur aç"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "Haber grubunu aç"
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "NeoMutt'tan kaydedilmeden çıkılsın mı?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Süzgeç oluşturulamadı"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Kopuk ilmek"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "İlmeğe bağlamakta kullanılabilecek bir \"Message-ID:\" başlığı yok"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Öncelikle lütfen buraya bağlanacak bir ileti işaretleyin"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Bağlanan ilmekler"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Herhangi bir ilmeğe bağlanmadı"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Son iletidesiniz"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Kurtarılan ileti yok"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "İlk iletidesiniz"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "Sınırlandırılmış görünümde ana ileti görünemez"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Yeni ileti yok"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "Sınırlandırılmış görünümde ana ileti görünemez"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Okunmamış ileti yok"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Arama başa döndü"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Arama sona ulaştı"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "iletiyi göster"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Daha başka ilmek yok"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "İlk ilmektesiniz"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "İlmek okunmamış iletiler içeriyor"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "İleti silinemedi"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "İleti düzenleyemedi"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2783,7 +3026,7 @@ msgstr[1] "Eposta kutusunda değişiklik yok"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "Eposta kutusunda değişiklik yok"
+@@ -2792,7 +3035,7 @@ msgstr "Eposta kutusunda değişiklik yok"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "ilmeği başlatan ana iletiye geç"
+@@ -2800,14 +3043,14 @@ msgstr "ilmeği başlatan ana iletiye geç"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "%s için anahtar NO'yu girin: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "İleti ertelendi."
+@@ -2815,260 +3058,122 @@ msgstr "İleti ertelendi."
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "İleti geri gönderildi"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "Bu klasörde ileti yok"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "İleti kurtarılamadı"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Komut satırında hata: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Komut satırında hata: %s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "kullanıcı adı belirlenemedi"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "eksik argüman"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "%s dosyasında hata var, satır %d: %s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "%s dosyasında hata var, satır %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: %s dosyasında hatalar var"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: %s dosyasındaki çok fazla sayıda hatadan dolayı okuma iptal edildi"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "kaynak: %d hata var, %s dosyasında"
+-msgstr[1] "kaynak: %d hata var, %s dosyasında"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: adres yok"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Uyarı: '%2$s' adresindeki '%1$s' IDN'si hatalı"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "ekler: dispozisyon yok"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "ek açıklamasını düzenle"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "ekler: geçersiz dispozisyon"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgrup: uyarı: IDN'si hatalı '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "geçersiz başlık alanı"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: bilinmeyen değişken"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s ayarlanmadan bırakıldı"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: hata konumu: %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "İletiler yazdırılamadı"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "spam: uyuşan bir tabir yok"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "nospam: uyuşan bir tabir yok"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "%s eposta kutusuna abone olunuyor..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Konu girilmedi."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "ek olmayanlar: dispozisyon yok"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "ek olmayanlar: geçersiz dispozisyon"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "%s aboneliği iptal ediliyor..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: bilinmeyen komut"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Geçersiz ay günü: %s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Bu işleve ileti ekle kipinde izin verilmiyor."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Makro döngüsü tespit edildi"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Tuş ayarlanmamış"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Tuş ayarlanmamış. Lütfen '%s' tuşuyla yardım isteyin."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: boş tuş dizisi"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: boş tuş dizisi"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: argüman verilmemiş"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s: böyle bir işlev yok"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Tuşları girin (iptal için ^G): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Karakter = %s, Sekizlik = %o, Onluk = %d"
+@@ -3092,7 +3197,7 @@ msgstr "%s için mailcap kaydı bulunamadı"
+ msgid "Scanning %s..."
+ msgstr "%s seçiliyor..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "%s okunuyor..."
+@@ -3108,13 +3213,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "maildir_commit_message(): dosya tarihi ayarlanamıyor"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "%s yazılıyor..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3137,7 +3242,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3180,54 +3285,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Uçbirim ilklendirilirken hata oluştu"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "kullanıcı adı belirlenemedi"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "ev dizini belirlenemedi"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Hata: '%s' hatalı bir IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Herhangi bir alıcı belirtilmemiş"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "İleti dosyası %s açılamıyor"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: dosya eklenemiyor"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Yeni eposta içeren bir eposta kutusu yok"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Gelen iletileri alacak eposta kutuları tanımlanmamış"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Eposta kutusu boş"
+
+@@ -3269,52 +3374,52 @@ msgstr "Eposta kutusu yeniden açılamadı"
+ msgid "Can't write message"
+ msgstr "İleti yazılamadı"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Geç: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Geçersiz indeks numarası"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Öge yok"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Daha aşağıya inemezsiniz"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Daha yukarı çıkamazsınız"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "İlk sayfadasınız"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Son sayfadasınız"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Son ögedesiniz"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "İlk ögedesiniz"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Ara: "
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Ters ara: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Bulunamadı"
+
+@@ -3357,20 +3462,20 @@ msgstr "\"flock\" kilidi için bekleniyor... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Geçici dosya oluşturulamıyor"
+
+@@ -3389,7 +3494,7 @@ msgstr "Hata ayıklama bilgileri için %d seviyesi kullanılıyor.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Hata ayıklama bilgileri için %d seviyesi kullanılıyor.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Sunucuya bağlanırken hata oluştu: %s"
+@@ -3413,17 +3518,17 @@ msgstr "Sinyal %d (%s) alındı... Çıkılıyor.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Sinyal %d alındı... Çıkılıyor.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3431,148 +3536,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Dosya bir dizin; bu dizinin altına kaydedilsin mi? (e)vet, (h)ayır, (t)ümü"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "eht"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Dosya bir dizin; bu dizin altına kaydedilsin mi?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Dosyayı dizin altına kaydet: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Dosya zaten var, ü(s)tüne yaz, (e)kle, i(p)tal?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "sep"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "İleti POP eposta kutusuna kaydedilemiyor"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "İletiler %s sonuna eklensin mi?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "POP sunucusundaki iletiler düzenlenemez"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "%s makinesindeki kullanıcı adı: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s için parola: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Sorgulama komutu tanımlanmadı"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "İsim şablonuna uymuyor, devam edilsin mi?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap düzenleme birimi %%s gerektiriyor"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Başlıkları taramaya yönelik dosya açma girişimi başarısız oldu"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Başlıkları ayırmaya yönelik dosya açma girişimi başarısız oldu"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Dosya ismi değiştirilemedi"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "%s için mailcap yazma birimi yok, boş dosya yaratılıyor"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap düzenleme birimi %%s gerektiriyor"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "%s için mailcap düzenleme birimi yok"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Uygun mailcap kaydı bulunamadı. Metin olarak gösteriliyor."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME tipi belirlenmemiş. Ek gösterilemiyor."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Komut: %-20.20s Tanım: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Komut: %-30.30s Ek: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- Ek: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Ek: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Yazma hatası"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Bu ekin nasıl yazdırılacağı bilinmiyor"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Ara"
+
+@@ -3581,21 +3658,21 @@ msgstr "Ara"
+ msgid "History '%s'"
+ msgstr "Geçmiş '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Geçersiz ay günü: %s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "%s kilitlenemedi\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Yeni posta: "
+
+@@ -3617,20 +3694,20 @@ msgstr "Sınırlandırılmış görünümde ana ileti görünemez"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Sınırlandırılmış görünümde ana ileti görünemez"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Arama iptal edildi."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "%s eklenemedi"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3642,69 +3719,69 @@ msgstr[1] "%d ileti silinmek için işaretlendi..."
+ msgid "Can't open trash folder"
+ msgstr "%s dizinine eklenemiyor"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "Okunan iletiler %s eposta kutusuna taşınsın mı?"
+ msgstr[1] "Okunan iletiler %s eposta kutusuna taşınsın mı?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "Silmek için işaretlenmiş %d ileti silinsin mi?"
+ msgstr[1] "Silmek için işaretlenmiş %d ileti silinsin mi?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Okunan iletiler %s eposta kutusuna taşınıyor..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Eposta kutusunda değişiklik yok"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d kaldı, %d taşındı, %d silindi"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d kaldı, %d silindi"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " Yazılabilir yapmak için '%s' tuşuna basınız"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "'toggle-write' komutunu kullanarak tekrar yazılabilir yapabilirsiniz"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Eposta kutusu yazılamaz yapıldı. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Eposta kutusu denetlendi"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (şu anki tarih: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s çıktısı%s --]\n"
+@@ -3713,55 +3790,55 @@ msgstr "[-- %s çıktısı%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "PGP parolası/parolaları unutuldu"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ #, fuzzy
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "İleti satıriçi olarak gönderilemiyor. PGP/MIME kullanımına geri dönülsün mü?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ #, fuzzy
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "İleti satıriçi olarak gönderilemiyor. PGP/MIME kullanımına geri dönülsün mü?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "PGP çağırılıyor..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "İleti satıriçi olarak gönderilemiyor. PGP/MIME kullanımına geri dönülsün mü?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Eposta gönderilmedi"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "İçeriği hakkında hiçbir bilginin bulunmadığı S/MIME iletilerinin gönderilmesi desteklenmiyor"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "PGP anahtarları belirlenmeye çalışılıyor...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "S/MIME sertifikaları belirlenmeye çalışılıyor..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3770,7 +3847,7 @@ msgstr ""
+ "[-- Hata: Bilinmeyen \"multipart/signed\" protokolü %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3779,7 +3856,7 @@ msgstr ""
+ "[-- Hata: Tutarsız \"multipart/signed\" yapısı --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3788,7 +3865,7 @@ msgstr ""
+ "[-- Uyarı: %s/%s imzaları doğrulanamıyor. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3796,7 +3873,7 @@ msgstr ""
+ "[-- Aşağıdaki bilgi imzalanmıştır --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3804,7 +3881,7 @@ msgstr ""
+ "[-- Uyarı: Herhangi bir imza bulunamıyor. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3824,236 +3901,236 @@ msgstr "S/MIME çağırılıyor..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Ad: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Geçerlilik Başlangıcı: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Geçerlilik Sonu: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Anahtar Tipi: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Anahtar Kullanımı: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Parmak izi: %s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ #, fuzzy
+ msgid "Serial-No: "
+ msgstr "Seri-No: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Yayıncı: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Yardımcı anahtarı: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "CMS protokolü etkinleştirilirken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "gpgme veri nesnesi oluşturulurken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "veri nesnesi için bellek ayrılırken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "veri nesnesi konumlanırken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "veri nesnesi okunurken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "'%s' alıcısı eklenirken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "'%s' gizli anahtarı bulunamadı: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "'%s' gizli anahtarının özellikleri belirsiz"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "'%s' gizli anahtarı ayarlanırken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "Anahtar bilgisi alınırken hata: "
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "veri şifrelenirken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "veri imzalanırken hata: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Uyarı: Anahtarlardan biri hükümsüzleştirilmiş\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Uyarı: İmzalamada kullanılan anahtarın süresi dolmuş, son kullanma tarihi: "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Uyarı: Anahtarlardan en az birinin süresi dolmuş\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Uyarı: İmza geçerliliğinin sona erdiği tarih: "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Eksik bir anahtar veya sertifikadan dolayı doğrulama yapılamıyor\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "CRL mevcut değil\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Mevcut CRL çok eski\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Kullanım şartlarına aykırı bir durumla karşılaşıldı\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Bir sistem hatası oluştu"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ #, fuzzy
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "UYARI: Sunucu makine adı ile sertifika uyuşmuyor"
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "UYARI: Anahtarın yukarıda gösterilen isimdeki kişiye ait olduğuna dair HİÇ BİR belirti yok\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "UYARI: Anahtar yukarıda gösterilen isimdeki kişiye ait DEĞİL\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "UYARI: Anahtarın yukarıda gösterilen isimdeki kişiye ait olduğu kesin DEĞİL\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "%s yaratılsın mı?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, fuzzy, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Anahtar bilgisi alınırken hata: "
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ #, fuzzy
+ msgid "Good signature from:"
+ msgstr "İyi imza:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ #, fuzzy
+ msgid "*BAD* signature from:"
+ msgstr "*KÖTÜ* imza:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ #, fuzzy
+ msgid "Problem signature from:"
+ msgstr "İmzayla hata var:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ #, fuzzy
+ msgid " expires: "
+ msgstr " süresi dolacak: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- İmza bilgisi başlangıcı --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Hata: doğrulama başarısız: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Gösterim başlangıcı (%s tarafından imzalanmış) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Gösterim sonu ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4061,7 +4138,7 @@ msgstr ""
+ "[-- İmza bilgisi sonu --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4070,21 +4147,26 @@ msgstr ""
+ "[-- Hata: şifre çözülemedi: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Anahtar bilgisi alınırken hata: "
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Hata: şifre çözümü/doğrulaması başarısız: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Şifrelenmiş PGP iletisi başarıyla çözüldü"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Hata: veri kopyalaması başarısız\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4092,11 +4174,11 @@ msgstr ""
+ "[-- PGP İLETİSİ BAŞLANGICI --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP GENEL ANAHTAR BÖLÜMÜ BAŞLANGICI --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4104,19 +4186,19 @@ msgstr ""
+ "[-- İMZALANMIŞ PGP İLETİSİ BAŞLANGICI --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP İLETİSİ SONU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP GENEL ANAHTAR BÖLÜMÜ SONU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- İMZALANMIŞ PGP İLETİSİ SONU --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4124,11 +4206,11 @@ msgstr ""
+ "[-- Hata: PGP iletisinin başlangıcı bulunamadı --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Hata: geçici dosya yaratılamadı --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4136,7 +4218,7 @@ msgstr ""
+ "[-- Aşağıdaki bilgi PGP/MIME ile imzalanmış ve şifrelenmiştir --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4144,24 +4226,20 @@ msgstr ""
+ "[-- Aşağıdaki bilgi PGP/MIME ile şifrelenmiştir --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME ile imzalanmış ve şifrelenmiş bilginin sonu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME ile şifrelenmiş bilginin sonu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Şifrelenmiş PGP iletisi başarıyla çözüldü"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Şifrelenmiş PGP iletisi çözülemedi"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4169,7 +4247,7 @@ msgstr ""
+ "[-- Aşağıdaki bilgi S/MIME ile imzalanmıştır --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4177,34 +4255,34 @@ msgstr ""
+ "[-- Aşağıdaki bilgi S/MIME ile şifrelenmiştir --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME ile imzalanmış bilginin sonu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME ile şifrelenmiş bilginin sonu --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Bu kullanıcının kimliği görüntülenemiyor (bilinmeyen kodlama)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Bu kullanıcının kimliği görüntülenemiyor (geçersiz kodlama)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Bu kullanıcının kimliği görüntülenemiyor (geçersiz DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Geçersiz]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4212,95 +4290,95 @@ msgstr[0] ""
+ msgstr[1] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "şifreleme"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "imza"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "sertifikasyon"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Hükümsüz]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Süresi Dolmuş]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Etkin Değil]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Veri toplanıyor..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Yayımcının anahtarı bulunamadı: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Hata: sertifika zinciri çok uzun - burada duruldu\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "Anahtar kimliği: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start başarısız: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next başarısız: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Bulunan bütün anahtarların süresi bitmiş veya hükümsüzleştirilmiş"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Seç "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Anahtarı denetle "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP ve S/MIME anahtarları uyuşuyor"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP anahtarları uyuşuyor"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME anahtarları uyuşuyor"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "anahtarlar uyuşuyor"
+
+@@ -4308,59 +4386,59 @@ msgstr "anahtarlar uyuşuyor"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Bu anahtar kullanılamaz: süresi dolmuş/etkin değil/hükümsüz"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "Kimlik (ID), süresi dolmuş/etkin değil/hükümsüz durumda. Gerçekten bu anahtarı kullanmak istiyor musunuz?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "Kimlik (ID) geçerli değil. Gerçekten bu anahtarı kullanmak istiyor musunuz?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "Kimlik (ID) çok az güvenilir. Gerçekten bu anahtarı kullanmak istiyor musunuz?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Kimliğin (ID) geçerliliği belirsiz. Gerçekten bu anahtarı kullanmak istiyor musunuz?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "\"%s\" tabirine uyan anahtarlar aranıyor..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "%2$s için anahtar NO = \"%1$s\" kullanılsın mı?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "%s için anahtar NO'yu girin: "
+@@ -4369,16 +4447,16 @@ msgstr "%s için anahtar NO'yu girin: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "'%s' gizli anahtarı bulunamadı: %s"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Lütfen anahtar numarasını girin: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Anahtar bilgisi alınırken hata: "
+@@ -4386,94 +4464,94 @@ msgstr "Anahtar bilgisi alınırken hata: "
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP anahtarı 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME i(m)zala, (f)arklı imzala, p(g)p, i(p)tal, veya (o)ppenc modu kapalı?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "mfgpo"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP i(m)zala, (f)arklı imzala, (s)/mime, i(p)tal, veya (o)ppenc modu kapalı?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "mfspo"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, p(g)p, i(p)tal, veya (o)ppenc modu?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "rmfkgpo"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, (s)/mime, i(p)tal, veya (o)ppenc modu?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "rmfkspo"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, p(g)p, i(p)tal?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "rmfkgp"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, (s)/mime, i(p)tal?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "rmfksp"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Gönderici doğrulanamadı"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Göndericinin kim olduğu belirlenemedi"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "PGP parolasını girin: "
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Hata: PGP alt süreci yaratılamadı --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4484,16 +4562,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "Şifrelenmiş PGP iletisi başarıyla çözüldü"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4501,132 +4579,132 @@ msgstr ""
+ "[-- Hata: PGP alt süreci yaratılamadı --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Şifre çözme işlemi başarısız oldu"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "PGP alt süreci açılamıyor"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "PGP çalıştırılamıyor"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "satır(i)çi"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "rmfkp"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "rmfkp"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "rmfkp"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "rmfkp"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "rmfkp"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP şif(r)ele, i(m)zala, (f)arklı imzala, i(k)isi de, %s, i(p)tal?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "rmfkp"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "PGP anahtarı alınıyor..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Uygun bütün anahtarlar ya süresi dolmuş, ya hükümsüz ya da etkisiz durumda"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "<%s> ile eşleşen PGP anahtarları"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "\"%s\" ile eşleşen PGP anahtarları"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "/dev/null açılamıyor"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP anahtarı %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "S/MIME parolasını girin: "
+
+@@ -4635,7 +4713,7 @@ msgstr "S/MIME parolasını girin: "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Süresi Dolmuş "
+
+@@ -4644,7 +4722,7 @@ msgstr "Süresi Dolmuş "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Geçersiz "
+
+@@ -4653,7 +4731,7 @@ msgstr "Geçersiz "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Hükümsüzleştirilmiş "
+
+@@ -4662,7 +4740,7 @@ msgstr "Hükümsüzleştirilmiş "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Güvenilir "
+
+@@ -4671,7 +4749,7 @@ msgstr "Güvenilir "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Doğrulanamayan"
+
+@@ -4680,7 +4758,7 @@ msgstr "Doğrulanamayan"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Doğrulananan "
+
+@@ -4689,60 +4767,60 @@ msgstr "Doğrulananan "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Bilinmiyor "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "\"%s\" ile uyuşan S/MIME anahtarları"
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "Kimlik (ID) geçerli değil. Gerçekten bu anahtarı kullanmak istiyor musunuz?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "%s için anahtar NO'yu girin: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "%s için (geçerli) sertifika bulunamadı"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "[-- Hata: OpenSSL alt süreci yaratılamadı --]"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "Karşı taraftan sertifika alınamadı"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "sertifika dosyası yok"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "eposta kutusu yok"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL bir çıktı üretmedi..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "İmzalanmıyor: Anahtar belirtilmedi. \"farklı imzala\"yı seçin."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "OpenSSL alt süreci açılamıyor"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4750,19 +4828,19 @@ msgstr ""
+ "[-- OpenSSL çıktısı sonu --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Hata: OpenSSL alt süreci yaratılamadı --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Aşağıdaki bilgi S/MIME ile şifrelenmiştir --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Aşağıdaki bilgi imzalanmıştır --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4770,7 +4848,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME ile şifrelenmiş bilginin sonu --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4779,167 +4857,167 @@ msgstr ""
+ "[-- S/MIME ile imzalanmış bilginin sonu --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME şif(r)ele, i(m)zala, f(a)rklı şifrele, (f)arklı imzala, i(k)isi de, i(p)tal?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "rmafkp"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME şif(r)ele, i(m)zala, f(a)rklı şifrele, (f)arklı imzala, i(k)isi de, i(p)tal?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "rmafkp"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME şif(r)ele, i(m)zala, f(a)rklı şifrele, (f)arklı imzala, i(k)isi de, i(p)tal?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "rmafkp"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Algoritma ailesini seçin: (1) DES, (2) RC2, (3) AES, şifresi(z)?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123z"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) Triple-DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s geçerli bir POP dosyayolu değil"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Sunucu bağlantıyı kesti"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Doğrulamacılar erişilir durumda değil"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL doğrulaması başarısız oldu"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "%s soketine yapılan bağlantı kapatıldı"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "İletilerin listesi alınıyor..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Yeni iletiler için bakılıyor..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "geçici eposta dizini yaratılamadı: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "%s sunucusuna bağlanılıyor..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Yapılacak bir işlem yok"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "%s incelenemiyor: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "İletileri sunucudan sil..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Giriş yapılıyor..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Yeni iletiler için bakılıyor..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s geçerli bir POP dosyayolu değil"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4951,7 +5029,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6100,184 +6178,184 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "S/MIME seçeneklerini göster"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Öge bu menüde mevcut değil"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "ÖncekiSyf"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "SonrakiSyf"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "EkiGörüntüle"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Sonraki"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "İletinin sonu"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "İletinin başı"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Şu an yardım gösteriliyor"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Alıntı metni sonu"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Alıntı metnini takip eden normal metnin sonu"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Tabirde hata var: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Boş tabir"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Sorgulama komutu tanımlanmadı"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Otomatik görüntüleme komutu çalıştırılıyor: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "Geçersiz ay günü: %s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Geçersiz ay: %s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Geçersiz göreceli tarih: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Okunmamış ileti yok"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "Bellek akışını açılırken hata oluştu!"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Bellek akışını yeniden açılırken hata oluştu!"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "/dev/null açılırken hata oluştu"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "tabirdeki hata konumu: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "eksik argüman"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "eşleşmeyen parantezler: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: geçersiz komut"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c : bu kipte desteklenmiyor"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "eksik argüman"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "boş tabir"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "hata: bilinmeyen işlem kodu %d (bu hatayı bildirin)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Arama tabiri derleniyor..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Komut, eşleşen bütün iletilerde çalıştırılıyor..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Tabire uygun ileti bulunamadı"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Aranıyor..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Arama hiç bir şey bulunamadan sona erişti"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Arama hiçbir şey bulunamadan başa erişti"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Arama iptal edildi"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "TOP komutu sunucu tarafından desteklenmiyor"
+
+@@ -6285,7 +6363,7 @@ msgstr "TOP komutu sunucu tarafından desteklenmiyor"
+ msgid "Can't write header to temporary file"
+ msgstr "Başlık, geçici bir dosyaya yazılamıyor"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "UIDL komutu sunucu tarafından desteklenmiyor"
+
+@@ -6300,7 +6378,7 @@ msgstr[1] "İleti indeksi hatalı. Eposta kutusu yeniden açılıyor."
+ msgid "POP host is not defined"
+ msgstr "POP sunucusu tanımlanmadı"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s geçerli bir POP dosyayolu değil"
+@@ -6333,155 +6411,155 @@ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%1$s [ %3$d iletiden %2$d ileti okundu]"
+ msgstr[1] "%1$s [ %3$d iletiden %2$d ileti okundu]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "İletilerin listesi alınıyor..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "%d ileti silinmek için işaretlendi..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "İleti geçici bir dosyaya yazılamıyor"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Doğrulanıyor (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Doğrulanıyor (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP doğrulaması başarısız oldu"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Sunucu USER komutunu desteklemiyor"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL doğrulaması başarısız oldu"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Geçersiz POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "İletiler sunucuda bırakılamıyor"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Sunucuya bağlanırken hata oluştu: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "POP sunucuya yapılan bağlantı kesiliyor..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "İleti indeksleri doğrulanıyor..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "Bağlantı kaybedildi. POP sunucusuna yeniden bağlanılsın mı?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Ertelenen İletiler"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Ertelen ileti yok"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Geçersiz S/MIME başlığı"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "Geçersiz PGP başlığı"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "İleti çözülüyor..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Yeni Sorgu"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Lâkap Yarat"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Cevap bekleniyor..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Sorgulama: "
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Sorgulama '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Sorgulama komutu tanımlanmadı"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Boru"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Yazdır"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Kaydediliyor..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "Ek kaydedildi"
+ msgstr[1] "Ek kaydedildi"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "UYARI! %s dosyasının üzerine yazılacak, devam edilsin mi?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Ek, süzgeçten geçirildi"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Süzgeç: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Borula: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "%s eklerinin nasıl yazdırılacağı bilinmiyor"
+@@ -6489,57 +6567,57 @@ msgstr "%s eklerinin nasıl yazdırılacağı bilinmiyor"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "İşaretli ileti(ler) yazdırılsın mı?"
+ msgstr[1] "İşaretli ileti(ler) yazdırılsın mı?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Ek yazdırılsın mı?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Şifrelenmiş ileti çözülemiyor"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Ekler"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Gösterilecek bir alt bölüm yok"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Ek, POP sunucusundan silinemiyor"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Ek, POP sunucusundan silinemiyor"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Şifrelenmiş bir iletiye ait eklerin silinmesi desteklenmiyor"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Şifrelenmiş bir iletiye ait eklerin silinmesi desteklenmiyor"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Sadece çok parçalı (multipart) eklerin silinmesi destekleniyor"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Sadece ileti ya da rfc822 kısımları geri gönderilebilir"
+
+@@ -6576,7 +6654,7 @@ msgstr "%s yaratılamadı"
+ msgid "Can't find any tagged messages"
+ msgstr "İşaretli hiç bir ileti yok"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Herhangi bir eposta listesi bulunamadı"
+
+@@ -6591,67 +6669,67 @@ msgstr "İşaretlenmiş eklerin hepsi çözülemiyor. Kalanlar MIME ile sarmalan
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Sadece ileti ya da rfc822 kısımları geri gönderilebilir"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Ekle"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "İçer"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "TAMAM"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "\"mixmaster\" type2.list alınamıyor"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Bir postacı (remailer) zinciri seçin"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Hata: %s, zincirdeki son postacı olarak kullanılamaz"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster zincirleri %d sayıda elemanla sınırlandırılmıştır"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Postacı zinciri zaten boş"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Zincirin zaten ilk elemanını seçmiş durumdasınız"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Zincirin zaten son elemanını seçmiş durumdasınız"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster Cc ya da Bcc başlıklarını kabul etmez"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Lütfen mixmaster kullanırken yerel makina adını uygun şekilde ayarlayın"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "İleti gönderilirken hata oluştu, alt süreç %d ile sonlandı.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "İleti gönderilirken hata oluştu"
+
+@@ -6682,42 +6760,42 @@ msgstr "Ekler halinde iletilsin mi?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Cevap adresi olarak %s%s kullanılsın mı? [Reply-To]"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Cevap adresi olarak %s%s kullanılsın mı? [Mail-Followup-To]"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "İleti, cevaba dahil edilsin mi?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Alıntı metni dahil ediliyor..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Bildirilen iletilerin hepsi dahil edilemedi"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Ek olarak iletilsin mi?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "İletilecek eposta hazırlanıyor..."
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c : bu kipte desteklenmiyor"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "eki metin olarak göster"
+@@ -6726,196 +6804,196 @@ msgstr "eki metin olarak göster"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "Eposta kutusu yok.\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Ertelenen ileti açılsın mı?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "İletilen eposta düzenlensin mi?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Değiştirilmemiş ileti iptal edilsin mi?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Değiştirilmemiş ileti iptal edildi"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Eposta gönderilmedi"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "İleti ertelendi"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Konu girilmedi, gönderme iptal edilsin mi?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Konu girilmedi"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Konu girilmedi"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "ek iletim kodlamasını (transfer-encoding) düzenle"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "İleti gönderiliyor..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "İleti gönderilemedi"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Ardalanda gönderiliyor"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Eposta gönderildi"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Sınırlandırma değişkeni bulunamadı [bu hatayı bildirin]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s artık mevcut değil"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s uygun bir dosya değil!"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "İleti gönderilemedi."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "%s açılamadı"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "İleti gönderilirken hata oluştu, alt süreç %d ile sonlandı (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Gönderme işleminin ürettiği çıktı"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "\"resent-from\" hazırlanırken hatalı IDN %s"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Yeniden isimlendirme başarısız: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Yeniden isimlendirme başarısız: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Geçersiz SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL doğrulaması başarısız oldu."
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI doğrulaması başarısız oldu"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Eposta kutusu sıralanıyor..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Sıralama işlevi bulunamadı [bu hatayı bildirin]"
+
+@@ -6988,10 +7066,10 @@ msgstr ""
+ "yeniden dağıtabilirsiniz. Ayrıntılı bilgi için 'neomutt -vv' komutunu\n"
+ "kullanabilirsiniz.\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "Varsayılan seçenekler:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "İnşa seçenekleri:"
+diff --git a/po/uk.po b/po/uk.po
+index 66741628d..42cd92418 100644
+--- a/po/uk.po
++++ b/po/uk.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-05-10 19:47+0300\n"
+ "Last-Translator: Vsevolod Volkov <vvv@mutt.org.ua>\n"
+ "Language-Team: \n"
+@@ -21,16 +21,40 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(r)не приймати, прийняти (o)одноразово або (a)завжди, (s)пропустити"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(r)не приймати, прийняти (o)одноразово або (a)завжди"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(r)не приймати, (o)прийняти одноразово, (s)пропустити"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(r)не приймати, (o)прийняти одноразово"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "Вихід"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "Вид."
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "Відн."
+
+@@ -38,18 +62,18 @@ msgstr "Відн."
+ msgid "Select"
+ msgstr "Вибір"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "Допомога"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "Ви не маєте жодного псевдоніму"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "Псевдоніми"
+
+@@ -58,52 +82,52 @@ msgstr "Псевдоніми"
+ msgid "Alias as: "
+ msgstr "Псевдонім як: "
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "Ви вже маєте псевдонім на це ім’я"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "Попередження: цей псевдонім може бути помилковим. Виправити?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "Адреса: "
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "Некоректний IDN: %s"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "Повне ім’я: "
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] Вірно?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "Зберегти до файлу: "
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "Помилка читання файлу псевдонімів"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "Помилка читання файлу псевдонімів"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "Псевдонім додано"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "Помилка позиціонування в файлі псевдонімів"
+
+@@ -112,7 +136,7 @@ msgstr "Помилка позиціонування в файлі псевдон
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s не існує. Створити його?"
+@@ -121,8 +145,8 @@ msgstr "%s не існує. Створити його?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "Неможливо створити %s: %s"
+@@ -132,36 +156,36 @@ msgstr "Неможливо створити %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+-msgstr ""
++msgstr "Створити обліковий запис autocrypt?"
+
+ #. 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:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+-msgstr ""
++msgstr "Адреса облікового запису autocrypt: "
+
+ #. 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:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+-msgstr ""
++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:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+-msgstr ""
++msgstr "Ця адреса вже має обліковий запис autocrypt"
+
+ #. L10N:
+ #. Autocrypt has a setting "prefer-encrypt".
+@@ -171,35 +195,34 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
+-#, fuzzy
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+-msgstr "шифрування"
++msgstr "Віддавати перевагу шифруванню?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+-msgstr ""
++msgstr "Обліковий запис autocrypt успішно створено"
+
+ #. L10N:
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+-msgstr ""
++msgstr "Створення облікового запису autocrypt перервано"
+
+ #. 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:610 autocrypt/autocrypt.c:639
+-#, fuzzy, c-format
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
++#, c-format
+ msgid "No (valid) autocrypt key found for %s"
+-msgstr "Немає (правильних) сертифікатів для %s"
++msgstr "Немає (дійсного) ключа autocrypt для %s"
+
+ #. L10N:
+ #. The first time autocrypt is enabled, NeoMutt will ask to scan
+@@ -208,12 +231,12 @@ msgstr "Немає (правильних) сертифікатів для %s"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "Перевірити наявність заголовків autocrypt у поштовій скринці?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "Перевірка поштової скриньки"
+
+@@ -224,21 +247,21 @@ msgstr "Перевірка поштової скриньки"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "Перевірити наявність заголовків autocrypt в іншій скринці?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "Створити"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "Видал."
+
+@@ -246,9 +269,9 @@ msgstr "Видал."
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "Перем Актив"
+
+@@ -256,17 +279,17 @@ msgstr "Перем Актив"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "Перев Шифр"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "віддавати перевагу шифруванню"
+
+@@ -275,7 +298,7 @@ msgstr "віддавати перевагу шифруванню"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "ручне шифрування"
+
+@@ -283,7 +306,7 @@ msgstr "ручне шифрування"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "активн"
+
+@@ -291,12 +314,12 @@ msgstr "активн"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "неактивн"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Облікові записи autocrypt"
+
+@@ -304,12 +327,12 @@ msgstr "Облікові записи autocrypt"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "Помилка збереження інформації про обліковий запис"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "Дійсно видалити обліковий запис \"%s\"?"
+@@ -327,7 +350,7 @@ msgstr "Дійсно видалити обліковий запис \"%s\"?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "Неможливо відкрити базу даних autocrypt %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "помилка при створенні контексту gpgme: %s"
+@@ -400,284 +423,235 @@ msgstr "Версія бази даних autocrypt занадто нова"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s не є каталогом"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "Перейти:"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "Маска"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "Підписано на %s..."
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "Відписано від %s..."
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s не є каталогом"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "Підписано на %s..."
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "Поштові скриньки [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "Підписані [%s] з маскою: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "Каталог [%s] з маскою: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "Неможливо додати каталог"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "Немає файлів, що відповідають масці"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "Створення підтримується лише для скриньок IMAP"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "Перейменування підтримується лише для скриньок IMAP"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "Видалення підтримується лише для скриньок IMAP"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "показати ім’я вибраного файлу"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "Впевнені у видаленні скриньки \"%s\"?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "Поштову скриньку видалено"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "Помилка видалення поштової скриньки"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "Поштову скриньку не видалено"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "Перейти до: "
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "Помилка перегляду каталогу"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "Маска: "
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Зворотньо сортувати за датою(d), літерою(a), розміром(z), чи не сортувати(n)?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "Сортувати за датою(d), літерою(a), розміром(z), чи не сортувати(n)?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "Нове ім’я файлу: "
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "Неможливо переглянути каталог"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "Помилка при спробі перегляду файлу"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "Підписано на %s..."
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "Відписано від %s..."
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "Немає файлів, що відповідають масці"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s: колір не підтримується терміналом"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s: такого кольору немає"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s: такого об’єкту немає"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s: замало аргументів"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s: такого атрібуту немає"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: забагато аргументів"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "типові кольори не підтримуються"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "Помилка: score: неправильне число"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "Перевірити підпис?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "Не вийшло створити тимчасовий файл"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "Неможливо створити фільтр відображення"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "Не вийшло скопіювати повідомлення"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "Підпис S/MIME перевірено"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "Відправник листа не є власником сертифіката S/MIME"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "Попередження: частина цього листа не підписана"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "Перевірити підпис S/MIME неможливо"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "Підпис PGP перевірено"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "Перевірити підпис PGP неможливо"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "Помилка виконання \"%s\""
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "Команда: "
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "Попередження: лист не має заголовку From:"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "Надіслати копію листа: "
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "Надіслати копії виділених листів: "
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "Помилка розбору адреси"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+@@ -685,7 +659,7 @@ msgstr[0] "Надіслати копію листа %s?"
+ msgstr[1] "Надіслати копії листів %s?"
+ msgstr[2] "Надіслати копії листів %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+@@ -693,7 +667,7 @@ msgstr[0] "Копію листа не переслано"
+ msgstr[1] "Копії листів не переслано"
+ msgstr[2] "Копії листів не переслано"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+@@ -701,29 +675,29 @@ msgstr[0] "Копію листа переслано"
+ msgstr[1] "Копії листів переслано"
+ msgstr[2] "Копії листів переслано"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "Неможливо створити процес фільтру"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "Передати до програми: "
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "Команду для друку не визначено"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "Друкувати повідомлення?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "Друкувати виділені повідомлення?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+@@ -731,7 +705,7 @@ msgstr[0] "Повідомлення надруковано"
+ msgstr[1] "Повідомлення надруковані"
+ msgstr[2] "Повідомлення надруковані"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+@@ -740,161 +714,325 @@ msgstr[1] "Повідомлення не можуть бути надруков
+ msgstr[2] "Повідомлення не можуть бути надруковані"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Звор.Сорт.:(d)дата/(f)від/(r)отр/(s)тема/(o)кому/(t)розмова/(u)без/(z)розмір/(c)рахунок/(p)спам/(l)позн?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "Сортувати: (d)дата/(f)від/(r)отр/(s)тема/(o)кому/(t)розмова/(u)без/(z)розмір/(c)рахунок/(p)спам/(l)позн?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Команда системи: "
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "Розкодувати і перенести до скриньки"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "Розкодувати і перенести виділені до скриньки"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "Розшифрувати і перенести до скриньки"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "Розшифрувати і перенести виділені до скриньки"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "Перенести до скриньки"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "Перенести виділені до скриньки"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "Розкодувати і копіювати до скриньки"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "Розкодувати і копіювати виділені до скриньки"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "Розшифрувати і копіювати до скриньки"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "Розшифрувати і копіювати виділені до скриньки"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "Копіювати до скриньки"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "Копіювати виділені до скриньки"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "Копіювання до %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Тип даних змінено на %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "Перетворити на %s при надсиланні?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Тип даних змінено на %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "Кодування змінено на %s; не перетворюється"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "Кодування змінено на %s; перетворюється"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s: замало аргументів"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group: не вказано імені групи"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "замало аргументів"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "Помилка в %s, рядок %d: %s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "Помилка в %s, рядок %d: %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source: помилки в %s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: читання припинено, дуже багато помилок у %s"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source: помилки в %s"
++msgstr[1] "source: помилки в %s"
++msgstr[2] "source: помилки в %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "alias: адреси немає"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "Попередження: Погане IDN \"%s\" в псевдонімі \"%s\""
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "attachments: відсутній параметр disposition"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "змінити пояснення до додатку"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "attachments: неправильний параметр disposition"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: забагато аргументів"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup: відсутні -rx чи -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup: попередження: погане IDN: %s"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "неправильне поле заголовку"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s: невідома змінна"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s не встановлено"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source: помилка в %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "Повідомлення не можуть бути надруковані"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "спам: зразок не знайдено"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "не спам: зразок не знайдено"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "Підписано на %s..."
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "Підписано на %s..."
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "Теми не вказано."
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "unattachments: відсутні йпараметр disposition"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "unattachments: неправильний параметр disposition"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "Відписано від %s..."
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "Відписано від %s..."
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "Додатків немає"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "Reply-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "Mix: "
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "Безпека: "
+
+@@ -905,78 +1043,78 @@ msgstr "Безпека: "
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "Підпис як: "
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "Переслати %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "змінити поле Reply-To"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "Відправити"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "Відміна"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "To"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "CC"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "Subj"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "Додати файл"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "Опис"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "Теми не вказано."
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Вимкн"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "Ні"
+
+@@ -984,7 +1122,7 @@ msgstr "Ні"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Не зрозуміло"
+
+@@ -992,14 +1130,14 @@ msgstr "Не зрозуміло"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Доступно"
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Так"
+
+@@ -1009,7 +1147,7 @@ msgstr "Так"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: (e)шифрувати, (c)очистити, (a)автоматично?"
+
+@@ -1017,51 +1155,51 @@ msgstr "Autocrypt: (e)шифрувати, (c)очистити, (a)автомат
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "Не підтримується."
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "Підписати, зашифрувати"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "зашифрувати"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "Підписати"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "Нічого"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (PGP/текст)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr " (режим OppEnc)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<типово>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "Зашифрувати: "
+
+@@ -1070,11 +1208,11 @@ msgstr "Зашифрувати: "
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Рекомендація: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1085,7 +1223,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "Додаток #%d більше не існує: %s"
+@@ -1097,57 +1235,57 @@ msgstr "Додаток #%d більше не існує: %s"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "Додаток #%d був змінений. Оновити кодування для %s?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- Додатки"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "Це єдина частина листа, її неможливо видалити"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "Некоректне IDN в '%s': %s"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "Додаток записано"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "Поточний додаток не буде перетворено"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "Додаток відфільтровано"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "Помилка при відправці"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+@@ -1155,182 +1293,302 @@ msgstr[0] "Додавання вибраних файлів..."
+ msgstr[1] "Додавання вибраних файлів..."
+ msgstr[2] "Додавання вибраних файлів..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "Неможливо додати %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "Скринька, з якої додати повідомлення"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "Скринька, з якої додати повідомлення"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "Неможливо відкрити скриньку %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "Ця скринька зовсім порожня"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "Виділіть повідомлення для додавання"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "Неможливо додати"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "Перекодування може бути застосоване тільки до текстових додатків"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "Поточний додаток не буде перетворено"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "Поточний додаток буде перетворено"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "Невірне кодування"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "Зберегти копію цього повідомлення?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "Відправити додаток з ім’ям: "
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "Перейменувати у: "
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "Неможливо отримати дані %s: %s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "Новий файл: "
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Поле Content-Type повинно мати форму тип/підтип"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "Невідомий Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "Неможливо створити файл %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "Не вийшло створити додаток"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "Викликати залишений лист?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "Записати лист до поштової скриньки"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "Запис листа до %s..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "Лист записано"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "Підтримку PGP не налаштовано"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "S/MIME вже вибрано. Очистити і продовжити?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "Підтримку S/MIME не налаштовано"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "PGP вже вибрано. Очистити і продовжити?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "Неможливо дозаписати без append-hook або close-hook: %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "Поштова скринька не може бути блокована"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "Розпакування %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "Не вийшло визначити зміст стислого файла"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "Не вийшло знайти опис для цього типу поштової скриньки %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "Помилка команди стиснення: %s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "Дозапис не підтримується для цього типу поштової скриньки"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "Неможливо синхронізувати стислий файл без close-hook"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "Стиснення %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "Стиснення і дозаписування %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "Помилка. Збереження тимчасового файлу: %s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "Неможлива відносна дата: %s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "Неможлива відносна дата: %s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "Помилка: score: неправильне число"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "Неправильне значення для параметра %s: \"%s\""
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "Місяць \"%s\" не існує"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "Функцію не дозволено в режимі додавання повідомлення."
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "Помилка: score: неправильне число"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "Помилка: score: неправильне число"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "Неможлива відносна дата: %s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "Неправильне значення для параметра %s: \"%s\""
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "Помилка: значення \"%s\" некорректне для -d"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s: невідома змінна"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "Неможлива відносна дата: %s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "Неможлива відносна дата: %s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "Користувач у %s: "
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "Пароль для %s@%s: "
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "Команду запиту не визначено"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1351,7 +1609,7 @@ msgstr "З’єднання з %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "Не вийшло з’єднатися з %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "невідома помилка"
+
+@@ -1365,23 +1623,23 @@ msgstr "Помилка у з’єднанні з сервером %s (%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "З’єднання з %s закрито"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "Невідомий профіль SASL"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "Помилка створення з’єднання SASL"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "Помилка встановлення властивостей безпеки SASL"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "Помилка встановлення рівня зовнішньої безпеки"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "Помилка встановлення зовнішнього імені користувача SASL"
+
+@@ -1394,133 +1652,109 @@ msgstr "Помилка команди, попередньої з’єднанн
+ msgid "Connection to %s closed"
+ msgstr "З’єднання з %s закрито"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "Заповнення пулу ентропії: %s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s має небезпечні права доступу"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL заборонений через нестачу ентропії"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "Невідоме"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[неможливо обчислити]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[помилкова дата]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "Сертифікат серверу ще не дійсний"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "Строк дії сертифікату сервера вичерпано"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "Не вдалося знайти достятньо ентропії на вашій системі"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "неможливо отримати subject сертифікату"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "Неможливо отримати common name сертифікату"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "власник сертифікату не відповідає імені хоста %s"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "Цей сертифікат належить:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "Цей сертифікат видано:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "Цей сертифікат дійсний"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " від %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " до %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "Відбиток SHA1: %s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "Відбиток SHA256: %s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr "Перевірка сертифікату (сертифікат %zu з %zu в ланцюжку)"
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(r)не приймати, прийняти (o)одноразово або (a)завжди, (s)пропустити"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(r)не приймати, прийняти (o)одноразово або (a)завжди"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(r)не приймати, (o)прийняти одноразово, (s)пропустити"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(r)не приймати, (o)прийняти одноразово"
++msgstr "Перевірка сертифікату (сертифікат %zu з %zu в ланцюжку)"
+
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "Вихід "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "Попередження: неможливо зберегти сертифікат"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "Сертифікат збережено"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "Не вдалось перевірити хост сертифікату: %s"
+@@ -1528,15 +1762,15 @@ msgstr "Не вдалось перевірити хост сертифікату
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "Попередження: не вдалось встановити ім’я хоста TLS SNI"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "помилка вводу-виводу"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "Помилка SSL: %s"
+@@ -1544,89 +1778,73 @@ msgstr "Помилка SSL: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "Неможливо створити SSL контекст"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "Попередження: помилка ввімкнення ssl_verify_partial_chains"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "Неможливо отримати сертифікат"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "Помилка перевірки сертифікату (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "Сертифікат не в форматі X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "Помилка ініціалізації даних сертифікату gnutls"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "Помилка обробки даних сертифікату"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "Попередження: Сертифікат серверу ще не дійсний"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "Попередження: Строк дії сертифікату сервера збіг"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "Попередження: Сертифікат серверу відкликано"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "Попередження: hostname сервера не відповідає сертифікату"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "Попередження: Сертифікат видано неавторизованим видавцем"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "Попередження: Сертифікат сервера підписано ненадійним алгоритмом"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "Всі доступні протоколи для TLS/SSL заборонені"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "Явний вибір набора шифрів через $ssl_ciphers не підтримується"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "З’єднання SSL/TLS з використанням %s (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "Помилка: не відкрито жодного сокета TLS"
+
+@@ -1645,7 +1863,7 @@ msgstr "Помилка тунелю у з’єднанні з сервером %
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "Тунель до %s поверну помилку %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+@@ -1653,31 +1871,11 @@ msgstr[0] ""
+ msgstr[1] ""
+ msgstr[2] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "Немає механізму розшифровки для повідомлення"
+
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "так"
+-
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "ні"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "Покинути NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "Натисніть будь-яку клавішу..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (\"?\" - перелік): "
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1699,7 +1897,7 @@ msgstr ""
+ "~M листи те ж саме, що й ~m, за винятком заголовків\n"
+ "~p друкувати лист\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1721,20 +1919,20 @@ msgstr ""
+ "~? це повідомлення\n"
+ ". рядок з однієї крапки - ознака кінця вводу\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d: невірний номер листа.\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(Закінчіть лист рядком, що складається з однієї крапки)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "Не поштова скринька.\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "Лист містить:\n"
+
+@@ -1742,19 +1940,19 @@ msgstr "Лист містить:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(далі)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "не вказано імені файлу.\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "Жодного рядку в листі.\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s: невідома команда редактора (~? - підказка)\n"
+@@ -1801,19 +1999,73 @@ msgstr "Неможливо дозаписати до скриньки: %s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "Багаточастинний лист не має параметру межі"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "Формування розмов не ввімкнено"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "Встановити атрибут"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "Зняти атрибут"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s: колір не підтримується терміналом"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s: такого кольору немає"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s: такого об’єкту немає"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s: такого атрібуту немає"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "типові кольори не підтримуються"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "Помилка: score: неправильне число"
++
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "так"
++
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "ні"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "Покинути NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "Натисніть будь-яку клавішу..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (\"?\" - перелік): "
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1834,23 +2086,23 @@ msgstr "[-- Автопереглядання за допомогою %s --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "Виклик команди автоматичного переглядання: %s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "Неможливо створити фільтр"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- Неможливо виконати %s. --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- Программа переглядання %s повідомила про помилку --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- Помилка: message/external-body не має параметру типу доступу --]\n"
+
+@@ -1869,7 +2121,7 @@ msgstr "[-- Помилка: message/external-body не має параметру
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1901,7 +2153,7 @@ msgstr[2] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1916,7 +2168,7 @@ msgstr[2] "[-- Цей %s/%s додаток (розм. %s байт) було ви
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1928,12 +2180,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- Цей %s/%s додаток було видалено --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- ім’я: %s --]\n"
+@@ -1941,7 +2193,7 @@ msgstr "[-- ім’я: %s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1956,7 +2208,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1965,94 +2217,94 @@ msgstr ""
+ "[-- Цей %s/%s додаток не включено, --]\n"
+ "[-- відповідний тип доступу %s не підтримується --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- Помилка: жодну частину Multipart/Alternative не вийшло відобразити --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- Додаток номер %d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- Додаток номер %d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "Якісь частини повідомлення неможливо відобразити"
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "Неможливо відкрити тимчасовий файл"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "Неможливо відкрити тимчасовий файл"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr ""
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "Помилка: немає протоколу для multipart/signed"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- Це додаток (використовуйте \"%s\" для перегляду цієї частини) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s не підтримується (використовуйте \"%s\" для перегляду цієї частини) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- Це додаток (треба призначити клавішу до view-attachments) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s не підтримується (треба призначити клавішу до view-attachments) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- Це додаток --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s не підтримується --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "ПОМИЛКА: будь ласка, повідомте про цей недолік"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<НЕВІДОМО>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "Базові призначення:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "Не призначені функції:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "Підказка до %s"
+@@ -2069,41 +2321,41 @@ msgstr "скорочення для скриньки перетворене на
+ msgid "badly formatted command string"
+ msgstr "погано форматований командний рядок"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: Неможливо зробити unhook * з hook"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook: невідомий тип hook: %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook: Неможливо видалити %s з %s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "меню \"%s\" не існує"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "меню \"%s\" не існує"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "меню \"%s\" не існує"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "Не вийшло створити тимчасовий файл %s"
+@@ -2141,28 +2393,28 @@ msgstr "Помилка аутентифікації GSSAPI"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN заборонено на цьому сервері"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "Реєстрація..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "Помилка реєстрації"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "Аутентифікація (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "Помилка аутентифікації OAUTHBEARER"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "Аутентифікація (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "Помилка аутентифікації SASL"
+
+@@ -2209,74 +2461,64 @@ msgstr "Помилка переіменування: %s"
+ msgid "Mailbox renamed"
+ msgstr "Поштову скриньку переіменовано"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "Поштову скриньку %s@%s закрито"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "Вичерпано час очікування з’єднання з %s"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "Цей сервер IMAP застарілий. NeoMutt не може працювати з ним."
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "Пошук заголовка без вказання його імені: %s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "Помилка створення: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "Закриття з’єднання з %s..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "Безпечне з’єднання з TLS?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "Не вийшло домовитись про TLS з’єднання"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "Шифроване з’єднання недоступне"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "Підписування на %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "Відписування від %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "Підписано на %s..."
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "Відписано від %s..."
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+@@ -2284,16 +2526,16 @@ msgstr[0] "Копіювання %d листів до %s..."
+ msgstr[1] "Копіювання %d листів до %s..."
+ msgstr[2] "Копіювання %d листів до %s..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "Створити %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "Помилка видалення"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+@@ -2302,7 +2544,7 @@ msgstr[1] "Маркування %d повідомлень видаленими..
+ msgstr[2] "Маркування %d повідомлень видаленими..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+@@ -2310,37 +2552,37 @@ msgstr[0] "Збереження змінених листів... [%d/%d]"
+ msgstr[1] "Збереження змінених листів... [%d/%d]"
+ msgstr[2] "Збереження змінених листів... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "Помилка збереження атрибутів. Закрити все одно?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "Помилка збереження атрибутів"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "Видалення повідомлень з серверу..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox: помилка EXPUNGE"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "Вибір %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "Помилка відкриття поштової скриньки"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ #, fuzzy
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "SMTP-сервер не підтримує аутентифікації"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "Неправ. "
+@@ -2351,7 +2593,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "Не вистачає пам’яті"
+
+@@ -2371,7 +2613,7 @@ msgstr "Отримання заголовків листів..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "З серверу IMAP цієї версії отримати заголовки неможливо"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "Отримання заголовків листів..."
+
+@@ -2384,156 +2626,156 @@ msgstr "Відправка листа..."
+ msgid "Copying message %d to %s..."
+ msgstr "Копіювання %d листів до %s..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "Отримання листа..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "Некоректний індекс повідомленнь. Спробуйте відкрити скриньку ще раз."
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "Далі?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "Вийти"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "Збер."
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "Лист"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "Відп."
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "Всім"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "Переслати %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "Немає відкритої поштової скриньки"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "Жодного повідомлення немає"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "Жодного повідомлення не видно"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "Поштова скринька відкрита тільки для читання"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "Функцію не дозволено в режимі додавання повідомлення"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "%s: Операція не дозволена ACL"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "Скринька тільки для читання, ввімкнути запис неможливо"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "Зміни у скриньці буде записано по виходу з неї"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "Зміни у скриньці не буде записано"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s не є поштовою скринькою"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "Поштову скриньку змінила зовнішня програма. Атрибути можуть бути змінені."
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "Нова пошта у цій поштовій скриньці"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "Поштову скриньку змінила зовнішня програма"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "Жодного листа не виділено"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "Нічого робити"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "Введіть keyID: "
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "Кореневий лист не можна побачити при цьому обмеженні"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "Видалення повідомлень з серверу..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "видалити всі листи розмови"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "Перейти до листа: "
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "Аргумент повинен бути номером листа"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "Невірний номер листа"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "Цей лист не можна побачити"
+
+@@ -2546,38 +2788,38 @@ msgstr "Цей лист не можна побачити"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "Неможливо видалити лист"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "Видалити листи за шаблоном: "
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "Обмеження не встановлено"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "Обмеження: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "Обмежитись повідомленнями за шаблоном: "
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "Щоб побачити всі повідомлення, встановіть шаблон \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "Вийти з NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "Виділити листи за шаблоном: "
+
+@@ -2585,204 +2827,204 @@ msgstr "Виділити листи за шаблоном: "
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "Неможливо відновити лист"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "Відновити листи за шаблоном: "
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "Зняти виділення з листів за шаблоном: "
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "Закриття з’єднання з сервером IMAP.."
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "Теми немає, відмінено"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ #, fuzzy
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "SMTP-сервер не підтримує аутентифікації"
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "Теми немає, відмінено"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "Теми немає, відмінено"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "Відкрити скриньку лише для читання"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "Відкрити скриньку"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "Немає поштової скриньки з новою поштою."
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "Відкрити скриньку лише для читання"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "Покинути NeoMutt без збереження змін?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "Неможливо з’єднати розмови"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "Розмову розурвано"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "Розмовву неможливо розірвати: повідомлення не є частиною розмови"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "Неможливо з’єднати розмови"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "Відсутній заголовок Message-ID для об’єднання розмов"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "Спершу виділіть листи для об’єднання"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "Розмови об’єднано"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "Розмови не об’єднано"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "Це останній лист"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "Немає відновлених листів"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "Це перший лист"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "Немає нових листів при цьому перегляді з обмеженням"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "Немає нових листів"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "Немає нечитаних листів при цьому перегляді з обмеженням"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "Немає нечитаних листів"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "Досягнуто кінець. Пошук перенесено на початок"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "Досягнуто початок. Пошук перенесено на кінець"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "Неможливо змінити атрибут листа"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "Неможливо змінити атрибут \"Нове\""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "Розмов більше нема"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "Це перша розмова"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "Розмова має нечитані листи"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "Неможливо видалити лист"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "Неможливо редагувати лист"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2793,7 +3035,7 @@ msgstr[2] "Позначки було змінено: %d"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "Жодної позначки не було змінено"
+
+@@ -2801,7 +3043,7 @@ msgstr "Жодної позначки не було змінено"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "Неможливо позначити лист(и) прочитаним(и)"
+@@ -2809,271 +3051,133 @@ msgstr "Неможливо позначити лист(и) прочитаним(
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "Введіть макрос листа: "
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "макрос листа"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "Лист пов’язаний з %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "Немає Message-ID для створення макроса"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "Неможливо відновити лист"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "Помилка командного рядку: %s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "Помилка командного рядку: %s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "неможливо визначити ім’я вузла за допомогою uname()"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group: не вказано імені групи"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "замало аргументів"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "Помилка в %s, рядок %d: %s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "Помилка в %s, рядок %d: %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source: помилки в %s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: читання припинено, дуже багато помилок у %s"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source: помилки в %s"
+-msgstr[1] "source: помилки в %s"
+-msgstr[2] "source: помилки в %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "alias: адреси немає"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "Попередження: Погане IDN \"%s\" в псевдонімі \"%s\""
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "attachments: відсутній параметр disposition"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "змінити пояснення до додатку"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "attachments: неправильний параметр disposition"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup: відсутні -rx чи -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup: попередження: погане IDN: %s"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "неправильне поле заголовку"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s: невідома змінна"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s не встановлено"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source: помилка в %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "Повідомлення не можуть бути надруковані"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "спам: зразок не знайдено"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "не спам: зразок не знайдено"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "Підписано на %s..."
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "Теми не вказано."
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "unattachments: відсутні йпараметр disposition"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "unattachments: неправильний параметр disposition"
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "Відписано від %s..."
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s: невідома команда"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "Неправильне значення для параметра %s: \"%s\""
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "Функцію не дозволено в режимі додавання повідомлення."
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "Знайдено зациклення макросу"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "Клавішу не призначено"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "Клавішу не призначено. Натисніть \"%s\" для підказки."
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: порожня послідовність клавіш"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro: порожня послідовність клавіш"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec: немає аргументів"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "функція \"%s\" не існує"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "Введіть клавіші (^G для відміни): "
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "Символ = %s, Вісімковий = %o, Десятковий = %d"
+@@ -3097,7 +3201,7 @@ msgstr "запису для типу %s в mailcap не знайдено"
+ msgid "Scanning %s..."
+ msgstr "Перегляд %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "Читання %s..."
+@@ -3112,13 +3216,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "_maildir_commit_message(): неможливо встановити час для файлу"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "Запис %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3141,7 +3245,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3184,54 +3288,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "Помилка ініціалізації терміналу"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "неможливо визначити ім’я користувача"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "неможливо визначити домашній каталог"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "Помилка: значення \"%s\" некорректне для -d"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "Неможливо розібрати почилання mailto:"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "Отримувачів не вказано"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "Неможливо використовувати -E з stdin"
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "Неможливо відкрити файл повідомлення: %s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s: неможливо додати файл"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "Немає поштової скриньки з новою поштою"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "Вхідних поштових скриньок не вказано"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "Поштова скринька порожня"
+
+@@ -3273,52 +3377,52 @@ msgstr "Не вийшло відкрити поштову скриньку зн
+ msgid "Can't write message"
+ msgstr "Неможливо записати лист"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "Перейти до: "
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "Невірний номер переліку"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "Жодної позицїї"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "Нижче прокручувати неможна"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "Вище прокручувати неможна"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "Це перша сторінка"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "Це остання сторінка"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "Це остання позиція"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "Це перша позиція"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "Шукати вираз:"
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "Зворотній пошук виразу: "
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "Не знайдено"
+
+@@ -3361,20 +3465,20 @@ msgstr "Чекання блокування flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "Некоректний формат файлу історії (рядок %d)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "Неможливо створити тимчасовий файл"
+
+@@ -3393,7 +3497,7 @@ msgstr "Відлагодження з рівнем %d.\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "Відлагодження з рівнем %d.\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "Помилка з’єднання з сервером: %s"
+@@ -3417,17 +3521,17 @@ msgstr "Отримано сигнал %d (%s) ... Виходжу.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "Отримано сигнал %d ... Виходжу.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3435,148 +3539,120 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "Файл є каталогом, зберегти у ньому? (y)так/(n)ні/(a)все"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "Файл є каталогом, зберегти у ньому?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "Файл у каталозі: "
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "Файл існує, (o)переписати/(a)додати до нього/(c)відмовити?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "Неможливо записати лист до скриньки POP"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "Додати листи до %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "Неможливо залишити повідомлення на сервері"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "Користувач у %s: "
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "Пароль для %s@%s: "
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "Команду запиту не визначено"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "Немає відповідного імені, далі?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Спосіб створення, вказаний у mailcap, потребує параметра %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "Не вийшло відкрити файл для розбору заголовку"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "Не вийшло відкрити файл для видалення заголовку"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "Не вдалось перейменувати файл"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "В mailcap не визначено спосіб створення %s, створено порожній файл"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Редагування, вказане у mailcap, потребує %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "В mailcap не визначено редагування %s"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "Не знайдено відомостей у mailcap. Показано як текст."
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "Тип MIME не визначено. Неможливо показати додаток."
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---Команда: %-20.20s Опис: %s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---Команда: %-30.30s Додаток: %s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---Додаток: %s: %s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---Додаток: %s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "Збій запису"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "Не знаю, як це друкувати"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "Пошук"
+
+@@ -3585,21 +3661,21 @@ msgstr "Пошук"
+ msgid "History '%s'"
+ msgstr "Запит \"%s\""
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "Неправильне значення для параметра %s: \"%s\""
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "Не вийшло заблокувати %s\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "Нова пошта в "
+
+@@ -3620,20 +3696,20 @@ msgstr "Кореневий лист не можна побачити при ць
+ msgid "Parent message is not visible in this limited view"
+ msgstr "Батьківський лист не можна побачити при цьому обмеженні"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "Пошук перервано."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "Неможливо додати %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3645,13 +3721,13 @@ msgstr[2] "повідомлення не видалені"
+ msgid "Can't open trash folder"
+ msgstr "Не вдалось відкрити кошик"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+@@ -3659,7 +3735,7 @@ msgstr[0] "Перенести прочитані листи (кількість:
+ msgstr[1] "Перенести прочитані листи (кількість: %d) до %s?"
+ msgstr[2] "Перенести прочитані листи (кількість: %d) до %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+@@ -3667,49 +3743,49 @@ msgstr[0] "Знищити %d видалений листі?"
+ msgstr[1] "Знищити %d видалених листів?"
+ msgstr[2] "Знищити %d видалених листів?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "Перенос прочитаних листів до %s..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "Поштову скриньку не змінено"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d збережено, %d перенесено, %d знищено"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d збережено, %d знищено"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr "Натисніть \"%s\" для зміни можливості запису"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "Використовуйте toggle-write для ввімкнення запису"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "Скриньку помічено незмінюваною. %s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "Поштову скриньку перевірено"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (поточний час: %c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- Результат роботи %s%s --]\n"
+@@ -3718,52 +3794,52 @@ msgstr "[-- Результат роботи %s%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "Паролі видалено з пам’яті"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "Неможливо використовувати PGP/текст з додатками. Використати PGP/MIME?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "Лист не відправлено: неможливо використовувати PGP/текст з додатками"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "Неможливо використовувати PGP/текст з format=flowed. Використати PGP/MIME?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "Лист не відправлено: неможливо використовувати PGP/текст з format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "Виклик PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "Повідомлення не може бути відправленим в текстовому форматі. Використовувати PGP/MIME?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "Лист не відправлено"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "Повідомлення S/MIME без вказазування типу даних не підтрмується"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "Спроба видобування ключів PGP...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "Спроба видобування сертифікатів S/MIME..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3772,7 +3848,7 @@ msgstr ""
+ "[-- Помилка: невідомий протокол multipart/signed %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3781,7 +3857,7 @@ msgstr ""
+ "[-- Помилка: несумісна структура multipart/signed --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3790,7 +3866,7 @@ msgstr ""
+ "[-- Попередження: неможливо перевірити %s/%s підписи. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3798,7 +3874,7 @@ msgstr ""
+ "[-- Наступні дані підписано --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3806,7 +3882,7 @@ msgstr ""
+ "[-- Попередження: неможливо знайти жодного підпису. --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3825,235 +3901,235 @@ msgstr "Виклик S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "Ім’я: "
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "aka: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "Дійсний з: "
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "Дійсний до: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "Тип ключа: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "Використання: "
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "Відбиток: "
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "Сер. номер: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "Виданий: "
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "Підключ: "
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "помилка при ввімкненні протоколу CMS: %s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "помилка при створенні об’єкту даних gpgme: %s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "помилка розміщення об’єкту даних: %s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "помилка позиціонування на початок об’єкта даних: %s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "помилка читання об’єкту даних: %s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "помилка додавання отримувача \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "таємний ключ \"%s\" не знайдено: %s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, fuzzy, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "неоднозначне визначення таємного ключа \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "помилка встановлення таємного ключа \"%s\": %s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "помилка встановлення нотації PKA для підписання: %s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "помилка при шифруванні даних: %s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "помилка при підписуванні даних: %s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as не встановлено, типовий ключ не вказано в ~/.gnupg/gpg.conf"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "Попередження: Один з ключів було відкликано\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "Попередження: Термін дії ключа для підписування збіг "
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "Попередження: Термін дії як мінімум одного ключа вичерпано\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "Попередження: Термін дії підпису збіг "
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "Неможливо перевірити через відсутність ключа чи сертифіката\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "Список відкликаних сертифікатів недосяжний\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "Доступний список відкликаних сертифікатів застарів\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "Вимоги політики не були задоволені\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "Системна помилка"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "Попередження: запис PKA не відповідає адресі відправника: "
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "Адреса відправника перевірена за допомогою PKA: "
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "Попередження: НЕВІДОМО, чи належить даний ключ вказаній особі\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "Попередження: Ключ НЕ НАЛЕЖИТЬ вказаній особі\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "Попередження: НЕМАЄ впевненості, що ключ належить вказаній особі\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "ID ключа "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "створено: "
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "Помилка отримання інформації про ключ з ID %s: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "Хороший підпис від:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*ПОГАНИЙ* підпис від:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "Сумнівний підпис від:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " термін дії збігає: "
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- Початок інформації про підпис --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "Помилка перевірки: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** Початок Опису (підписано: %s) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** Кінець опису ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+ msgstr "[-- Кінець інформації про підпис --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4062,21 +4138,26 @@ msgstr ""
+ "[-- Помилка розшифровування: %s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "Помилка експорта ключа: %s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "Помилка розшифровування чи перевірки підпису: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "Повідомлення PGP розшифровано"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "Помилка копіювання даних\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4084,11 +4165,11 @@ msgstr ""
+ "[-- Початок повідомлення PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Початок блоку відкритого ключа PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4096,19 +4177,19 @@ msgstr ""
+ "[-- Початок повідомлення з PGP підписом --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- Кінець повідомлення PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- Кінець блоку відкритого ключа PGP --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- Кінець повідомлення з PGP підписом --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4116,11 +4197,11 @@ msgstr ""
+ "[-- Помилка: не знайдено початок повідомлення PGP --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- Помилка: не вийшло створити тимчасовий файл --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4128,7 +4209,7 @@ msgstr ""
+ "[-- Наступні дані зашифровано і підписано PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4136,24 +4217,20 @@ msgstr ""
+ "[-- Наступні дані зашифровано PGP/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- Кінець зашифрованих і підписаних PGP/MIME даних --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- Кінець зашифрованих PGP/MIME даних --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "Повідомлення PGP розшифровано"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "Не вийшло розшифрувати повідомлення PGP"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4161,7 +4238,7 @@ msgstr ""
+ "[-- Наступні дані підписано S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4169,34 +4246,34 @@ msgstr ""
+ "[-- Наступні дані зашифровано S/MIME --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- Кінець підписаних S/MIME даних --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- Кінець зашифрованих S/MIME даних --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[Неможливо відобразити ID цього користувача (невідоме кодування)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[Неможливо відобразити ID цього користувача (неправильне кодування)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[Неможливо відобразити ID цього користувача (неправильний DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[Неправильно]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, fuzzy, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+@@ -4205,94 +4282,94 @@ msgstr[1] "%s, %lu біт %s\n"
+ msgstr[2] "%s, %lu біт %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "шифрування"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "підписування"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "сертифікація"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[Відкликано]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[Прострочено]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[Заборонено]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "Збирання даних..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "Помилка пошуку ключа видавця: %s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "Помилка: ланцюжок сертифікації задовгий, зупиняємось\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "ID ключа: 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "помилка gpgme_op_keylist_start: %s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "помилка gpgme_op_keylist_next: %s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "Всі відповідні ключі відмічено як застарілі чи відкликані"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "Вибір "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "Перевірка ключа "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "Відповідні PGP і S/MIME ключі"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "Відповідні PGP ключі"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "Відповідні S/MIME ключі"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "Відповідні ключі"
+
+@@ -4300,59 +4377,59 @@ msgstr "Відповідні ключі"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "Цей ключ неможливо використати: прострочений, заборонений чи відкликаний"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID прострочений, заборонений чи відкликаний. Ви справді бажаєте використовувати ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID недійсний. Ви справді бажаєте використовувати ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID дійсний лише частково. Ви справді бажаєте використовувати ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ #, fuzzy
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "Ступінь довіри для ID не визначена. Ви справді бажаєте використовувати ключ?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "Пошук відповідних ключів \"%s\"..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "Використовувати keyID = \"%s\" для %s?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "Введіть keyID для %s: "
+@@ -4361,16 +4438,16 @@ msgstr "Введіть keyID для %s: "
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "Не знайдено секретних ключів"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "Будь ласка, введіть ID ключа: "
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "Помилка експорта ключа: %s"
+@@ -4378,96 +4455,96 @@ msgstr "Помилка експорта ключа: %s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "Ключ PGP 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME: протокол OpenPGP не доступний"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME: протокол CMS не доступний"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)підп., (a)підп. як, (p)gp, (c)відміна, вимкнути (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)підп., (a)підп. як, s/(m)ime, (c)відміна, вимкнути (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)шифр, (s)підп, (a)підп. як, (b)усе, (p)gp, (c)відм, вимк. (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "esabpco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)підп, (a)підп. як, (b)усе, s/(m)ime, (c)відм, вимк. (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME (e)шифр., (s)підп., (a)підп. як, (b)усе, (p)gp, (c)відміна?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP (e)шифр., (s)підп., (a)підп. як, (b)усе, s/(m)ime, (c)відміна?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "Відправника не перевірено"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "Відправника не вирахувано"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "Введіть кодову фразу PGP:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- Помилка: неможливо створити підпроцес PGP --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4478,15 +4555,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "Повідомлення PGP не зашифровано."
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "Внутрішня помилка. Будь ласка, повідомте розробників."
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4494,129 +4571,129 @@ msgstr ""
+ "[-- Помилка: не вийшло створити підпроцес PGP --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "Помилка розшифровки"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "Неможливо відкрити підпроцесс PGP"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "Не вийшло викликати PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "(i)PGP/текст"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)підп., (a)підп. як, %s, (c)відміна, вимкнути (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saco"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP (s)підп., (a)підп. як, (c)відміна, вимкнути (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)підп, (a)підп. як, (b)усе, %s, (c)відм, вимк. (o)ppenc?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP (e)шифр, (s)підп, (a)підп. як, (b)усе, (c)відм, вимк. (o)ppenc?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP (e)шифр., (s)підп., (a)підп. як, (b)усе, %s, (c)відміна?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP (e)шифр., (s)підп., (a)підп. як, (b)усе, (c)відміна?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "Отримання ключа PGP..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "Всі відповідні ключі прострочено, відкликано чи заборонено"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP ключі, що відповідають <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP ключі, що відповідають \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "Неможливо відкрити /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "Ключ PGP %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "Введіть кодову фразу S/MIME:"
+
+@@ -4625,7 +4702,7 @@ msgstr "Введіть кодову фразу S/MIME:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "Простроч. "
+
+@@ -4634,7 +4711,7 @@ msgstr "Простроч. "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "Неправ. "
+
+@@ -4643,7 +4720,7 @@ msgstr "Неправ. "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "Відклик. "
+
+@@ -4652,7 +4729,7 @@ msgstr "Відклик. "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "Довірені "
+
+@@ -4661,7 +4738,7 @@ msgstr "Довірені "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "Неперевір"
+
+@@ -4670,7 +4747,7 @@ msgstr "Неперевір"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "Перевір. "
+
+@@ -4679,59 +4756,59 @@ msgstr "Перевір. "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "Невідоме "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME сертифікати, що відповідають \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID не є довіреним. Ви справді бажаєте використовувати ключ?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "Введіть keyID: "
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "Немає (правильних) сертифікатів для %s"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "Помилка: неможливо створити підпроцес OpenSSL"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "Позначка сертифікату: "
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "Немає сертифікату"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "скриньки немає"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "Немає виводу від OpenSSL..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "Неможливо підписати: Ключів не вказано. Використовуйте \"Підписати як\"."
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "Неможливо відкрити підпроцесс OpenSSL"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4739,19 +4816,19 @@ msgstr ""
+ "[-- Кінець тексту на виході OpenSSL --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- Помилка: неможливо створити підпроцес OpenSSL --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- Наступні дані зашифровано S/MIME --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- Наступні дані підписано S/MIME --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4759,7 +4836,7 @@ msgstr ""
+ "\n"
+ "[-- Кінець даних, зашифрованих S/MIME --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4768,168 +4845,168 @@ msgstr ""
+ "[-- Кінець підписаних S/MIME даних --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME (s)підп., (w)шифр. з, (a)підп. як, (c)відм., вимкнути (o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME (e)шифр, (s)підп, (w)шифр.з, (a)підп.як, (b)усе, (c)відм, вимк.(o)ppenc?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ #, fuzzy
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME (e)шифр., (s)підп., (w)шифр. з, (a)підп. як, (b)усе, (c)відміна?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ #, fuzzy
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "Виберіть сімейство алгоритмів: (1) DES, (2) RC2, (3) AES, (c)відмінити?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) 3DES?"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr ""
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, fuzzy, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s - неприпустимий шлях POP"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "Сервер закрив з’єднання"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ #, fuzzy
+ msgid "Server doesn't support reader mode"
+ msgstr "SMTP-сервер не підтримує аутентифікації"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "Аутентифікаторів немає."
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "Помилка аутентифікації SASL"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "З’єднання з %s закрито"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "Отримання переліку повідомлень..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "Перевірка наявності нових повідомлень..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "не вдалось записати тимчасову скриньку: %s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "З’єднання з %s..."
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "Нічого робити"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "Неможливо отримати дані %s: %s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "Видалення повідомлень з серверу..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "Реєстрація..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "Перевірка наявності нових повідомлень..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, fuzzy, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s - неприпустимий шлях POP"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -4941,7 +5018,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, fuzzy, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr "Неможливо розібрати почилання mailto:\n"
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6071,187 +6148,187 @@ msgstr "приховати/показати бокову панель"
+ msgid "show S/MIME options"
+ msgstr "показати параметри S/MIME"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "Недоступно у цьому меню"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "ПопСт"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "НастСт"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "Додатки"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "Наст"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "Ви бачите кінець листа"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "Ви бачите початок листа"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "Підказку зараз показано"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "Цитованого тексту більш немає"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "Після цитованого тексту нічого немає"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "Помилка у виразі: %s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "Пустий вираз"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "Команду запиту не визначено"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "Виклик команди автоматичного переглядання: %s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "День \"%s\" в місяці не існує"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "Місяць \"%s\" не існує"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "Неможлива відносна дата: %s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "Немає нечитаних листів."
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "Помилка відкриття поштової скриньки"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "Помилка відкриття поштової скриньки"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "Неможливо відкрити /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "помилка у шаблоні: %s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "відсутній шаблон: %s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "невідповідна дужка: %s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c: невірний модифікатор шаблона"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "в цьому режимі \"%c\" не підтримується"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "відсутній параметр"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "порожній шаблон"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "помилка: невідоме op %d (повідомте цю помилку)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "Компіляція виразу пошуку..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "Виконання команди до відповідних листів..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "Листів, що відповідають критерію, не знайдено"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "Пошук..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "Пошук дійшов до кінця, але не знайдено нічого"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "Пошук дійшов до початку, але не знайдено нічого"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "Пошук перервано"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "Команда TOP не підтримується сервером"
+
+@@ -6259,7 +6336,7 @@ msgstr "Команда TOP не підтримується сервером"
+ msgid "Can't write header to temporary file"
+ msgstr "Неможливо записати заголовок до тимчасового файлу"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "Команда UIDL не підтримується сервером"
+
+@@ -6275,7 +6352,7 @@ msgstr[2] "%d повідомлень втрачено. Спробуйте від
+ msgid "POP host is not defined"
+ msgstr "POP host не визначено"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s - неприпустимий шлях POP"
+@@ -6310,127 +6387,127 @@ msgstr[0] "%s [%d з %d листів прочитано]"
+ msgstr[1] "%s [%d з %d листів прочитано]"
+ msgstr[2] "%s [%d з %d листів прочитано]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "Отримання переліку повідомлень..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "Маркування повідомлень видаленими..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "Неможливо записати повідомлення до тимчасового файлу"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "Аутентифікація (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "Неправильне значення часу POP"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "Аутентифікація (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "Помилка аутентифікації APOP"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "Команда USER не підтримується сервером"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "Помилка аутентифікації SASL"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "Неправильний POP URL: %s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "Неможливо залишити повідомлення на сервері"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "Помилка з’єднання з сервером: %s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "Закриття з’єднання з сервером POP..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "Перевірка індексів повідомлень..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "З’єднання втрачено. Відновити зв’язок з сервером POP?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "Залишені листи"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "Жодного листа не залишено"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "Неправильний заголовок S/MIME"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "Неправильний заголовок шифрування"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "Розшифровка листа..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "Новий запит"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "Створити синонім"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "Чекаємо на відповідь..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "Запит:"
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "Запит \"%s\""
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "Команду запиту не визначено"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "Передати"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "Друк"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "Збереження..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+@@ -6438,26 +6515,26 @@ msgstr[0] "Додаток записано"
+ msgstr[1] "Додаток записано"
+ msgstr[2] "Додаток записано"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "ОБЕРЕЖНО! Ви знищите існуючий %s при запису. Ви певні?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "Додаток відфільтровано"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "Фільтрувати через: "
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "Передати команді: "
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "Невідомо, як друкувати додатки типу %s"
+@@ -6465,7 +6542,7 @@ msgstr "Невідомо, як друкувати додатки типу %s"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+@@ -6473,49 +6550,49 @@ msgstr[0] "Друкувати виділені додатки?"
+ msgstr[1] "Друкувати виділені додатки?"
+ msgstr[2] "Друкувати виділені додатки?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "Друкувати додаток?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "Змінення структури розшифрованих додатків не підтримується"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "Не можу розшифрувати листа"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "Додатки"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "Немає підчастин для проглядання"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "Неможливо видалити додаток з сервера POP"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "Неможливо видалити додаток з сервера POP"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "Видалення додатків з шифрованих листів не підтримується"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "Видалення додатків з підписаних листів може анулювати підпис"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "Підтримується тільки видалення в багаточастинних листах"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "Ви можете надсилати тільки копії частин в форматі message/rfc822"
+
+@@ -6553,7 +6630,7 @@ msgstr "Неможливо створити %s"
+ msgid "Can't find any tagged messages"
+ msgstr "Не знайдено виділених листів"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "Не знайдено списків розсилки"
+
+@@ -6568,67 +6645,67 @@ msgstr "Неможливо декодувати всі виділені дода
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "Ви можете надсилати тільки копії частин в форматі message/rfc822"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "Додати"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "Встав."
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "Ok"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "Неможливо отримати type2.list mixmaster’а"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "Веберіть ланцюжок remailer"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "Помилка: %s неможливо використати як останній remailer ланцюжку"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Ланцюжок не може бути більшим за %d елементів"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "Ланцюжок remailer’а вже порожній"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "Перший елемент ланцюжку вже вибрано"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "Останній елемент ланцюжку вже вибрано"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster не приймає заголовки Cc та Bcc"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "Треба встановити відповідне значення hostname для використання mixmaster"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "Помилка відправки, код повернення %d.\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "Помилка при відправці"
+
+@@ -6658,41 +6735,41 @@ msgstr "Переслати додатки?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "Відповісти %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "Переслати %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "Додати лист до відповіді?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "Цитується повідомлення..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "Не вийшло додати всі бажані листи"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "Переслати як додаток?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "Підготування листа для пересилання..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "Fcc в скриньку на IMAP-сервері не підтримується в пакетному режимі"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "Зберегти додатки в Fcc?"
+
+@@ -6700,195 +6777,195 @@ msgstr "Зберегти додатки в Fcc?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Помилка збереження в Fcc. (r)повторити, (m)інша скринька, (s)пропустити? "
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rms"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc скринька"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "Неможливо відкласти лист. Значення $postponed не встановлено."
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "Викликати залишений лист?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "Редагувати лист перед відправкою?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "Відмінити відправку не зміненого листа?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "Лист не змінено, тому відправку відмінено"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "Лист не відправлено"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "Лист залишено для подальшої відправки"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "Теми немає, відмінити відправку?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "Теми не вказано"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "Теми не вказано"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "змінити спосіб кодування додатку"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "Лист відправляється..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "Не вийшло відправити лист"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "Фонова відправка"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "Лист відправлено"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "Немає параметру межі [сповістіть про цю помилку]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s більше не існує"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s не є звичайним файлом"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "Не вийшло відправити лист."
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "Не вийшло відкрити %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "$sendmail має бути встановленим для відправки пошти"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "Помилка відправки, код повернення %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Вивід процесу доставки"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "Погане IDN %s при підготовці resent-from"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "Помилка сесії SMTP: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "Помилка SMTP: неможливо відкрити %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "Неправильний SMTP URL: %s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "Помилка аутентифікації %s, пробуємо наступний метод"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "Помилка аутентифікації GSSAPI"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP-сервер не підтримує аутентифікації"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "Не вказано адресу From:"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "Помилка сесії SMTP: помилка читання з сокета"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "Помилка сесії SMTP: помилка запису в сокет"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "Неправильна відповідь сервера"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "Сортування поштової скриньки..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "Не знайдено функцію сортування [сповістіть про це]"
+
+@@ -6952,11 +7029,50 @@ msgstr ""
+ "NeoMutt -- програмне забезпечення з відкритим кодом, запрошуємо до розповсюдження\n"
+ "з деякими умовами. Детальніше: neomutt -vv.\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "Параметри компіляції:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "Параметри компіляції:"
++
++#~ msgid "Error creating autocrypt key: %s\n"
++#~ msgstr "Помилка створення ключа autocrypt: %s\n"
++
++#~ msgid "(c)reate new, or (s)elect existing GPG key? "
++#~ msgstr "(c)створити новий або (s)обрати існуючий ключ GPG?"
++
++#~ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic? "
++#~ msgstr "Autocrypt: (e)шифрувати, (c)очистити, (a)автоматично? "
++
++#~ msgid "$send_multipart_alternative_filter is not set"
++#~ msgstr "Значення $send_multipart_alternative_filter не встановлено"
++
++#~ msgid "Generate multipart/alternative content?"
++#~ msgstr "Створити multipart/alternative контент?"
++
++#~ msgid "Missing mime type from output of \"%s\"!"
++#~ msgstr "Відсутній MIME-тип у виводі \"%s\"!"
++
++#~ msgid "Missing blank line separator from output of \"%s\"!"
++#~ msgstr "Відсутній порожній рядок-роздільник у виводі \"%s\"!"
++
++#~ msgid "$send_multipart_alternative_filter does not support multipart type generation"
++#~ msgstr "$send_multipart_alternative_filter не підтримує генерацію типу multipart"
++
++#~ msgid "view multipart/alternative"
++#~ msgstr "переглянути multipart/alternative"
++
++#~ msgid "view multipart/alternative as text"
++#~ msgstr "переглянути multipart/alternative як текст"
++
++#~ msgid "view multipart/alternative using mailcap"
++#~ msgstr "переглянути multipart/alternative з використанням mailcap"
++
++#~ msgid "select a new mailbox from the browser"
++#~ msgstr "обрати нову поштову скриньку"
++
++#~ msgid "select a new mailbox from the browser in read only mode"
++#~ msgstr "обрати нову поштову скриньку лише для читання"
+diff --git a/po/zh_CN.po b/po/zh_CN.po
+index 042c9e627..1c70aca5f 100644
+--- a/po/zh_CN.po
++++ b/po/zh_CN.po
+@@ -15,7 +15,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2019-09-09 09:44-0500\n"
+ "Last-Translator: Mingcong Bai <jeffbai@aosc.io>\n"
+ "Language-Team: i18n-zh <i18n-zh@googlegroups.com>\n"
+@@ -26,16 +26,40 @@ msgstr ""
+ "Plural-Forms: nplurals=1; plural=0;\n"
+ "X-Generator: Poedit 2.2.3\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "拒绝(r),接受一次(o),总是接受(a),跳过(s)"
++
++msgid "roas"
++msgstr "roas"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "拒绝(r),接受一次(o),总是接受(a)"
++
++msgid "roa"
++msgstr "roa"
++
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "拒绝(r),接受一次(o),跳过(s)"
++
++msgid "ros"
++msgstr "ros"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "拒绝(r),接受一次(o)"
++
++msgid "ro"
++msgstr "ro"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "退出"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "删除"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "反删除"
+
+@@ -43,18 +67,18 @@ msgstr "反删除"
+ msgid "Select"
+ msgstr "选择"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "帮助"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "您没有别名信息"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "别名"
+
+@@ -63,51 +87,51 @@ msgstr "别名"
+ msgid "Alias as: "
+ msgstr "取别名为:"
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "您已经为这个名字定义了别名啦"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "警告:此别名可能无法工作。要修正它吗?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "地址:"
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "错误的 IDN:'%s'"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "个人姓名:"
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] 接受?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "存到文件:"
+
+-#: alias.c:503
++#: alias.c:507
+ msgid "Error reading alias file"
+ msgstr "读取别名文件时出错"
+
+-#: alias.c:525
++#: alias.c:529
+ msgid "Trouble adding alias"
+ msgstr "添加别名时出错"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "别名已添加"
+
+-#: alias.c:532
++#: alias.c:536
+ msgid "Error seeking in alias file"
+ msgstr "无法在别名文件里查找"
+
+@@ -116,7 +140,7 @@ msgstr "无法在别名文件里查找"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s 不存在。创建它吗?"
+@@ -125,8 +149,8 @@ msgstr "%s 不存在。创建它吗?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "无法创建 %s:%s"
+@@ -136,7 +160,7 @@ msgstr "无法创建 %s:%s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr "创建一个初始 autocrypt 帐号?"
+
+@@ -145,7 +169,7 @@ msgstr "创建一个初始 autocrypt 帐号?"
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr "Autocrypt 帐号地址:"
+
+@@ -154,7 +178,7 @@ msgstr "Autocrypt 帐号地址:"
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr "请输入一个合法的邮件地址"
+
+@@ -163,7 +187,7 @@ msgstr "请输入一个合法的邮件地址"
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr "该邮件地址已有一个 autocrypt 帐号"
+
+@@ -175,14 +199,14 @@ msgstr "该邮件地址已有一个 autocrypt 帐号"
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ msgid "Prefer encryption?"
+ msgstr "默认开启加密?"
+
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr "Autocrypt 帐号创建成功"
+
+@@ -190,7 +214,7 @@ msgstr "Autocrypt 帐号创建成功"
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr "已中止创建 autocrypt 帐号"
+
+@@ -199,7 +223,7 @@ msgstr "已中止创建 autocrypt 帐号"
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr "未找到可用于 %s 的(有效) autocrypt 密钥"
+@@ -211,12 +235,12 @@ msgstr "未找到可用于 %s 的(有效) autocrypt 密钥"
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr "要扫描信箱内的 autocrypt 头吗?"
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ msgid "Scan mailbox"
+ msgstr "扫描信箱"
+
+@@ -227,21 +251,21 @@ msgstr "扫描信箱"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr "在另一个信箱扫描 autocrypt 报头?"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ msgid "Create"
+ msgstr "创建"
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "删除"
+
+@@ -249,9 +273,9 @@ msgstr "删除"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr "启用/禁用"
+
+@@ -259,17 +283,17 @@ msgstr "启用/禁用"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr "默认开启加密"
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr "默认开启加密"
+
+@@ -278,7 +302,7 @@ msgstr "默认开启加密"
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr "手动加密"
+
+@@ -286,7 +310,7 @@ msgstr "手动加密"
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr "已启用"
+
+@@ -294,12 +318,12 @@ msgstr "已启用"
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr "已禁用"
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr "Autocrypt 帐号"
+
+@@ -307,12 +331,12 @@ msgstr "Autocrypt 帐号"
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ msgid "Error updating account record"
+ msgstr "更新帐号记录出错"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "真的要删除 \"%s\" 帐号吗?"
+@@ -330,7 +354,7 @@ msgstr "真的要删除 \"%s\" 帐号吗?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "无法打开 autocrypt 数据库 %s"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "创建 gpgme 上下文出错:%s"
+@@ -403,464 +427,575 @@ msgstr "Autocrypt 数据库版本太新"
+ msgid "Message cache isn't a directory: %s"
+ msgstr "信件缓存不是一个目录:%s"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "改变目录"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr "转到"
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "掩码"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr "列表"
+
+-#: browser.c:92
++#: browser.c:91
+ msgid "Subscribe"
+ msgstr "已订阅"
+
+-#: browser.c:93
++#: browser.c:92
+ msgid "Unsubscribe"
+ msgstr "退订"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr "跟上"
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s 不是目录"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "已订阅新闻组"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr "新闻组服务器[%s]"
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "信箱 [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "已订阅 [%s], 文件掩码: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "目录 [%s], 文件掩码:%s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "无法附加目录"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "没有文件与文件掩码相符"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 信箱才支持创建"
+
+-#: browser.c:1609
++#: browser.c:1676
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 信箱才支持重命名"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 信箱才支持删除"
+
+-#: browser.c:1642
++#: browser.c:1709
+ msgid "Can't delete currently selected mailbox"
+ msgstr "无法删除当前选中的信箱"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "真的要删除 \"%s\" 信箱吗?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "信箱已删除"
+
+-#: browser.c:1667
++#: browser.c:1734
+ msgid "Mailbox deletion failed"
+ msgstr "信箱删除失败"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "信箱未删除"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "改变目录到:"
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "扫描目录出错"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "文件掩码:"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "按日期(d),字母表(a),大小(z),描述(e),计数(c),新件(w)反向排序或不反向排序(n)?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "按日期(d),字母表(a),大小(z),描述(e),计数(c),新件(w)排序或不排序(n)?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr "dazecwn"
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "新文件名:"
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "无法显示目录"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "尝试显示文件出错"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, c-format
+ msgid "Subscribe pattern: "
+ msgstr "订阅模式:"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "退订模式:"
+
+-#: browser.c:2101
++#: browser.c:2169
+ msgid "No newsgroups match the mask"
+ msgstr "没有新闻组与掩码相符"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s:终端不支持显示颜色"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s:没有这种颜色"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s:没有这个对象"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s:参数太少"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s:没有这个属性"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s:参数太多"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "不支持默认的颜色"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "错误:分数:无效数字"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "验证签名?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "无法创建临时文件"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "无法创建显示过滤器"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "无法复制信件"
+
+-#: commands.c:338
++#: commands.c:340
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME 签名验证成功"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr "S/MIME 证书所有者与发送者不匹配"
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr "警告:此信件的部分内容未签署"
+
+-#: commands.c:345
++#: commands.c:347
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME 签名“无法”验证"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP 签名验证成功"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP 签名“无法”验证"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "执行 \"%s\" 时出错"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "命令:"
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr "警告:信件未包含 From: 信件头"
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ msgid "Bounce message to: "
+ msgstr "重发信件至:"
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ msgid "Bounce tagged messages to: "
+ msgstr "重发已标记的信件至:"
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "解析地址出错"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "重发信件至 %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "信件未重发"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "信件已重发"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "无法创建过滤进程"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "用管道输出至命令:"
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "未定义打印命令"
+
+-#: commands.c:732
++#: commands.c:738
+ msgid "Print message?"
+ msgstr "打印信件?"
+
+-#: commands.c:733
++#: commands.c:739
+ msgid "Print tagged messages?"
+ msgstr "打印已标记的信件?"
+
+-#: commands.c:739
++#: commands.c:745
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "信件已打印"
+
+-#: commands.c:742
++#: commands.c:748
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "信件无法打印"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "按日期(d)/发信人(f)/收信时间(r)/主题(s)/收信人(o)/线索(t)/不排(u)/大小(z)/分数(c)/垃圾邮件(p)/标签(l)反向排序?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "按日期(d)/发信人(f)/收信时间(r)/主题(s)/收信人(o)/线索(t)/不排(u)/大小(z)/分数(c)/垃圾邮件(p)/标签(l)反向排序?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ msgid "dfrsotuzcpl"
+ msgstr "dfrsotuzcpl"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell 指令:"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save to mailbox"
+ msgstr "解码保存到信箱"
+
+-#: commands.c:1036
++#: commands.c:1042
+ msgid "Decode-save tagged to mailbox"
+ msgstr "解码保存已标记的信件到信箱"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save to mailbox"
+ msgstr "解密保存到信箱"
+
+-#: commands.c:1038
++#: commands.c:1044
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "解密保存已标记的信件到信箱"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save to mailbox"
+ msgstr "保存到信箱"
+
+-#: commands.c:1040
++#: commands.c:1046
+ msgid "Save tagged to mailbox"
+ msgstr "保存已标记的信件到信箱"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy to mailbox"
+ msgstr "解码复制到信箱"
+
+-#: commands.c:1045
++#: commands.c:1051
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "解码复制已标记的信件到信箱"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy to mailbox"
+ msgstr "解密复制到信箱"
+
+-#: commands.c:1047
++#: commands.c:1053
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "解密复制已标记的信件到信箱"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy to mailbox"
+ msgstr "复制到信箱"
+
+-#: commands.c:1049
++#: commands.c:1055
+ msgid "Copy tagged to mailbox"
+ msgstr "复制已标记的信件到信箱"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "正在复制到 %s..."
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ msgid "Content type is too long"
+ msgstr "内容类型过长"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "发送时转换为 %s?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "内容类型(Content-Type)改变为 %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "字符集改变为 %s;不进行转换"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "字符集改变为 %s;正在转换"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s:参数太少"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr "-group:无组名称"
++
++#: command_parse.c:404
++msgid "out of arguments"
++msgstr "参数不够"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr "错误:无法构建“%s”的路径"
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr "错误:循环读取配置文件“%s”"
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "%s 发生错误,第 %d 行:%s"
++
++#: command_parse.c:502
++#, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "%s 出现警告,第 %d 行:%s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source:%s 中有错误"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source:读取因 %s 中错误过多而中止"
++
++#: command_parse.c:535
++#, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source:%2$s 中出现 %1$d 个警告"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "别名:没有邮件地址"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "警告:错误的 IDN '%s' 在别名 '%s' 中"
++
++#: command_parse.c:684
++msgid "attachments: no disposition"
++msgstr "附件:无处理方式"
++
++#: command_parse.c:695
++msgid "Current attachments settings:"
++msgstr "当前附件设置:"
++
++#: command_parse.c:725
++msgid "attachments: invalid disposition"
++msgstr "附件:无效的处理方式"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s:参数太多"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr "%sgroup:缺少 -rx 或 -addr"
++
++#: command_parse.c:827
++#, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "%sgroup:警告:错误的 IDN '%s'"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr "错误:%s"
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "无效的信件头域"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s:未知的变量"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s 没有被设定"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source:%s 有错误"
++
++#: command_parse.c:1581
++#, c-format
++msgid "source: file %s could not be sourced"
++msgstr "source:文件 %s 无法被加载"
++
++#: command_parse.c:1604
++msgid "spam: no matching pattern"
++msgstr "垃圾邮件:无匹配的模式"
++
++#: command_parse.c:1606
++msgid "nospam: no matching pattern"
++msgstr "去掉垃圾邮件:无匹配的模式"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, c-format
++msgid "Subscribed to %s"
++msgstr "已订阅 %s"
++
++#: command_parse.c:1766
++#, c-format
++msgid "Could not subscribe to %s"
++msgstr "无法订阅 %s"
++
++#: command_parse.c:1774 command_parse.c:2226
++msgid "No folder specified"
++msgstr "没有指定文件夹"
++
++#: command_parse.c:1943
++msgid "unattachments: no disposition"
++msgstr "去掉附件:无处理方式"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr "去掉附件:无效的处理方式"
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, c-format
++msgid "Unsubscribed from %s"
++msgstr "已退订 %s"
++
++#: command_parse.c:2218
++#, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "无法退订 %s"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "没有附件"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr "From: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr "To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr "Cc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr "Bcc: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr "Subject: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ msgid "Reply-To: "
+ msgstr "回复给: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr "Fcc: "
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr "混合模式:"
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr "安全:"
+
+@@ -871,75 +1006,75 @@ msgstr "安全:"
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "选择身份签署:"
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr "Autocrypt: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr "新闻组:"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ msgid "Followup-To: "
+ msgstr "Followup-To: "
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ msgid "X-Comment-To: "
+ msgstr "X-Comment-To: "
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "寄出"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "中止"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr "发送给"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr "抄送"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr "主题"
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "附加文件"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "描述"
+
+-#: compose.c:226
++#: compose.c:224
+ msgid "Newsgroups"
+ msgstr "新闻组"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr "Off"
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr "No"
+
+@@ -947,7 +1082,7 @@ msgstr "No"
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr "Discouraged"
+
+@@ -955,7 +1090,7 @@ msgstr "Discouraged"
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr "Available"
+
+@@ -963,7 +1098,7 @@ msgstr "Available"
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr "Yes"
+
+@@ -973,7 +1108,7 @@ msgstr "Yes"
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr "Autocrypt: 加密(e),清除(c),自动(a)?"
+
+@@ -981,51 +1116,51 @@ msgstr "Autocrypt: 加密(e),清除(c),自动(a)?"
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr "eca"
+
+-#: compose.c:383
++#: compose.c:382
+ msgid "Not supported"
+ msgstr "不支持"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "签名,加密"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "加密"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "签名"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr "无操作"
+
+-#: compose.c:415
++#: compose.c:414
+ msgid " (inline PGP)"
+ msgstr " (嵌入 PGP)"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr " (PGP/MIME)"
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr " (S/MIME)"
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr "(OppEnc 模式)"
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<默认值>"
+
+-#: compose.c:452
++#: compose.c:451
+ msgid "Encrypt with: "
+ msgstr "加密采用:"
+
+@@ -1034,11 +1169,11 @@ msgstr "加密采用:"
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ msgid "Recommendation: "
+ msgstr "Recommendation: "
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr "没有列表被定义"
+
+@@ -1049,7 +1184,7 @@ msgstr "没有列表被定义"
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] 已不存在"
+@@ -1061,231 +1196,350 @@ msgstr "%s [#%d] 已不存在"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] 已修改。更新编码?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- 附件"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "您不可以删除唯一的附件"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "在 '%s' 中有错误的 IDN:'%s'"
+
+-#: compose.c:1347
++#: compose.c:1407
+ msgid "Attachment is already at top"
+ msgstr "附件已在顶部"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ msgid "The fundamental part can't be moved"
+ msgstr "不能移动基础部分"
+
+-#: compose.c:1363
++#: compose.c:1423
+ msgid "Attachment is already at bottom"
+ msgstr "附件已在底部"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr "组合备选部分需要至少标记两个信件"
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr "组合多语言部分需要至少标记两个信件"
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr "有些部分没有设置 'Content-Language' ,是否继续?"
+
+-#: compose.c:1477
++#: compose.c:1537
+ msgid "Not sending this message"
+ msgstr "未发送此信件"
+
+-#: compose.c:1571
++#: compose.c:1631
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "正在附加已选择的文件..."
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "无法附加 %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "打开信箱并从中附加信件"
+
+-#: compose.c:1616
++#: compose.c:1676
+ msgid "Open newsgroup to attach message from"
+ msgstr "打开新闻组并从中附加信件"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "无法打开信箱 %s"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "这个文件夹中没有信件"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "请标记您要附加的信件"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "无法附加"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "重新编码只对文本附件有效"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "当前附件不会被转换"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "当前附件将被转换"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr "空的 'Content-Language'"
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "无效的编码"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "保存这封信件的副本吗?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ msgid "Send attachment with name: "
+ msgstr "使用什么名字发送附件:"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "重命名为:"
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "无法 stat %s:%s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "新文件:"
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "内容类型(Content-Type)的格式是 base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "未知的内容类型(Content-Type) %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "无法创建文件 %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "目前情况是我们无法加上附件"
+
+-#: compose.c:2073
++#: compose.c:2144
+ msgid "Save (postpone) draft message?"
+ msgstr "要保存(延迟寄出的)信件草稿吗?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "将信件写入到信箱"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "写入信件到 %s ..."
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "信件已写入"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr "未配置 PGP 后端"
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr "已经选择了 S/MIME 。清除并继续?"
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr "未配置 S/MIME 后端"
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr "已经选择了 PGP。清除并继续?"
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr "没有 append-hook 或者 close-hook 无法追加 : %s"
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "无法锁住信箱"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr "正在解压 %s"
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr "不能鉴别这个被压缩文件的内容"
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr "没有找到对应信箱类型的操作 %d"
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, c-format
+ msgid "Compress command failed: %s"
+ msgstr "压缩命令失败:%s"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr "追加操作不支持的信箱类型"
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr "没有一个 close-hook 无法同步一件压缩文件"
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, c-format
+ msgid "Compressing %s"
+ msgstr "正在压缩中 %s"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "正在压缩到 %s..."
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "错误。保留临时文件:%s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "无效的相对日期:%s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "无效的相对日期:%s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "错误:分数:无效数字"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "选项 %s 的值无效:“%ld”"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "无效的月份:%s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "不能从分页器设置或重置选项 %s"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, fuzzy, c-format
++msgid "Option %s may not be empty"
++msgstr "不能从分页器设置或重置选项 %s"
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "错误:分数:无效数字"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "错误:分数:无效数字"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "无效的相对日期:%s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "选项 %s 的值无效:“%ld”"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "错误:变量'%s'对于 -d 来说无效"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s:未知的变量"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "无效的相对日期:%s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "无效的相对日期:%s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "在 %s 的用户名:"
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s 的密码:"
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++msgid "No OAUTH refresh command defined"
++msgstr "OAUTH 刷新命令未定义"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr "无法运行刷新命令"
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr "命令返回了空字符串"
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1306,7 +1560,7 @@ msgstr "正在连接到 %s..."
+ msgid "Could not connect to %s (%s)"
+ msgstr "无法连接到 %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "未知错误"
+
+@@ -1320,23 +1574,23 @@ msgstr "与 %s 通话出错(%s)"
+ msgid "Connection to %s has been aborted"
+ msgstr "到 %s 的连接已关闭"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr "未知的 SASL 配置"
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ msgid "Error allocating SASL connection"
+ msgstr "分配 SASL 连接时出错"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr "设置 SASL 安全属性时出错"
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr "设置 SASL 外部安全强度时出错"
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr "设置 SASL 外部用户名时出错"
+
+@@ -1349,132 +1603,108 @@ msgstr "预连接命令失败"
+ msgid "Connection to %s closed"
+ msgstr "到 %s 的连接已关闭"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr "正在填充熵池:%s..."
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s 有不安全的访问许可"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr "SSL 因缺少足够的熵而被禁用"
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "未知"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "[无法计算]"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "[无效日期]"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "服务器证书尚未有效"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "服务器证书已过期"
+
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr "在您的系统上查找足够的熵时失败"
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ msgid "can't get certificate subject"
+ msgstr "无法获取证书主题"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ msgid "can't get certificate common name"
+ msgstr "无法获取证书通用名称"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr "证书所有者与主机名称 %s 不匹配"
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "此证书属于:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "此证书发布自:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "此证书有效"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " 来自 %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " 发往 %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "SHA1 指纹:%s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ msgid "SHA256 Fingerprint: "
+ msgstr "SHA256 指纹:"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
+ #, c-format
+ msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+ msgstr "SSL 证书检查 (检查链中有 %zu 个证书,共 %zu 个)"
+
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr "roas"
+-
+-#: conn/ssl.c:968
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "拒绝(r),接受一次(o),总是接受(a),跳过(s)"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "拒绝(r),接受一次(o),总是接受(a)"
+-
+-#: conn/ssl.c:975
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "拒绝(r),接受一次(o),跳过(s)"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "拒绝(r),接受一次(o)"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "退出 "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "警告:无法保存证书"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "证书已保存"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "证书主机检查失败:%s"
+@@ -1482,15 +1712,15 @@ msgstr "证书主机检查失败:%s"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr "警告:无法设置 TLS SNI 主机名"
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr "输入输出(I/O)出错"
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, c-format
+ msgid "SSL failed: %s"
+ msgstr "SSL 失败:%s"
+@@ -1498,89 +1728,73 @@ msgstr "SSL 失败:%s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ msgid "Unable to create SSL context"
+ msgstr "无法创建 SSL 上下文"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr "警告:启用 ssl_verify_partial_chains 出错"
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "无法从对端获得证书"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr "证书验证错误 (%s)"
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ msgid "Certificate is not X.509"
+ msgstr "证书不是 X.509"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ msgid "Error initialising gnutls certificate data"
+ msgstr "无法初始化 gnutls 证书数据"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr "处理证书数据出错"
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "警告:服务器证书尚未有效"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ msgid "WARNING: Server certificate has expired"
+ msgstr "警告:服务器证书已过期"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "警告:服务器证书已吊销"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr "警告:服务器主机名与证书不匹配"
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "警告:服务器证书签署者不是证书颁发机构(CA)"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr "警告:服务器证书是使用不安全的算法签署的"
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "roa"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "ro"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr "所有用于 TLS/SSL 连接的可用协议已禁用"
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr "通过 $ssl_ciphers 明确选择密码套件是不支持的"
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "使用 %s 的 SSL/TLS 连接 (%s/%s/%s)"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr "错误:没有打开 TLS 套接字"
+
+@@ -1599,39 +1813,17 @@ msgstr "与 %s 通话时隧道错误:%s"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr "通过隧道连接 %s 时返回错误 %d (%s)"
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] "长度计算错误,偏差 %ld 字节"
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr "对于信件没有解密引擎"
+
+-# Don't translate this!!
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr "yes"
+-
+-# Don't translate this!!
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr "no"
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "退出 NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "按任意键继续..."
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (按'?'显示列表):"
+-
+-#: edit.c:64
++#: edit.c:62
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+ "~b users add users to the Bcc: field\n"
+@@ -1653,7 +1845,7 @@ msgstr ""
+ "~M 信件 类似 ~m, 除了包含信件头\n"
+ "~p 打印这封信件\n"
+
+-#: edit.c:75
++#: edit.c:73
+ msgid ""
+ "~q write file and quit editor\n"
+ "~r file read a file into the editor\n"
+@@ -1675,20 +1867,20 @@ msgstr ""
+ "~? 本消息\n"
+ ". 如果是一行里的唯一字符,则代表结束输入\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d:无效的信件编号。\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(在一行里输入一个 . 符号来结束信件)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "没有信箱。\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "信件包含:\n"
+
+@@ -1696,19 +1888,19 @@ msgstr "信件包含:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(继续)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "缺少文件名。\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "信件中一行也没有。\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s:未知的编辑器命令(~? 求助)\n"
+@@ -1755,19 +1947,75 @@ msgstr "无法添加到文件夹末尾:%s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "多部份信件没有边界参数"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "线索功能尚未启用"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "设定标记"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "清除标记"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s:终端不支持显示颜色"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s:没有这种颜色"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s:没有这个对象"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s:没有这个属性"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "不支持默认的颜色"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "错误:分数:无效数字"
++
++# Don't translate this!!
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr "yes"
++
++# Don't translate this!!
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr "no"
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "退出 NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "按任意键继续..."
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (按'?'显示列表):"
++
+ #: handler.c:102
+ #, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1788,23 +2036,23 @@ msgstr "[-- 使用 %s 自动显示 --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "执行自动显示指令:%s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "无法建立过滤器"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- 无法运行 %s --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- 自动显示的 %s 输出到标准错误(stderr)的内容 --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- 错误:message/external-body 没有访问类型参数 --]\n"
+
+@@ -1823,7 +2071,7 @@ msgstr "[-- 错误:message/external-body 没有访问类型参数 --]\n"
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1849,7 +2097,7 @@ msgstr[0] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1862,7 +2110,7 @@ msgstr[0] "[-- 此 %s/%s 附件 (大小 %s 字节) 已经被删除 --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+ "[-- on %4$s --]\n"
+@@ -1873,12 +2121,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- 此 %s/%s 附件 已经被删除 --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- 名称:%s --]\n"
+@@ -1886,7 +2134,7 @@ msgstr "[-- 名称:%s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1902,7 +2150,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1911,91 +2159,91 @@ msgstr ""
+ "[-- 此 %s/%s 附件未被包含, --]\n"
+ "[-- 并且其标明的访问类型 %s 不被支持 --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- 错误:无法显示 Multipart/Alternative 的任何部分! --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- 附件 #%d:%s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- 附件 #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr "本信件的一个或多个部分无法显示"
+
+-#: handler.c:1320
++#: handler.c:1319
+ msgid "Unable to open 'memory stream'"
+ msgstr "无法打开内存流临时文件"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "无法打开临时文件"
+
+-#: handler.c:1379
++#: handler.c:1378
+ msgid "failed to re-open 'memory stream'"
+ msgstr "无法重新打开内存流临时文件"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "错误:multipart/signed 没有协议"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- 这是一个附件 (使用 '%s' 来显示这部份) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s 尚未支持 (使用 '%s' 来显示这部份) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- 这是一个附件 (需要将 'view-attachments' 绑定到键!) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s 尚未支持 (需要将 'view-attachments' 绑定到键!) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- 这是一个附件 --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s 尚未支持 --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "错误:请报告这个问题"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<未知>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "通用绑定:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "未绑定的功能:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s 的帮助"
+@@ -2012,41 +2260,41 @@ msgstr "信箱快捷键扩展到空白的正则表达式"
+ msgid "badly formatted command string"
+ msgstr "命令字符串格式错误"
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook:无法在一个钩子里进行 unhook * 操作"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook:未知钩子类型:%s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook:无法从 %2$s 中删除 %1$s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s:没有这个菜单"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s:该菜单无绑定"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s:该菜单无宏"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "无法创建临时文件 %s"
+@@ -2083,28 +2331,28 @@ msgstr "GSSAPI 认证失败"
+ msgid "LOGIN disabled on this server"
+ msgstr "LOGIN 在此服务器已禁用"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "登录中..."
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "登录失败"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "正在验证 (OAUTHBEARER)..."
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER 认证失败"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "认证中 (%s)..."
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL 认证失败"
+
+@@ -2151,130 +2399,120 @@ msgstr "重命名失败:%s"
+ msgid "Mailbox renamed"
+ msgstr "信箱已重命名"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "信箱 %s@%s 已关闭"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, c-format
+ msgid "Connection to %s timed out"
+ msgstr "到 %s 的连接已超时"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "这个 IMAP 服务器已过时,NeoMutt 无法与之工作"
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr "无信件头名的信件头搜索:%s"
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr "服务器端的自定义搜索不被支持:%s"
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, c-format
+ msgid "CREATE failed: %s"
+ msgstr "CREATE(创建)失败:%s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "正在关闭到 %s 的连接..."
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "使用 TLS 安全连接?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "无法协商 TLS 连接"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ msgid "Encrypted connection unavailable"
+ msgstr "加密连接不可用"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "正在订阅 %s..."
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "正在退订 %s..."
+
+-#: imap/imap.c:1430 init.c:2142
+-#, c-format
+-msgid "Subscribed to %s"
+-msgstr "已订阅 %s"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "已退订 %s"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "正在复制 %d 封信件到 %s ..."
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "创建 %s 吗?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "执行删除失败"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+ msgstr[0] "正在标记 %d 封信件为已删除..."
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "正在保存已改变的信件... [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr "保存标记出错。仍然关闭吗?"
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ msgid "Error saving flags"
+ msgstr "保存标记时出错"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "正在服务器上执行信件删除..."
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr "imap_sync_mailbox:EXPUNGE(执行删除)失败"
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "正在选择 %s..."
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "打开信箱时出错"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr "IMAP 服务器不支持自定义标记"
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ msgid "Invalid IMAP flags"
+ msgstr "无效的 IMAP 标记"
+
+@@ -2284,7 +2522,7 @@ msgid "Abort download and close mailbox?"
+ msgstr "要中止下载并关闭信箱吗?"
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "内存不足"
+
+@@ -2302,7 +2540,7 @@ msgstr "正在取回标记更新..."
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "无法取回此版本的 IMAP 服务器的信件头"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ msgid "Fetching message headers..."
+ msgstr "正在取回信件信件头..."
+
+@@ -2315,152 +2553,152 @@ msgstr "正在上传信件..."
+ msgid "Copying message %d to %s..."
+ msgstr "正在复制信件 %d 到 %s ..."
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "正在取回信件..."
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "信件索引不正确。请尝试重新打开信箱"
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "继续?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "离开"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "保存"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "信件"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "回复"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "群组"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr "发表"
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ msgid "Followup"
+ msgstr "回帖"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "没有已打开信箱"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "没有信件"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "无可见信件"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "信箱是只读的"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "功能在附加信件(attach-message)模式下不被支持"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr "无法 %s:操作不被访问控制列表(ACL)所允许"
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "无法在只读信箱切换可写"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "在退出文件夹后将会把改变写入文件夹"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "将不会把改变写入文件夹"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s 不是信箱"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "信箱已有外部修改。标记可能有错误。"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "此信箱中有新邮件"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "信箱已有外部修改"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "没有已标记的信件"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ msgid "Nothing to do"
+ msgstr "无事可做"
+
+-#: index.c:1470
++#: index.c:1475
+ msgid "Enter Message-Id: "
+ msgstr "请输入信件 ID:"
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr "帖子没有父索引"
+
+-#: index.c:1504
++#: index.c:1510
+ msgid "Message is not visible in limited view"
+ msgstr "信件在此限制视图中不可见"
+
+-#: index.c:1508
++#: index.c:1514
+ #, c-format
+ msgid "Fetching %s from server..."
+ msgstr "正在从服务器上取回 %s..."
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr "帖子 %s 没有在服务器上找到"
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr "没有信件 ID。无法执行操作"
+
+-#: index.c:1623
++#: index.c:1629
+ msgid "No deleted messages found in the thread"
+ msgstr "在该线程中没有发现被删除的信件"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "跳到信件:"
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "参数必须是信件编号"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "无效的信件编号"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "这封信件不可见"
+
+@@ -2473,37 +2711,37 @@ msgstr "这封信件不可见"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ msgid "Can't delete messages"
+ msgstr "无法删除信件"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "删除符合此模式的信件:"
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "当前没有限制模式起作用"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "限制:%s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "限制到符合此模式的信件:"
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr "要查看所有信件,请将限制设为 \"all\""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "离开 NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "标记符合此模式的信件:"
+
+@@ -2511,195 +2749,195 @@ msgstr "标记符合此模式的信件:"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ msgid "Can't undelete messages"
+ msgstr "不能反删除信件"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "反删除符合此模式的信件:"
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "反标记符合此模式的信件:"
+
+-#: index.c:1989
++#: index.c:1996
+ msgid "Logged out of IMAP servers"
+ msgstr "已从 IMAP 服务器退出"
+
+-#: index.c:2105
++#: index.c:2113
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "没有虚拟文件夹及 Message-Id,正在中止"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr "无法创建查询,正在中止"
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr "无法读取线索,正在中止"
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr "文件夹不支持标签,正在终止"
+
+-#: index.c:2188
++#: index.c:2196
+ msgid "No tag specified, aborting"
+ msgstr "没有特殊标签,正在中止"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr "更新标签中..."
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr "无法修改标签,正在中止"
+
+-#: index.c:2284
++#: index.c:2293
+ msgid "No query, aborting"
+ msgstr "没有查询,正在中止"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr "窗口查询已禁用"
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr "现在没有加载 notmuch 虚拟文件夹"
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "用只读模式打开信箱"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "打开信箱"
+
+-#: index.c:2386
++#: index.c:2411
+ msgid "No mailboxes have new mail"
+ msgstr "没有信箱有新信件"
+
+-#: index.c:2419
++#: index.c:2444
+ msgid "Open newsgroup in read-only mode"
+ msgstr "用只读模式打开新闻组"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr "打开新闻组"
+
+-#: index.c:2538
++#: index.c:2564
+ msgid "Exit NeoMutt without saving?"
+ msgstr "不保存便退出 NeoMutt 吗?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ msgid "Can't break thread"
+ msgstr "不能中断线索"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr "线索有误"
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr "无法打破线索,信件不是该线索的一部分"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr "无法链接线索"
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr "无 Message-ID: 信件头可用于链接线索"
+
+-#: index.c:2608
++#: index.c:2634
+ msgid "First, please tag a message to be linked here"
+ msgstr "首先,请标记一封信件以链接于此"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr "线索已链接"
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr "无线索来链接"
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "您已经在最后一封信了"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "没有要反删除的信件"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "您已经在第一封信了"
+
+-#: index.c:2874
++#: index.c:2900
+ msgid "No new messages in this limited view"
+ msgstr "没有新的信件在此限制视图中"
+
+-#: index.c:2876
++#: index.c:2902
+ msgid "No new messages"
+ msgstr "没有新信件"
+
+-#: index.c:2881
++#: index.c:2907
+ msgid "No unread messages in this limited view"
+ msgstr "在此限制视图中没有未读信件"
+
+-#: index.c:2883
++#: index.c:2909
+ msgid "No unread messages"
+ msgstr "没有尚未读取的信件"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "搜寻从开头重新开始"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "搜寻从结尾重新开始"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ msgid "Can't flag message"
+ msgstr "无法标记信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr "无法切换新信件标记"
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "没有更多的线索"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "您在第一个线索上"
+
+-#: index.c:3156
++#: index.c:3182
+ msgid "Thread contains unread or flagged messages"
+ msgstr "线索中有尚未读取或者被标记的信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ msgid "Can't delete message"
+ msgstr "无法删除信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ msgid "Can't edit message"
+ msgstr "无法编辑信件"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2708,7 +2946,7 @@ msgstr[0] "已改变 %d 封信件的标签"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ msgid "No labels changed"
+ msgstr "没有标签改变"
+
+@@ -2716,274 +2954,140 @@ msgstr "没有标签改变"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ msgid "Can't mark messages as read"
+ msgstr "无法标记信件为已读"
+
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ msgid "Enter macro stroke: "
+ msgstr "请输入宏按键:"
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ msgid "message hotkey"
+ msgstr "信件热键"
+
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, c-format
+ msgid "Message bound to %s"
+ msgstr "信件已重发给 %s"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ msgid "No message ID to macro"
+ msgstr "没有可标记的信件 ID"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr "按发帖人的偏好通过邮件回复?"
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr "不允许在这个组里发帖,帖子可能会被审核,继续?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ msgid "Can't undelete message"
+ msgstr "不能反删除信件"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "命令行有错:%s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "命令行有错:%s"
+
+-#: init.c:426
++#: init.c:336
+ msgid "unable to determine nodename via uname()"
+ msgstr "无法通过 uname() 确定节点名称"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr "-group:无组名称"
+-
+-#: init.c:590
+-msgid "out of arguments"
+-msgstr "参数不够"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr "错误:无法构建“%s”的路径"
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr "错误:循环读取配置文件“%s”"
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "%s 发生错误,第 %d 行:%s"
+-
+-#: init.c:861
+-#, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "%s 出现警告,第 %d 行:%s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source:%s 中有错误"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source:读取因 %s 中错误过多而中止"
+-
+-#: init.c:894
+-#, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source:%2$s 中出现 %1$d 个警告"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "别名:没有邮件地址"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "警告:错误的 IDN '%s' 在别名 '%s' 中"
+-
+-#: init.c:1043
+-msgid "attachments: no disposition"
+-msgstr "附件:无处理方式"
+-
+-#: init.c:1054
+-msgid "Current attachments settings:"
+-msgstr "当前附件设置:"
+-
+-#: init.c:1084
+-msgid "attachments: invalid disposition"
+-msgstr "附件:无效的处理方式"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr "%sgroup:缺少 -rx 或 -addr"
+-
+-#: init.c:1186
+-#, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "%sgroup:警告:错误的 IDN '%s'"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr "错误:%s"
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "无效的信件头域"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s:未知的变量"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s 没有被设定"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source:%s 有错误"
+-
+-#: init.c:1961
+-#, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "source:文件 %s 无法被加载"
+-
+-#: init.c:1984
+-msgid "spam: no matching pattern"
+-msgstr "垃圾邮件:无匹配的模式"
+-
+-#: init.c:1986
+-msgid "nospam: no matching pattern"
+-msgstr "去掉垃圾邮件:无匹配的模式"
+-
+-#: init.c:2146
+-#, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "无法订阅 %s"
+-
+-#: init.c:2154 init.c:2632
+-msgid "No folder specified"
+-msgstr "没有指定文件夹"
+-
+-#: init.c:2341
+-msgid "unattachments: no disposition"
+-msgstr "去掉附件:无处理方式"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr "去掉附件:无效的处理方式"
+-
+-#: init.c:2624
+-#, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "无法退订 %s"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s:未知命令"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr "“charset”值只能包含单个字符集名称"
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "选项 %s 的值无效:%s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr "不能从分页器设置或重置选项 %s"
+
+-#: init.c:3928
++#: init.c:1679
+ #, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "在附加信件(attach-message)模式下不能设置 %s 选项"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr "绑定 '%s' 将会为 '%s' 设置别名,在这之前,请尝试:'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "检测到宏中有回环"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "此键还未绑定功能"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "此键还未绑定功能。按 '%s' 以获得帮助信息"
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s:空的键值序列"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr "函数 '%s' 不可用对于菜单 '%s'"
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro:空的键值序列"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec:无参数"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s:没有这样的函数"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ msgid "Enter keys (^G to abort): "
+ msgstr "请按键 (按 ^G 中止):"
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr "字符 = %s, 八进制 = %o, 十进制 = %d"
+@@ -3007,7 +3111,7 @@ msgstr "没有发现类型 %s 的 mailcap 纪录"
+ msgid "Scanning %s..."
+ msgstr "正在扫描 %s..."
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "正在读取 %s..."
+@@ -3021,13 +3125,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr "md_commit_message():无法给文件设置时间"
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "正在写入 %s..."
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3068,7 +3172,7 @@ msgstr ""
+ " neomutt -v[v]\n"
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3147,54 +3251,54 @@ msgstr ""
+ " -Z 打开第一个有新信件的信箱,如果一个也没有的话立即退出并返回 1\n"
+ " -z 打开非空的第一个或 (-f) 指定的信箱否则立即退出并返回 1"
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "初始化终端时出错"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "无法确定用户名"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "无法确定用户主目录"
+
+-#: main.c:640
++#: main.c:572
+ #, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "错误:变量'%s'对于 -d 来说无效"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr "解析 mailto: 链接失败"
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "没有指定接收者"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr "无法使用 -E 选项在stdin情况下"
+
+-#: main.c:1007
++#: main.c:938
+ #, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "无法解析信件模板:%s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s:无法附加文件"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "没有信箱有新信件"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "未定义收信信箱"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "信箱是空的"
+
+@@ -3236,52 +3340,52 @@ msgstr "无法重开信箱"
+ msgid "Can't write message"
+ msgstr "无法写入信件"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "跳到:"
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "无效的索引编号"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "没有条目"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "您无法再向下滚动了"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "您无法再向上滚动了"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "您现在在第一页"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "您现在在最后一页"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "您现在在最后一项"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "您现在在第一项"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "搜寻:"
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "返向搜寻:"
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "没有找到"
+
+@@ -3324,20 +3428,20 @@ msgstr "正在等待尝试 flock... %d"
+ msgid "Bad history file format (line %d)"
+ msgstr "错误的历史文件格式 (第 %d 行)"
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "无法创建临时文件"
+
+@@ -3356,7 +3460,7 @@ msgstr "正在使用级别 %d 进行调试,输出到文件 '%s'"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "正在使用级别 %d 记录日志到文件 '%s'"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ msgid "Error: converting path to absolute"
+ msgstr "错误:转化路径到绝对路径"
+
+@@ -3379,17 +3483,17 @@ msgstr "捕捉到信号 %d (%s) ... 正在退出。\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "捕捉到信号 %d ... 正在退出。\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr "mutt_randbuf buflen=%zu"
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr "打开 /dev/urandom:%s"
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr "读取 /dev/urandom:%s"
+@@ -3397,146 +3501,119 @@ msgstr "读取 /dev/urandom:%s"
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "文件是一个目录,在其下保存吗?是(y), 否(n), 全部(a)"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr "yna"
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "文件是一个目录,在其下保存吗?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "在目录下的文件:"
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "文件已经存在, 覆盖(o), 附加(a), 或取消(c)?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "oac"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "无法将信件保存到 POP 信箱"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "附加信件到 %s 末尾?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ msgid "Can't save message to news server"
+ msgstr "无法将信件保存到新闻服务器"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "在 %s 的用户名:"
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s 的密码:"
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-msgid "No OAUTH refresh command defined"
+-msgstr "OAUTH 刷新命令未定义"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr "无法运行刷新命令"
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr "命令返回了空字符串"
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "无法匹配名称模板,继续?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap 撰写条目需要 %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "为分析信件头而打开文件时失败"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "为去除信件头而打开文件时失败"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ msgid "Failure to rename file"
+ msgstr "重命名文件失败"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "没有 %s 的 mailcap 撰写条目,正在创建空文件"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "Mailcap 编辑条目需要 %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "没有 %s 的 mailcap 编辑条目"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "没有发现匹配的 mailcap 条目。以文本方式显示"
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME 类型未定义。无法显示附件"
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr "---命令:%-20.20s 描述:%s"
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr "---命令:%-30.30s 附件:%s"
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "---附件:%s:%s"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, c-format
+ msgid "---Attachment: %s"
+ msgstr "---附件:%s"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "写入出错"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "我不知道要如何打印它"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "搜索"
+
+@@ -3545,21 +3622,21 @@ msgstr "搜索"
+ msgid "History '%s'"
+ msgstr "记录 '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "选项 %s 的值无效:“%ld”"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr "错误:无法加载 lua 解释器"
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "无法读取 Lua 源码:%s"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ msgid "New mail in "
+ msgstr "有新信件在 "
+
+@@ -3580,20 +3657,20 @@ msgstr "根信件在此限制视图中不可见"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "父信件在此限制视图中不可见"
+
+-#: mx.c:387
++#: mx.c:385
+ #, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "读取 %s 已中断..."
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, c-format
+ msgid "Unable to write %s"
+ msgstr "无法写入 %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+ msgstr[0] "信件未被删除"
+@@ -3602,67 +3679,67 @@ msgstr[0] "信件未被删除"
+ msgid "Can't open trash folder"
+ msgstr "无法打开回收站"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr "标记所有的帖子为已读?"
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "移动 %d 封已读取的信件到 %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "清除 %d 封已经被删除的信件?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "正在搬移已经读取的信件到 %s ..."
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "信箱没有改变"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "保留 %d 封,移动 %d 封,删除 %d 封"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "保留 %d 封,删除 %d 封"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " 请按下 '%s' 来切换写入"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "请使用 'toggle-write' 来重新启用写入"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "信箱已标记为不可写。%s"
+
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr "信箱已检查"
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr " (当前时间:%c)"
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- %s 输出如下%s --]\n"
+@@ -3671,52 +3748,52 @@ msgstr "[-- %s 输出如下%s --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ msgid "Passphrases forgotten"
+ msgstr "已忘记通行密码"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr "嵌入 PGP 不支持附件。回到使用 PGP/MIME 吗?"
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr "信件无法发送:嵌入 PGP 不能用于附件"
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr "嵌入 PGP 不支持 format=flowed。回到使用 PGP/MIME 吗?"
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr "信件无法发送:嵌入 PGP 不能用于 format=flowed"
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "正在调用 PGP..."
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr "无法将信件嵌入发送。回到使用 PGP/MIME 吗?"
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "信件没有寄出"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr "不支持没有内容提示的 S/MIME 消息"
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr "正在尝试提取 PGP 密钥...\n"
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr "正在尝试提取 S/MIME 证书..."
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3725,7 +3802,7 @@ msgstr ""
+ "[-- 错误:未知的 multipart/signed 协议 %s! --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+ "\n"
+@@ -3733,7 +3810,7 @@ msgstr ""
+ "[-- 错误:缺失或格式错误的 multipart/signed 签名! --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3742,7 +3819,7 @@ msgstr ""
+ "[-- 警告:我们不能证实 %s/%s 签名。 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ msgid ""
+ "[-- The following data is signed --]\n"
+ "\n"
+@@ -3750,7 +3827,7 @@ msgstr ""
+ "[-- 以下数据已签署 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3758,7 +3835,7 @@ msgstr ""
+ "[-- 警告:找不到任何的签名。 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ msgid ""
+ "\n"
+ "[-- End of signed data --]\n"
+@@ -3777,229 +3854,229 @@ msgstr "正在调用 S/MIME..."
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr "名称:"
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr "亦即:"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid From: "
+ msgstr "从此有效:"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Valid To: "
+ msgstr "有效至:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr "密钥类型:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr "密钥用法:"
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ msgid "Fingerprint: "
+ msgstr "指纹:"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr "序列号:"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr "发放者:"
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Subkey: "
+ msgstr "子密钥:"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr "开启 CMS 协议时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "创建 gpgme 数据对象时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, c-format
+ msgid "error allocating data object: %s"
+ msgstr "分配数据对象时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "倒回数据对象时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr "[临时文件]"
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, c-format
+ msgid "error reading data object: %s"
+ msgstr "读取数据对象时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "添加收件人“%s”时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr "未找到密钥'%s':%s"
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr "密钥 '%s' 的说明有歧义\n"
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr "设置密钥'%s'时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "设置公钥认证(PKA)签名注释时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, c-format
+ msgid "error encrypting data: %s"
+ msgstr "加密数据时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, c-format
+ msgid "error signing data: %s"
+ msgstr "签署数据时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr "$pgp_sign_as 没有设置并且 ~/.gnupg/gpg.conf 没有指定默认密钥"
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr "警告:密钥中有一个已经被吊销\n"
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr "警告:用来创建签名的密钥已于此日期过期:"
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "警告:至少有一个证书密钥已过期\n"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr "警告:签名已于此日期过期:"
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr "由于缺少密钥或证书而无法验证\n"
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ msgid "The CRL is not available\n"
+ msgstr "证书吊销列表(CRL)不可用\n"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr "可用的证书吊销列表(CRL)太旧\n"
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr "未满足策略要求\n"
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr "发生系统错误"
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr "警告:公钥认证(PKA)项与发送者地址不匹配:"
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr "公钥认证(PKA)确认的发送者地址为:"
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr "警告:我们“无法”证实密钥是否属于上面列出名字的人\n"
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr "警告:密钥“不属于”上面列出名字的人\n"
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr "警告:“无法”确定密钥属于上面列出名字的人\n"
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr "KeyID "
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr "无可用签名指纹"
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ msgid "created: "
+ msgstr "创建于:"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr "获取密钥 ID %s 的密钥信息出错:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr "正确的签名来自:"
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr "*错误*的签名来自:"
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr "有问题的签名来自:"
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr " 已于此日期过期:"
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr "[-- 签名信息开始 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "错误:验证失败:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr "*** 注释开始 (由 %s 签署) ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr "*** 注释结束 ***\n"
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ msgid ""
+ "[-- End signature information --]\n"
+ "\n"
+@@ -4007,7 +4084,7 @@ msgstr ""
+ "[-- 签名信息结束 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+@@ -4016,21 +4093,26 @@ msgstr ""
+ "[-- 错误:解密失败:%s --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, c-format
+ msgid "Error importing key: %s"
+ msgstr "导入密钥时出错:%s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr "错误:解密/验证失败:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++msgid "PGP message successfully decrypted"
++msgstr "PGP 信件成功解密"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr "错误:复制数据失败\n"
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4038,11 +4120,11 @@ msgstr ""
+ "[-- PGP 消息开始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公钥块开始 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4050,19 +4132,19 @@ msgstr ""
+ "[-- PGP 签署的信件开始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr "[-- PGP 消息结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公钥块结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr "[-- PGP 签署的信件结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4070,11 +4152,11 @@ msgstr ""
+ "[-- 错误:找不到 PGP 消息的开头! --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- 错误:无法创建临时文件! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+ "\n"
+@@ -4082,7 +4164,7 @@ msgstr ""
+ "[-- 以下数据已由 PGP/MIME 签署并加密 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4090,24 +4172,20 @@ msgstr ""
+ "[-- 以下数据已由 PGP/MIME 加密 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr "[-- PGP/MIME 签署并加密的数据结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr "[-- PGP/MIME 加密数据结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP 信件成功解密"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ msgid "Could not decrypt PGP message"
+ msgstr "无法解密 PGP 信件"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+ "\n"
+@@ -4115,7 +4193,7 @@ msgstr ""
+ "[-- 以下数据已由 S/MIME 签署 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+ "\n"
+@@ -4123,128 +4201,128 @@ msgstr ""
+ "[-- 以下数据已由 S/MIME 加密 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr "[-- S/MIME 签署的数据结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr "[-- S/MIME 加密的数据结束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr "[无法显示用户 ID (未知编码)]"
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr "[无法显示用户 ID (无效编码)]"
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr "[无法显示用户 ID (无效 DN)]"
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ msgid "[Invalid]"
+ msgstr "[无效]"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+ msgstr[0] "%s,%lu 位 %s\n"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ msgid "encryption"
+ msgstr "加密"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ", "
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr "正在签署"
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ msgid "certification"
+ msgstr "证书"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr "[已吊销]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ msgid "[Expired]"
+ msgstr "[已过期]"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr "[已禁用]"
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ msgid "Collecting data..."
+ msgstr "正在收集数据..."
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "查找发放者密钥出错:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "错误:证书链过长 - 就此打住\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "密钥 ID:0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr "gpgme_op_keylist_start 失败:%s"
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr "gpgme_op_keylist_next 失败:%s"
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "所有符合的密钥都被标记为过期/吊销"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "选择 "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "检查密钥 "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP 和 S/MIME 密钥匹配"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ msgid "PGP keys matching"
+ msgstr "PGP 密钥匹配"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME 密钥匹配"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ msgid "keys matching"
+ msgstr "密钥匹配"
+
+@@ -4252,55 +4330,55 @@ msgstr "密钥匹配"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, c-format
+ msgid "%s <%s>"
+ msgstr "%s <%s>"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, c-format
+ msgid "%s \"%s\""
+ msgstr "%s \"%s\""
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "无法使用这个密钥:已过期/已禁用/已吊销"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "ID 已过期/已禁用/已吊销。您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "ID 无效。您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "ID 仅勉强有效。您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr "ID 有效性未定义。您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "正寻找匹配 \"%s\" 的密钥..."
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr "未找到匹配 \"%s\" 的密钥"
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "要使用 keyID = \"%s\" 用于 %s 吗?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "请输入 %s 的 keyID:"
+@@ -4309,15 +4387,15 @@ msgstr "请输入 %s 的 keyID:"
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ msgid "No secret keys found"
+ msgstr "未找到密钥"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "请输入密钥 ID:"
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, c-format
+ msgid "Error exporting key: %s"
+ msgstr "导出密钥时出错:%s"
+@@ -4325,92 +4403,92 @@ msgstr "导出密钥时出错:%s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP 密钥 0x%s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr "GPGME:OpenPGP 协议不可用"
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr "GPGME:CMS 协议不可用"
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME 签署(s),选择身份签署(a),(p)gp,清除(c),或关闭机遇加密模式(o)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "sapco"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 签署(s),选择身份签署(a),s/(m)ime,清除(c),或关闭机遇加密模式(o)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "samco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME 加密(e),签署(s),选择身份签署(a),两者皆要(b),(p)gp,清除(c),或使用机遇加密模式(o)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ msgid "esabpco"
+ msgstr "esabpco"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),两者皆要(b),s/(m)ime,清除(c),或使用机遇加密模式(o)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ msgid "esabmco"
+ msgstr "esabmco"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "S/MIME 加密(e),签署(s),选择身份签署(a),两者皆要(b),(p)gp或清除(c)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ msgid "esabpc"
+ msgstr "esabpc"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),两者皆要(b),s/(m)ime 或清除(c)?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ msgid "esabmc"
+ msgstr "esabmc"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr "验证发送者失败"
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ msgid "Failed to figure out sender"
+ msgstr "找出发送者失败"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "请输入 PGP 通行密码:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- 错误:无法创建 PGP 子进程! --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4421,15 +4499,15 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ msgid "PGP message is not encrypted"
+ msgstr "PGP 消息未加密"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr "内部错误。请提交一个bug报告"
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4437,125 +4515,125 @@ msgstr ""
+ "[-- 错误:无法创建 PGP 子进程! --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ msgid "Decryption failed"
+ msgstr "解密失败"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "无法打开 PGP 子进程"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "不能调用 PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr "PGP/M(i)ME"
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr "嵌入(i)"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 签署(s),选择身份签署(a),%s 格式,清除(c),或关闭机遇加密模式(o)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "saico"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "PGP 签署(s),选择身份签署(a),清除(c),或关闭机遇加密模式(o)?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "saco"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),同时(b),%s 格式,清除(c),或使用机遇加密模式(o)?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ msgid "esabico"
+ msgstr "esabico"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),两者皆要(b),清除(c),或使用机遇加密模式(o)?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ msgid "esabco"
+ msgstr "esabco"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),同时(b),%s 格式,或清除(c)?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ msgid "esabic"
+ msgstr "esabic"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "PGP 加密(e),签署(s),选择身份签署(a),两者皆要(b),或清除(c)?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ msgid "esabc"
+ msgstr "esabc"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "正在取回 PGP 密钥..."
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "所有匹配的密钥已过期,吊销或禁用"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "符合<%s>的 PGP 密钥"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "符合 \"%s\" 的 PGP 密钥"
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "无法打开 /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP 密钥 %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ msgid "Enter S/MIME passphrase:"
+ msgstr "请输入 S/MIME 通行密码:"
+
+@@ -4564,7 +4642,7 @@ msgstr "请输入 S/MIME 通行密码:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ msgid "Expired "
+ msgstr "已过期"
+
+@@ -4573,7 +4651,7 @@ msgstr "已过期"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ msgid "Invalid "
+ msgstr "无效 "
+
+@@ -4582,7 +4660,7 @@ msgstr "无效 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr "已吊销"
+
+@@ -4591,7 +4669,7 @@ msgstr "已吊销"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr "信任 "
+
+@@ -4600,7 +4678,7 @@ msgstr "信任 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr "未验证"
+
+@@ -4609,7 +4687,7 @@ msgstr "未验证"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr "已验证"
+
+@@ -4618,58 +4696,58 @@ msgstr "已验证"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ msgid "Unknown "
+ msgstr "未知 "
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME 证书匹配 \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "ID 不可信。您真的要使用此密钥吗?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ msgid "Enter keyID: "
+ msgstr "请输入密钥 ID:"
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr "未找到可用于 %s 的(有效)证书"
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "错误:无法创建 OpenSSL 子进程"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ msgid "Label for certificate: "
+ msgstr "证书标签:"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ msgid "no certfile"
+ msgstr "无证书文件"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ msgid "no mbox"
+ msgstr "没有信箱"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr "OpenSSL 没有输出..."
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr "无法签署:没有指定密钥。请使用指定身份签署(Sign As)"
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "无法打开 OpenSSL 子进程"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+ "\n"
+@@ -4677,19 +4755,19 @@ msgstr ""
+ "[-- OpenSSL 输出结束 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- 错误:无法创建 OpenSSL 子进程! --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr "[-- 以下数据已由 S/MIME 加密 --]\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr "[-- 以下数据已由 S/MIME 签署 --]\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ msgid ""
+ "\n"
+ "[-- End of S/MIME encrypted data. --]\n"
+@@ -4697,7 +4775,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME 加密数据结束 --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ msgid ""
+ "\n"
+ "[-- End of S/MIME signed data. --]\n"
+@@ -4706,160 +4784,160 @@ msgstr ""
+ "[-- S/MIME 签署的数据结束 --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "S/MIME 签署(s),选择身份加密(w),选择身份签署(a),清除(c),或关闭机遇加密模式(o)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "swaco"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "S/MIME 加密(e),签署(s),选择身份加密(w),选择身份签署(a),两者皆要(b),清除(c),或使用机遇加密模式(o)?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "eswabco"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "S/MIME 加密(e),签署(s),选择身份加密(w),选择身份签署(a),两者皆要(b),或清除(c)?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "eswabc"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr "选择算法类别:(1) DES, (2) RC2, (3) AES, 或(c)清除?"
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr "123c"
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr "(1) DES, (2) 三重DES"
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr "12"
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr "123"
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr "(1) AES128, (2) AES192, (3) AES256?"
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr "正在从缓存中加载新闻组列表..."
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ msgid "No news server defined"
+ msgstr "未定义新闻服务器"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr "%s 是无效的新闻服务器 URL"
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "服务器关闭了连接"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr "服务器不支持阅读模式"
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "无可用认证方式"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, c-format
+ msgid "%s authentication failed"
+ msgstr "%s 认证失败"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "到 %s 的连接已关闭。重新连接吗?"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ msgid "Fetching list of articles..."
+ msgstr "正在取回帖子列表..."
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "正在检查新信件..."
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ msgid "Could not switch to reader mode"
+ msgstr "无法切换到阅读模式"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, c-format
+ msgid "Connected to %s. %s"
+ msgstr "已连接到 %s。%s"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is ok"
+ msgstr "允许发帖"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr "不允许发帖"
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, c-format
+ msgid "Can't post article: %s"
+ msgstr "无法发帖:%s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "正在从服务器 %s 加载新闻组列表..."
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ msgid "Loading descriptions..."
+ msgstr "加载描述中..."
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ msgid "Checking for new newsgroups..."
+ msgstr "正在检查新新闻组..."
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr "无法找到子帖因为服务器不支持 XPAT 命令"
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr "%s 是无效的新闻组 URL"
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr "新闻组 %s 没有在服务器上找到"
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr "新闻组 %s 已经从服务器上被移除"
+@@ -4871,8 +4949,8 @@ msgstr "无法解析 notmuch 查询类型:%s"
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
+-msgstr "无法解析 notmuch 查询 URI:%s"
++msgid "failed to parse notmuch url: %s"
++msgstr "无法解析 notmuch 查询 URL:%s"
+
+ #: notmuch/mutt_notmuch.c:449
+ msgid "Invalid nm_query_window_timebase value (valid values are: hour, day, week, month or year)"
+@@ -5962,182 +6040,182 @@ msgstr "使侧边栏(不)可见"
+ msgid "show S/MIME options"
+ msgstr "显示 S/MIME 选项"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "在此菜单中不可用"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "上一页"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "下一页"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "显示附件"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "下一个"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr "所有"
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr "结束"
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "已显示信件的最末端"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "已显示信件的最上端"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "现在正显示帮助"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "无更多引用文本"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "引用文本后没有其他未引用文本"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "表达式有错误:%s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ msgid "Empty expression"
+ msgstr "空表达式"
+
+-#: pattern.c:288
++#: pattern.c:289
+ msgid "No search command defined"
+ msgstr "未定义搜索命令"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, c-format
+ msgid "Running search command: %s ..."
+ msgstr "正在运行搜索命令:%s ..."
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "无效的日子:%s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "无效的月份:%s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "无效的相对日期:%s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ msgid "No current message"
+ msgstr "没有当前信件"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr "没有内容"
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ msgid "Error opening 'memory stream'"
+ msgstr "打开内存流临时文件时出错"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ msgid "Error re-opening 'memory stream'"
+ msgstr "重新打开内存流临时文件时出错"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ msgid "Error opening /dev/null"
+ msgstr "打开 /dev/null 时出错"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "模式有错误:%s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, c-format
+ msgid "missing pattern: %s"
+ msgstr "缺少模式:%s"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "不匹配的圆括号:%s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c:无效模式修饰符"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c:此模式下不支持"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "缺少参数"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "空模式"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr "错误:仅 IMAP 支持服务器端的自定义搜索"
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "错误:未知操作(op) %d (请报告这个错误)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "正在编译搜寻模式..."
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "正在对符合的信件执行命令..."
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "没有信件符合标准"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ msgid "Searching..."
+ msgstr "正在搜索..."
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "已搜寻至结尾而未发现匹配"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "已搜寻至开头而未发现匹配"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "搜寻已中断"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "服务器不支持 TOP 命令"
+
+@@ -6145,7 +6223,7 @@ msgstr "服务器不支持 TOP 命令"
+ msgid "Can't write header to temporary file"
+ msgstr "无法将信件头写入临时文件"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "服务器不支持 UIDL 命令"
+
+@@ -6159,7 +6237,7 @@ msgstr[0] "%d 封信件已丢失。请尝试重新打开信箱"
+ msgid "POP host is not defined"
+ msgstr "未定义 POP 主机"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr "%s 是无效的 POP 路径"
+@@ -6190,151 +6268,151 @@ msgid "%s [%d of %d message read]"
+ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [已读取 %d 封信件,共 %d 封]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "正在取回信件列表..."
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ msgid "Marking messages deleted..."
+ msgstr "正在标记信件为已删除..."
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "无法将新建写入临时文件"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "正在验证 (SASL)..."
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr "POP 时间戳无效"
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "正在验证 (APOP)..."
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP 验证失败"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "服务器不支持 USER 命令"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ msgid "Authentication failed"
+ msgstr "认证失败"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "无效的 POP 地址(URL):%s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "无法将信件留在服务器上"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "连接到服务器时出错:%s"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "正在关闭到 POP 服务器的连接..."
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "正在验证信件索引..."
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "连接丢失。重新连接到 POP 服务器吗?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "信件已经被延迟寄出"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "没有被延迟寄出的信件"
+
+-#: postpone.c:480
++#: postpone.c:526
+ msgid "Illegal S/MIME header"
+ msgstr "非法的 S/MIME 信件头"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ msgid "Illegal crypto header"
+ msgstr "非法的加密(crypto)信件头"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ msgid "Decrypting message..."
+ msgstr "正在解密信件..."
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "新的查询"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "制作别名"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "正在等待回应..."
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "查询:"
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "查询 '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "查询命令未定义"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "管道"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "打印"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "正在保存..."
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "%d 个附件已保存"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "警告!您正在覆盖 %s,是否要继续?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "附件已被过滤"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "经过过滤:"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "通过管道传给:"
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "我不知道要如何打印 %s 类型的附件"
+@@ -6342,54 +6420,54 @@ msgstr "我不知道要如何打印 %s 类型的附件"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "打印已标记的 %d 个附件?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "打印附件?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr "不支持对已解密附件的结构性更改"
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ msgid "Can't decrypt encrypted message"
+ msgstr "无法解密加密信件"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "附件"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "无子部分可显示"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "无法从 POP 服务器上删除附件"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ msgid "Can't delete attachment from news server"
+ msgstr "无法从新闻服务器上删除附件"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "不支持从加密信件中删除附件"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "从已签名的信件中删除附件可能导致签名失效"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "只支持删除多段附件"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "您只能重发 message/rfc822 的部分"
+
+@@ -6424,7 +6502,7 @@ msgstr "无法创建 %s"
+ msgid "Can't find any tagged messages"
+ msgstr "无法找到任何已标记的信件"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "没有找到邮件列表"
+
+@@ -6438,67 +6516,67 @@ msgstr "无法解码所有已标记的附件。通过 MIME 封装其它的吗?
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "您只能撰写 message/rfc822 部分给发件人"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "附加到末尾"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "插入"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr "<随机>"
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "无法获得 mixmaster 的 type2.list"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "选择一个转发者链"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "错误:%s 不能用作链的最终转发者"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster 链有 %d 个元素的限制"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "转发者链已经为空"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "您已经选择了第一个链元素"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "您已经选择了最后的链元素"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster 不接受转发(Cc)或密件转发(Bcc)信件头"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "使用 mixmaster 时请给 hostname(主机名) 变量设置合适的值"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "发送信件出错,子进程已退出 %d。\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "发送信件出错"
+
+@@ -6528,41 +6606,41 @@ msgstr "要转发附件吗?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "回信到 %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "发送后续信件到 %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "回信时包含原信件吗?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "正在包含引用信件..."
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "无法包含所有请求的信件"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "作为附件转发?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "正在准备转发信件..."
+
+-#: send.c:1632
++#: send.c:1631
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "不支持在批量模式下 Fcc 到 IMAP 信箱"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ msgid "Save attachments in Fcc?"
+ msgstr "将附件保存到 Fcc 吗?"
+
+@@ -6570,190 +6648,190 @@ msgstr "将附件保存到 Fcc 吗?"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr "Fcc 失败。重试(r),更改信箱(m),或跳过(s)?"
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr "rms"
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ msgid "Fcc mailbox"
+ msgstr "Fcc 信箱"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr "无法延迟寄出。未设置 $postponed 值"
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "叫出延迟寄出的信件吗?"
+
+-#: send.c:2228
++#: send.c:2239
+ msgid "Edit forwarded message?"
+ msgstr "编辑已转发的信件吗?"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "中止未修改过的信件?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "已中止未修改过的信件"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr "没有配置加密后端。已禁用信件安全设置。"
+
+-#: send.c:2427
++#: send.c:2438
+ msgid "Article not posted"
+ msgstr "帖子没有发表"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "信件被延迟寄出"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "没有主题,要中止发送吗?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "没有指定主题"
+
+-#: send.c:2486
++#: send.c:2497
+ msgid "No newsgroup specified"
+ msgstr "没有指定新闻组"
+
+-#: send.c:2496
++#: send.c:2507
+ msgid "No attachments, cancel sending?"
+ msgstr "没有附件,取消发送?"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr "信件内容匹配 \"$abort_noattach_regex\"。没有发送。"
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "正在发送信件..."
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "无法发送此信件"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "正在后台发送"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr "帖子已发表"
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "信件已发送"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "没有发现分界变量![请报告这个错误]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s 已经不存在了"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s 不是常规文件"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ msgid "Could not find any mime.types file."
+ msgstr "找不到任何 mime.types 文件。"
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "无法打开 %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr "为了发送邮件必须配置 $sendmail"
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "发送信件出错,子进程已退出 %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "投递进程的输出"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr "准备 resent-from 时发生错误的 IDN %s"
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "SMTP 会话失败:%s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "SMTP 会话失败:无法打开 %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "无效的 SMTP 链接(URL):%s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr "SMTP 认证方式 %s 需要 SASL"
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "%s 认证失败,正在尝试下一个方法"
+
+-#: smtp.c:636
++#: smtp.c:661
+ msgid "SMTP authentication requires SASL"
+ msgstr "SMTP 认证需要 SASL"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr "SMTP 服务器不支持认证"
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr "没有给出发信地址"
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr "SMTP 会话失败:读错误"
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr "SMTP 会话失败:写错误"
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr "无效的服务器回应"
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "正在排序信箱..."
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "找不到排序函数![请报告这个问题]"
+
+@@ -6817,10 +6895,10 @@ msgstr ""
+ "NeoMutt 是自由软件,欢迎您在某些条件下\n"
+ "重新发行它;请键入 'neomutt -vv' 以获取详细信息。\n"
+
+-#: version.c:446
++#: version.c:451
+ msgid "Default options:"
+ msgstr "默认选项:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "编译选项:"
+diff --git a/po/zh_TW.po b/po/zh_TW.po
+index c60a3f680..2c4786036 100644
+--- a/po/zh_TW.po
++++ b/po/zh_TW.po
+@@ -11,7 +11,7 @@ msgid ""
+ msgstr ""
+ "Project-Id-Version: neomutt-2019-12-07\n"
+ "Report-Msgid-Bugs-To: neomutt-devel@neomutt.org\n"
+-"POT-Creation-Date: 2019-12-06 23:10+0000\n"
++"POT-Creation-Date: 2020-03-09 12:15+0000\n"
+ "PO-Revision-Date: 2001-09-06 18:25+0800\n"
+ "Last-Translator: Anthony Wong <ypwong@debian.org>\n"
+ "Language-Team: Chinese <zh@li.org>\n"
+@@ -21,16 +21,44 @@ msgstr ""
+ "Content-Transfer-Encoding: 8bit\n"
+ "Plural-Forms: nplurals=1; plural=0;\n"
+
+-#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:59 browser.c:80 browser.c:90
+-#: mutt_history.c:45 pager.c:228 postpone.c:68 query.c:80 recvattach.c:93
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
++msgstr "(1)不接受,(2)只是這次接受,(3)永遠接受"
++
++#, fuzzy
++msgid "roas"
++msgstr "123"
++
++msgid "(r)eject, accept (o)nce, (a)ccept always"
++msgstr "(1)不接受,(2)只是這次接受,(3)永遠接受"
++
++msgid "roa"
++msgstr "123"
++
++#, fuzzy
++msgid "(r)eject, accept (o)nce, (s)kip"
++msgstr "(1)不接受,(2)只是這次接受"
++
++#, fuzzy
++msgid "ros"
++msgstr "12"
++
++msgid "(r)eject, accept (o)nce"
++msgstr "(1)不接受,(2)只是這次接受"
++
++msgid "ro"
++msgstr "12"
++
++#: addrbook.c:56 autocrypt/autocrypt_acct_menu.c:58 browser.c:79 browser.c:89
++#: mutt_history.c:45 pager.c:220 postpone.c:68 query.c:78 recvattach.c:91
+ msgid "Exit"
+ msgstr "離開"
+
+-#: addrbook.c:56 index.c:116 index.c:129 pager.c:236 pager.c:246 postpone.c:69
++#: addrbook.c:56 index.c:112 index.c:125 pager.c:228 pager.c:238 postpone.c:69
+ msgid "Del"
+ msgstr "刪除"
+
+-#: addrbook.c:57 index.c:117 index.c:130 postpone.c:70
++#: addrbook.c:57 index.c:113 index.c:126 postpone.c:70
+ msgid "Undel"
+ msgstr "反刪除"
+
+@@ -38,18 +66,18 @@ msgstr "反刪除"
+ msgid "Select"
+ msgstr "選擇"
+
+-#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:82 browser.c:84 browser.c:96
+-#: compose.c:218 compose.c:230 conn/ssl.c:983 conn/ssl_gnutls.c:691 index.c:122
+-#: index.c:135 mutt_history.c:48 ncrypt/crypt_gpgme.c:4735 ncrypt/pgpkey.c:670
+-#: ncrypt/smime.c:553 pager.c:2326 postpone.c:71 query.c:85 recvattach.c:94
++#: addrbook.c:58 autocrypt/autocrypt_acct_menu.c:81 browser.c:83 browser.c:95
++#: compose.c:216 compose.c:228 conn/ssl.c:996 conn/ssl_gnutls.c:722 index.c:118
++#: index.c:131 mutt_history.c:48 ncrypt/crypt_gpgme.c:4783 ncrypt/pgpkey.c:673
++#: ncrypt/smime.c:555 pager.c:2297 postpone.c:71 query.c:83 recvattach.c:92
+ msgid "Help"
+ msgstr "求助"
+
+-#: addrbook.c:208
++#: addrbook.c:238
+ msgid "You have no aliases"
+ msgstr "您沒有別名資料"
+
+-#: addrbook.c:215
++#: addrbook.c:276
+ msgid "Aliases"
+ msgstr "別名"
+
+@@ -58,53 +86,53 @@ msgstr "別名"
+ msgid "Alias as: "
+ msgstr "取別名為:"
+
+-#: alias.c:411
++#: alias.c:414
+ msgid "You already have an alias defined with that name"
+ msgstr "您已經為這個名字定義了別名啦"
+
+-#: alias.c:417
++#: alias.c:420
+ msgid "Warning: This alias name may not work. Fix it?"
+ msgstr "警告:這個別名可能無效。要修正它?"
+
+-#: alias.c:442
++#: alias.c:445
+ msgid "Address: "
+ msgstr "地址:"
+
+-#: alias.c:453 commands.c:444 compose.c:744 conn/conn_raw.c:152
+-#: conn/conn_raw.c:210 recvcmd.c:232 send.c:228
++#: alias.c:457 commands.c:450 compose.c:743 conn/conn_raw.c:152
++#: conn/conn_raw.c:210 recvcmd.c:231 send.c:227
+ #, c-format
+ msgid "Bad IDN: '%s'"
+ msgstr "無效的 IDN:「%s」"
+
+-#: alias.c:464
++#: alias.c:468
+ msgid "Personal name: "
+ msgstr "個人姓名:"
+
+-#: alias.c:473
++#: alias.c:477
+ #, c-format
+ msgid "[%s = %s] Accept?"
+ msgstr "[%s = %s] 接受?"
+
+-#: alias.c:484 recvattach.c:528 recvattach.c:550 recvattach.c:564
+-#: recvattach.c:579 recvattach.c:678
++#: alias.c:488 recvattach.c:530 recvattach.c:552 recvattach.c:566
++#: recvattach.c:581 recvattach.c:680
+ msgid "Save to file: "
+ msgstr "存到檔案:"
+
+-#: alias.c:503
++#: alias.c:507
+ #, fuzzy
+ msgid "Error reading alias file"
+ msgstr "讀取信件時發生錯誤"
+
+-#: alias.c:525
++#: alias.c:529
+ #, fuzzy
+ msgid "Trouble adding alias"
+ msgstr "讀取信件時發生錯誤"
+
+-#: alias.c:527
++#: alias.c:531
+ msgid "Alias added"
+ msgstr "別名已經增加"
+
+-#: alias.c:532
++#: alias.c:536
+ #, fuzzy
+ msgid "Error seeking in alias file"
+ msgstr "無法試著顯示檔案"
+@@ -114,7 +142,7 @@ msgstr "無法試著顯示檔案"
+ #. 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:70 main.c:826
++#: autocrypt/autocrypt.c:70 main.c:757
+ #, c-format
+ msgid "%s does not exist. Create it?"
+ msgstr "%s 不存在。建立嗎?"
+@@ -123,8 +151,8 @@ msgstr "%s 不存在。建立嗎?"
+ #. mkdir() on the directory %s failed. The second %s is the
+ #. error message returned by libc
+ #.
+-#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:830
+-#: nntp/newsrc.c:1069
++#: autocrypt/autocrypt.c:79 bcache.c:216 hcache/hcache.c:161 main.c:761
++#: nntp/newsrc.c:1098
+ #, c-format
+ msgid "Can't create %s: %s"
+ msgstr "無法建立 %s: %s"
+@@ -134,7 +162,7 @@ msgstr "無法建立 %s: %s"
+ #. create $autocrypt_dir and then prompt to create an autocrypt
+ #. account with this message.
+ #.
+-#: autocrypt/autocrypt.c:156
++#: autocrypt/autocrypt.c:163
+ msgid "Create an initial autocrypt account?"
+ msgstr ""
+
+@@ -143,7 +171,7 @@ msgstr ""
+ #. autocrypt account. This will generate a key and add a record
+ #. to the database for use in autocrypt operations.
+ #.
+-#: autocrypt/autocrypt.c:180
++#: autocrypt/autocrypt.c:187
+ msgid "Autocrypt account address: "
+ msgstr ""
+
+@@ -152,7 +180,7 @@ msgstr ""
+ #. a single address. This is shown if they entered something invalid,
+ #. nothing, or more than one address for some reason.
+ #.
+-#: autocrypt/autocrypt.c:191
++#: autocrypt/autocrypt.c:198
+ msgid "Please enter a single email address"
+ msgstr ""
+
+@@ -161,7 +189,7 @@ msgstr ""
+ #. if there is already an account in the database with the email address
+ #. they just entered.
+ #.
+-#: autocrypt/autocrypt.c:208
++#: autocrypt/autocrypt.c:215
+ msgid "That email address already has an autocrypt account"
+ msgstr ""
+
+@@ -173,7 +201,7 @@ msgstr ""
+ #. Otherwise the UI will show encryption is "available" but the user
+ #. will be required to enable encryption manually.
+ #.
+-#: autocrypt/autocrypt.c:223
++#: autocrypt/autocrypt.c:230
+ #, fuzzy
+ msgid "Prefer encryption?"
+ msgstr "加密"
+@@ -181,7 +209,7 @@ msgstr "加密"
+ #. L10N:
+ #. Message displayed after an autocrypt account is successfully created.
+ #.
+-#: autocrypt/autocrypt.c:236
++#: autocrypt/autocrypt.c:243
+ msgid "Autocrypt account creation succeeded"
+ msgstr ""
+
+@@ -189,7 +217,7 @@ msgstr ""
+ #. Error message displayed if creating an autocrypt account failed
+ #. or was aborted by the user.
+ #.
+-#: autocrypt/autocrypt.c:242
++#: autocrypt/autocrypt.c:249
+ msgid "Autocrypt account creation aborted"
+ msgstr ""
+
+@@ -198,7 +226,7 @@ msgstr ""
+ #. 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:610 autocrypt/autocrypt.c:639
++#: autocrypt/autocrypt.c:617 autocrypt/autocrypt.c:646
+ #, c-format
+ msgid "No (valid) autocrypt key found for %s"
+ msgstr ""
+@@ -210,12 +238,12 @@ msgstr ""
+ #. and used for encryption.
+ #. If this is answered yes, they will be prompted for a mailbox.
+ #.
+-#: autocrypt/autocrypt.c:903
++#: autocrypt/autocrypt.c:910
+ msgid "Scan a mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: The prompt for a mailbox to scan for Autocrypt: headers
+-#: autocrypt/autocrypt.c:907
++#: autocrypt/autocrypt.c:914
+ #, fuzzy
+ msgid "Scan mailbox"
+ msgstr "沒有信箱。\n"
+@@ -227,14 +255,14 @@ msgstr "沒有信箱。\n"
+ #. 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:927
++#: autocrypt/autocrypt.c:934
+ msgid "Scan another mailbox for autocrypt headers?"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Menu Help line:
+ #. create new account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:63
++#: autocrypt/autocrypt_acct_menu.c:62
+ #, fuzzy
+ msgid "Create"
+ msgstr "建立 %s?"
+@@ -242,7 +270,7 @@ msgstr "建立 %s?"
+ #. L10N: Autocrypt Account Menu Help line:
+ #. delete account
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:67 remailer.c:77
++#: autocrypt/autocrypt_acct_menu.c:66 remailer.c:75
+ msgid "Delete"
+ msgstr "刪除"
+
+@@ -250,9 +278,9 @@ msgstr "刪除"
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:74
++#: autocrypt/autocrypt_acct_menu.c:73
+ msgid "Tgl Active"
+ msgstr ""
+
+@@ -260,17 +288,17 @@ msgstr ""
+ #. 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 Enc ?:Help
++#. q:Exit c:Create D:Delete a:Tgl Active p:Prf Encr ?:Help
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:81
+-msgid "Prf Enc"
++#: autocrypt/autocrypt_acct_menu.c:80
++msgid "Prf Encr"
+ msgstr ""
+
+ #. L10N:
+ #. Autocrypt Account menu.
+ #. flag that an account has prefer-encrypt set
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:123
++#: autocrypt/autocrypt_acct_menu.c:122
+ msgid "prefer encrypt"
+ msgstr ""
+
+@@ -279,7 +307,7 @@ msgstr ""
+ #. flag that an account has prefer-encrypt unset;
+ #. thus encryption will need to be manually enabled.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:130
++#: autocrypt/autocrypt_acct_menu.c:129
+ msgid "manual encrypt"
+ msgstr ""
+
+@@ -287,7 +315,7 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is enabled/active
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:138
++#: autocrypt/autocrypt_acct_menu.c:137
+ msgid "active"
+ msgstr ""
+
+@@ -295,12 +323,12 @@ msgstr ""
+ #. Autocrypt Account menu.
+ #. flag that an account is disabled/inactive
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:144
++#: autocrypt/autocrypt_acct_menu.c:143
+ msgid "inactive"
+ msgstr ""
+
+ #. L10N: Autocrypt Account Management Menu title
+-#: autocrypt/autocrypt_acct_menu.c:183
++#: autocrypt/autocrypt_acct_menu.c:182
+ msgid "Autocrypt Accounts"
+ msgstr ""
+
+@@ -308,13 +336,13 @@ msgstr ""
+ #. This error message is displayed if a database update of an
+ #. account record fails for some odd reason.
+ #.
+-#: autocrypt/autocrypt_acct_menu.c:245 autocrypt/autocrypt_acct_menu.c:259
++#: autocrypt/autocrypt_acct_menu.c:244 autocrypt/autocrypt_acct_menu.c:258
+ #, fuzzy
+ msgid "Error updating account record"
+ msgstr "無法掃描目錄"
+
+ #. L10N: Confirmation message when deleting an autocrypt account
+-#: autocrypt/autocrypt_acct_menu.c:302
++#: autocrypt/autocrypt_acct_menu.c:333
+ #, fuzzy, c-format
+ msgid "Really delete account \"%s\"?"
+ msgstr "真的要刪除 \"%s\" 郵箱?"
+@@ -332,7 +360,7 @@ msgstr "真的要刪除 \"%s\" 郵箱?"
+ msgid "Unable to open autocrypt database %s"
+ msgstr "無法鎖住信箱"
+
+-#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:774
++#: autocrypt/autocrypt_gpgme.c:55 ncrypt/crypt_gpgme.c:773
+ #, fuzzy, c-format
+ msgid "error creating gpgme context: %s"
+ msgstr "在樣式上有錯誤:%s"
+@@ -405,499 +433,618 @@ msgstr ""
+ msgid "Message cache isn't a directory: %s"
+ msgstr "%s 不是一個目錄"
+
+-#: browser.c:81
++#: browser.c:80
+ msgid "Chdir"
+ msgstr "改變目錄"
+
+-#: browser.c:82
++#: browser.c:81
+ msgid "Goto"
+ msgstr ""
+
+-#: browser.c:83 browser.c:95
++#: browser.c:82 browser.c:94
+ msgid "Mask"
+ msgstr "遮罩"
+
+-#: browser.c:91
++#: browser.c:90
+ msgid "List"
+ msgstr ""
+
+-#: browser.c:92
++#: browser.c:91
+ #, fuzzy
+ msgid "Subscribe"
+ msgstr "訂閱 %s…"
+
+-#: browser.c:93
++#: browser.c:92
+ #, fuzzy
+ msgid "Unsubscribe"
+ msgstr "取消訂閱 %s…"
+
+-#: browser.c:94 index.c:134
++#: browser.c:93 index.c:130
+ msgid "Catchup"
+ msgstr ""
+
+-#: browser.c:760 browser.c:1519 browser.c:1758
++#: browser.c:763 browser.c:1584 browser.c:1825
+ #, c-format
+ msgid "%s is not a directory"
+ msgstr "%s 不是一個目錄"
+
+-#: browser.c:1025
++#: browser.c:1028
+ #, fuzzy, c-format
+ msgid "Subscribed newsgroups"
+ msgstr "訂閱 %s…"
+
+-#: browser.c:1028
++#: browser.c:1031
+ #, c-format
+ msgid "Newsgroups on server [%s]"
+ msgstr ""
+
+-#: browser.c:1038
++#: browser.c:1041
+ #, c-format
+ msgid "Mailboxes [%d]"
+ msgstr "信箱 [%d]"
+
+-#: browser.c:1050
++#: browser.c:1053
+ #, c-format
+ msgid "Subscribed [%s], File mask: %s"
+ msgstr "已訂閱 [%s], 檔案遮罩: %s"
+
+-#: browser.c:1056
++#: browser.c:1059
+ #, c-format
+ msgid "Directory [%s], File mask: %s"
+ msgstr "目錄 [%s], 檔案遮罩: %s"
+
+-#: browser.c:1113
++#: browser.c:1116
+ msgid "Can't attach a directory"
+ msgstr "無法附帶目錄"
+
+-#: browser.c:1380 browser.c:1814 browser.c:1959
++#: browser.c:1445 browser.c:1881 browser.c:2026
+ msgid "No files match the file mask"
+ msgstr "沒有檔案與檔案遮罩相符"
+
+-#: browser.c:1587
++#: browser.c:1654
+ msgid "Create is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 郵箱才支援製造功能"
+
+-#: browser.c:1609
++#: browser.c:1676
+ #, fuzzy
+ msgid "Rename is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 郵箱才支援製造功能"
+
+-#: browser.c:1630
++#: browser.c:1697
+ msgid "Delete is only supported for IMAP mailboxes"
+ msgstr "只有 IMAP 郵箱才支援刪除功能"
+
+-#: browser.c:1642
++#: browser.c:1709
+ #, fuzzy
+ msgid "Can't delete currently selected mailbox"
+ msgstr "顯示所選擇的檔案"
+
+-#: browser.c:1646
++#: browser.c:1713
+ #, c-format
+ msgid "Really delete mailbox \"%s\"?"
+ msgstr "真的要刪除 \"%s\" 郵箱?"
+
+-#: browser.c:1663
++#: browser.c:1730
+ msgid "Mailbox deleted"
+ msgstr "郵箱已刪除"
+
+-#: browser.c:1667
++#: browser.c:1734
+ #, fuzzy
+ msgid "Mailbox deletion failed"
+ msgstr "郵箱已刪除"
+
+-#: browser.c:1670
++#: browser.c:1737
+ msgid "Mailbox not deleted"
+ msgstr "郵箱未被刪除"
+
+-#: browser.c:1697
++#: browser.c:1764
+ msgid "Chdir to: "
+ msgstr "改變目錄到:"
+
+-#: browser.c:1747 browser.c:1808
++#: browser.c:1814 browser.c:1875
+ msgid "Error scanning directory"
+ msgstr "無法掃描目錄"
+
+-#: browser.c:1769
++#: browser.c:1836
+ msgid "File Mask: "
+ msgstr "檔案遮罩:"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: browser.c:1831
++#: browser.c:1898
+ #, fuzzy
+ msgid "Reverse sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "反向排序 (1)日期, (2)字元, (3)大小 或 (4)不排序?"
+
+ #. L10N: The highlighted letters must match the "Reverse Sort" options
+-#: browser.c:1834
++#: browser.c:1901
+ #, fuzzy
+ msgid "Sort by (d)ate, (a)lpha, si(z)e, d(e)scription, (c)ount, ne(w) count, or do(n)'t sort?"
+ msgstr "依照 (1)日期 (2)字元 (3)大小 來排序,或(4)不排序?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Reverse Sort"
+-#: browser.c:1837
++#: browser.c:1904
+ msgid "dazecwn"
+ msgstr ""
+
+-#: browser.c:1948
++#: browser.c:2015
+ msgid "New file name: "
+ msgstr "新檔名:"
+
+-#: browser.c:1976
++#: browser.c:2043
+ msgid "Can't view a directory"
+ msgstr "無法顯示目錄"
+
+-#: browser.c:1993
++#: browser.c:2060
+ msgid "Error trying to view file"
+ msgstr "無法試著顯示檔案"
+
+-#: browser.c:2079
++#: browser.c:2146
+ #, fuzzy, c-format
+ msgid "Subscribe pattern: "
+ msgstr "訂閱 %s…"
+
+-#: browser.c:2081
++#: browser.c:2148
+ #, fuzzy, c-format
+ msgid "Unsubscribe pattern: "
+ msgstr "取消訂閱 %s…"
+
+-#: browser.c:2101
++#: browser.c:2169
+ #, fuzzy
+ msgid "No newsgroups match the mask"
+ msgstr "沒有檔案與檔案遮罩相符"
+
+-#: color.c:633 color.c:644
+-#, c-format
+-msgid "%s: color not supported by term"
+-msgstr "%s:終端機無法顯示色彩"
+-
+-#: color.c:652
+-#, c-format
+-msgid "%s: no such color"
+-msgstr "%s:沒有這種顏色"
+-
+-#: color.c:717 color.c:740 color.c:751 color.c:842
+-#, c-format
+-msgid "%s: no such object"
+-msgstr "%s:沒有這個物件"
+-
+-#: color.c:731 color.c:868 color.c:1069 color.c:1098 color.c:1122 color.c:1191
+-#: color.c:1214 hook.c:110 hook.c:124 hook.c:367 hook.c:383 init.c:612
+-#: init.c:620 init.c:709 init.c:1099 init.c:1267 init.c:1871 init.c:1929
+-#: keymap.c:1184 score.c:110
+-#, c-format
+-msgid "%s: too few arguments"
+-msgstr "%s:太少參數"
+-
+-#: color.c:1142
+-#, c-format
+-msgid "%s: no such attribute"
+-msgstr "%s:沒有這個屬性"
+-
+-#: color.c:1223 color.c:1329 hook.c:131 hook.c:390 init.c:1123 init.c:2133
+-#: init.c:2611 keymap.c:1116 keymap.c:1289 keymap.c:1442 keymap.c:1506
+-#: mutt_lua.c:483 score.c:119
+-#, c-format
+-msgid "%s: too many arguments"
+-msgstr "%s: 太多參數"
+-
+-#: color.c:1244
+-msgid "default colors not supported"
+-msgstr "不支援預設的色彩"
+-
+-#: color.c:1282
+-#, c-format
+-msgid "Maximum quoting level is %d"
+-msgstr ""
+-
+-#: color.c:1319
+-#, fuzzy, c-format
+-msgid "%s: invalid number: %s"
+-msgstr "%d:無效的信件號碼。\n"
+-
+ #. L10N: Used for the $crypt_verify_sig prompt
+-#: commands.c:230
++#: commands.c:232
+ msgid "Verify signature?"
+ msgstr "檢查 簽名?"
+
+-#: commands.c:257 mbox/mbox.c:1236
++#: commands.c:259 mbox/mbox.c:1236
+ msgid "Could not create temporary file"
+ msgstr "無法建立暫存檔"
+
+-#: commands.c:269
++#: commands.c:271
+ msgid "Can't create display filter"
+ msgstr "無法建立顯示過濾器"
+
+-#: commands.c:302
++#: commands.c:304
+ msgid "Could not copy message"
+ msgstr "無法複制信件"
+
+-#: commands.c:338
++#: commands.c:340
+ #, fuzzy
+ msgid "S/MIME signature successfully verified"
+ msgstr "S/MIME 簽名驗證成功"
+
+-#: commands.c:340
++#: commands.c:342
+ msgid "S/MIME certificate owner does not match sender"
+ msgstr ""
+
+-#: commands.c:343 commands.c:353
++#: commands.c:345 commands.c:355
+ msgid "Warning: Part of this message has not been signed"
+ msgstr ""
+
+-#: commands.c:345
++#: commands.c:347
+ #, fuzzy
+ msgid "S/MIME signature could NOT be verified"
+ msgstr "S/MIME 簽名無法驗證"
+
+-#: commands.c:351
++#: commands.c:353
+ msgid "PGP signature successfully verified"
+ msgstr "PGP 簽名驗證成功"
+
+-#: commands.c:355
++#: commands.c:357
+ msgid "PGP signature could NOT be verified"
+ msgstr "PGP 簽名無法驗證"
+
+-#: commands.c:372 compose.c:2116 compress.c:321 curs_lib.c:359 curs_lib.c:646
+-#: index.c:1235 index.c:1285 mutt_attach.c:159 mutt_attach.c:292 pager.c:2460
+-#: sendlib.c:1625
++#: commands.c:378 compose.c:2187 compress/compress.c:320 gui/curs_lib.c:360
++#: gui/curs_lib.c:714 index.c:1240 index.c:1290 mutt_attach.c:161
++#: mutt_attach.c:294 pager.c:2433 sendlib.c:1624
+ #, c-format
+ msgid "Error running \"%s\""
+ msgstr "執行 \"%s\" 時發生錯誤"
+
+-#: commands.c:382
++#: commands.c:388
+ msgid "Command: "
+ msgstr "指令:"
+
+-#: commands.c:419 recvcmd.c:191 recvcmd.c:203
++#: commands.c:425 recvcmd.c:190 recvcmd.c:202
+ msgid "Warning: message contains no From: header"
+ msgstr ""
+
+-#: commands.c:425 recvcmd.c:212
++#: commands.c:431 recvcmd.c:211
+ #, fuzzy
+ msgid "Bounce message to: "
+ msgstr "直接傳送郵件到:"
+
+-#: commands.c:427 recvcmd.c:214
++#: commands.c:433 recvcmd.c:213
+ #, fuzzy
+ msgid "Bounce tagged messages to: "
+ msgstr "回退信件至:"
+
+-#: commands.c:436 recvcmd.c:224
++#: commands.c:442 recvcmd.c:223
+ msgid "Error parsing address"
+ msgstr "無法分析位址"
+
+-#: commands.c:455 recvcmd.c:243
++#: commands.c:461 recvcmd.c:242
+ #, fuzzy, c-format
+ msgid "Bounce message to %s?"
+ msgid_plural "Bounce messages to %s?"
+ msgstr[0] "把郵件直接傳送至 %s?"
+
+-#: commands.c:470 recvcmd.c:257
++#: commands.c:476 recvcmd.c:257
+ #, fuzzy
+ msgid "Message not bounced"
+ msgid_plural "Messages not bounced"
+ msgstr[0] "郵件已被傳送"
+
+-#: commands.c:496 recvcmd.c:276
++#: commands.c:502 recvcmd.c:276
+ #, fuzzy
+ msgid "Message bounced"
+ msgid_plural "Messages bounced"
+ msgstr[0] "郵件已被傳送"
+
+-#: commands.c:606 commands.c:642 commands.c:662
++#: commands.c:612 commands.c:648 commands.c:668
+ msgid "Can't create filter process"
+ msgstr "無法啟動過濾程序"
+
+-#: commands.c:698
++#: commands.c:704
+ msgid "Pipe to command: "
+ msgstr "用管道輸出至命令:"
+
+-#: commands.c:720
++#: commands.c:726
+ msgid "No printing command has been defined"
+ msgstr "沒有定義列印指令"
+
+-#: commands.c:732
++#: commands.c:738
+ #, fuzzy
+ msgid "Print message?"
+ msgstr "列印信件?"
+
+-#: commands.c:733
++#: commands.c:739
+ #, fuzzy
+ msgid "Print tagged messages?"
+ msgstr "列印信件?"
+
+-#: commands.c:739
++#: commands.c:745
+ #, fuzzy
+ msgid "Message printed"
+ msgid_plural "Messages printed"
+ msgstr[0] "信件已印出"
+
+-#: commands.c:742
++#: commands.c:748
+ #, fuzzy
+ msgid "Message could not be printed"
+ msgid_plural "Messages could not be printed"
+ msgstr[0] "信件未能列印出來"
+
+ #. L10N: The highlighted letters must match the "Sort" options
+-#: commands.c:759
++#: commands.c:765
+ #, fuzzy
+ msgid "Rev-Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "反方向 (1)日期 (2)發信人 (3)收信時間 (4)標題 (5)收信人 (6)序列 (7)不排 (8)大小 (9)分數?"
+
+ #. L10N: The highlighted letters must match the "Rev-Sort" options
+-#: commands.c:763
++#: commands.c:769
+ #, fuzzy
+ msgid "Sort (d)ate/(f)rm/(r)ecv/(s)ubj/t(o)/(t)hread/(u)nsort/si(z)e/s(c)ore/s(p)am/(l)abel?"
+ msgstr "排序 (1)日期 (2)發信人 (3)收信時間 (4)標題 (5)收信人 (6)序列 (7)不排序 (8)大小 (9)分數?"
+
+ #. L10N: These must match the highlighted letters from "Sort" and "Rev-Sort"
+-#: commands.c:767
++#: commands.c:773
+ #, fuzzy
+ msgid "dfrsotuzcpl"
+ msgstr "123456789"
+
+-#: commands.c:831
++#: commands.c:837
+ msgid "Shell command: "
+ msgstr "Shell 指令:"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1036
++#: commands.c:1042
+ #, fuzzy
+ msgid "Decode-save tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1038
++#: commands.c:1044
+ #, fuzzy
+ msgid "Decrypt-save tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1040
++#: commands.c:1046
+ #, fuzzy
+ msgid "Save tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1045
++#: commands.c:1051
+ #, fuzzy
+ msgid "Decode-copy tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1047
++#: commands.c:1053
+ #, fuzzy
+ msgid "Decrypt-copy tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1049
++#: commands.c:1055
+ #, fuzzy
+ msgid "Copy tagged to mailbox"
+ msgstr "%s 到信箱"
+
+-#: commands.c:1092
++#: commands.c:1098
+ #, c-format
+ msgid "Copying to %s..."
+ msgstr "拷貝到 %s…"
+
+ #. L10N: e.g. "text/plain; charset=UTF-8; ..."
+-#: commands.c:1257
++#: commands.c:1263
+ #, fuzzy
+ msgid "Content type is too long"
+ msgstr "Content-Type 被改為 %s"
+
+-#: commands.c:1281
++#: commands.c:1290
+ #, c-format
+ msgid "Convert to %s upon sending?"
+ msgstr "送出的時候轉換字符集為 %s ?"
+
+-#: commands.c:1292
++#: commands.c:1301
+ #, c-format
+ msgid "Content-Type changed to %s"
+ msgstr "Content-Type 被改為 %s"
+
+-#: commands.c:1297
++#: commands.c:1306
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; not converting"
+ msgstr "字符集已換為 %s; 沒有轉換"
+
+-#: commands.c:1298
++#: commands.c:1307
+ #, fuzzy, c-format
+ msgid "Character set changed to %s; converting"
+ msgstr "字符集已換為 %s; 轉換中"
+
+-#: compose.c:99
++#: command_parse.c:83 command_parse.c:211 command_parse.c:219
++#: command_parse.c:740 command_parse.c:887 command_parse.c:1491
++#: command_parse.c:1549 gui/color.c:731 gui/color.c:868 gui/color.c:1069
++#: gui/color.c:1098 gui/color.c:1122 gui/color.c:1191 gui/color.c:1214
++#: hook.c:110 hook.c:124 hook.c:372 hook.c:388 keymap.c:1182 score.c:110
++#, c-format
++msgid "%s: too few arguments"
++msgstr "%s:太少參數"
++
++#: command_parse.c:394
++msgid "-group: no group name"
++msgstr ""
++
++#: command_parse.c:404
++#, fuzzy
++msgid "out of arguments"
++msgstr "太少參數"
++
++#: command_parse.c:445 command_parse.c:1372
++#, c-format
++msgid "Error: Can't build path of '%s'"
++msgstr ""
++
++#: command_parse.c:458
++#, c-format
++msgid "Error: Cyclic sourcing of configuration file '%s'"
++msgstr ""
++
++#: command_parse.c:491
++#, c-format
++msgid "Error in %s, line %d: %s"
++msgstr "%s 發生錯誤,行號 %d:%s"
++
++#: command_parse.c:502
++#, fuzzy, c-format
++msgid "Warning in %s, line %d: %s"
++msgstr "%s 發生錯誤,行號 %d:%s"
++
++#: command_parse.c:526
++#, c-format
++msgid "source: errors in %s"
++msgstr "source:錯誤發生在 %s"
++
++#: command_parse.c:526
++#, fuzzy, c-format
++msgid "source: reading aborted due to too many errors in %s"
++msgstr "source: 因 %s 發生太多錯誤,因此閱讀終止"
++
++#: command_parse.c:535
++#, fuzzy, c-format
++msgid "source: %d warning in %s"
++msgid_plural "source: %d warnings in %s"
++msgstr[0] "source:錯誤發生在 %s"
++
++#: command_parse.c:564
++msgid "alias: no address"
++msgstr "別名:沒有電子郵件位址"
++
++#: command_parse.c:606
++#, c-format
++msgid "Warning: Bad IDN '%s' in alias '%s'"
++msgstr "警告:別名「%2$s」當中的「%1$s」為無效的 IDN"
++
++#: command_parse.c:684
++#, fuzzy
++msgid "attachments: no disposition"
++msgstr "編輯附件的說明"
++
++#: command_parse.c:695
++#, fuzzy
++msgid "Current attachments settings:"
++msgstr "編輯附件的說明"
++
++#: command_parse.c:725
++#, fuzzy
++msgid "attachments: invalid disposition"
++msgstr "編輯附件的說明"
++
++#: command_parse.c:764 command_parse.c:1753 command_parse.c:2205
++#: gui/color.c:1223 gui/color.c:1329 hook.c:131 hook.c:395 keymap.c:1114
++#: keymap.c:1287 keymap.c:1440 keymap.c:1504 mutt_lua.c:485 score.c:119
++#, c-format
++msgid "%s: too many arguments"
++msgstr "%s: 太多參數"
++
++#: command_parse.c:801
++#, c-format
++msgid "%sgroup: missing -rx or -addr"
++msgstr ""
++
++#: command_parse.c:827
++#, fuzzy, c-format
++msgid "%sgroup: warning: bad IDN '%s'"
++msgstr "警告:別名「%2$s」當中的「%1$s」為無效的 IDN"
++
++#: command_parse.c:898
++#, c-format
++msgid "Error: %s"
++msgstr ""
++
++#: command_parse.c:1065
++msgid "invalid header field"
++msgstr "無效的標頭欄位"
++
++#: command_parse.c:1331 command_parse.c:1435
++#, c-format
++msgid "%s: unknown variable"
++msgstr "%s:不明的變數"
++
++#: command_parse.c:1528
++#, c-format
++msgid "%s is unset"
++msgstr "%s 沒有被設定"
++
++#: command_parse.c:1573 mutt_lua.c:480
++#, c-format
++msgid "source: error at %s"
++msgstr "source:錯誤發生在 %s"
++
++#: command_parse.c:1581
++#, fuzzy, c-format
++msgid "source: file %s could not be sourced"
++msgstr "信件未能列印出來"
++
++#: command_parse.c:1604
++#, fuzzy
++msgid "spam: no matching pattern"
++msgstr "標記符合某個格式的信件"
++
++#: command_parse.c:1606
++#, fuzzy
++msgid "nospam: no matching pattern"
++msgstr "反標記符合某個格式的信件"
++
++#: command_parse.c:1762 imap/imap.c:1443
++#, fuzzy, c-format
++msgid "Subscribed to %s"
++msgstr "訂閱 %s…"
++
++#: command_parse.c:1766
++#, fuzzy, c-format
++msgid "Could not subscribe to %s"
++msgstr "訂閱 %s…"
++
++#: command_parse.c:1774 command_parse.c:2226
++#, fuzzy
++msgid "No folder specified"
++msgstr "沒有指定標題"
++
++#: command_parse.c:1943
++#, fuzzy
++msgid "unattachments: no disposition"
++msgstr "編輯附件的說明"
++
++#: command_parse.c:1981
++msgid "unattachments: invalid disposition"
++msgstr ""
++
++#: command_parse.c:2214 imap/imap.c:1445
++#, fuzzy, c-format
++msgid "Unsubscribed from %s"
++msgstr "取消訂閱 %s…"
++
++#: command_parse.c:2218
++#, fuzzy, c-format
++msgid "Could not unsubscribe from %s"
++msgstr "取消訂閱 %s…"
++
++#: compose.c:97
+ msgid "There are no attachments"
+ msgstr "沒有附件"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:166
++#: compose.c:164
+ msgid "From: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:168 send.c:284
++#: compose.c:166 send.c:284
+ msgid "To: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:170 send.c:286
++#: compose.c:168 send.c:286
+ msgid "Cc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:172 send.c:288
++#: compose.c:170 send.c:288
+ msgid "Bcc: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:174 compose.c:1242 send.c:320
++#: compose.c:172 compose.c:1302 send.c:320
+ msgid "Subject: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:176
++#: compose.c:174
+ #, fuzzy
+ msgid "Reply-To: "
+ msgstr "回覆"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:178 compose.c:1261
++#: compose.c:176 compose.c:1321
+ msgid "Fcc: "
+ msgstr ""
+
+ #. L10N: "Mix" refers to the MixMaster chain for anonymous email
+-#: compose.c:181
++#: compose.c:179
+ msgid "Mix: "
+ msgstr ""
+
+ #. L10N: Compose menu field. Holds "Encrypt", "Sign" related information
+-#: compose.c:184
++#: compose.c:182
+ msgid "Security: "
+ msgstr ""
+
+@@ -908,78 +1055,78 @@ msgstr ""
+ #. it should not be longer than the other compose menu fields.
+ #. Since it shares the row with "Encrypt with:", it should not be longer
+ #. than 15-20 character cells.
+-#: compose.c:192 ncrypt/crypt_gpgme.c:5602 ncrypt/pgp.c:1974
+-#: ncrypt/smime.c:2395
++#: compose.c:190 ncrypt/crypt_gpgme.c:5682 ncrypt/pgp.c:1976
++#: ncrypt/smime.c:2429
+ msgid "Sign as: "
+ msgstr "簽名的身份是:"
+
+ #. L10N: The compose menu autocrypt line
+-#: compose.c:195
++#: compose.c:193
+ msgid "Autocrypt: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:199
++#: compose.c:197
+ msgid "Newsgroups: "
+ msgstr ""
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:201
++#: compose.c:199
+ #, fuzzy
+ msgid "Followup-To: "
+ msgstr "以後的回覆都寄至 %s%s?"
+
+ #. L10N: Compose menu field. May not want to translate.
+-#: compose.c:203
++#: compose.c:201
+ #, fuzzy
+ msgid "X-Comment-To: "
+ msgstr "編輯 Reply-To 欄位"
+
+-#: compose.c:208 compose.c:224
++#: compose.c:206 compose.c:222
+ msgid "Send"
+ msgstr "寄出"
+
+-#: compose.c:209 compose.c:225 remailer.c:77
++#: compose.c:207 compose.c:223 remailer.c:75
+ msgid "Abort"
+ msgstr "中斷"
+
+ #. L10N: compose menu help line entry
+-#: compose.c:211
++#: compose.c:209
+ msgid "To"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:213
++#: compose.c:211
+ msgid "CC"
+ msgstr ""
+
+ #. L10N: compose menu help line entry
+-#: compose.c:215 compose.c:227
++#: compose.c:213 compose.c:225
+ msgid "Subj"
+ msgstr ""
+
+-#: compose.c:216 compose.c:228 compose.c:1556
++#: compose.c:214 compose.c:226 compose.c:1616
+ msgid "Attach file"
+ msgstr "附加檔案"
+
+-#: compose.c:217 compose.c:229
++#: compose.c:215 compose.c:227
+ msgid "Descrip"
+ msgstr "敘述"
+
+-#: compose.c:226
++#: compose.c:224
+ #, fuzzy
+ msgid "Newsgroups"
+ msgstr "沒有指定標題"
+
+ #. L10N: Autocrypt recommendation flag: off.
+ #. * This is displayed when Autocrypt is turned off.
+-#: compose.c:239 compose.c:473
++#: compose.c:237 compose.c:472
+ msgid "Off"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: no.
+ #. * This is displayed when Autocrypt cannot encrypt to the recipients.
+-#: compose.c:242
++#: compose.c:240
+ msgid "No"
+ msgstr ""
+
+@@ -987,7 +1134,7 @@ msgstr ""
+ #. * 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:247
++#: compose.c:245
+ msgid "Discouraged"
+ msgstr ""
+
+@@ -995,14 +1142,14 @@ msgstr ""
+ #. * 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:252
++#: compose.c:250
+ msgid "Available"
+ msgstr ""
+
+ #. L10N: Autocrypt recommendation flag: yes.
+ #. * This is displayed when Autocrypt would normally enable encryption
+ #. * automatically.
+-#: compose.c:256
++#: compose.c:254
+ msgid "Yes"
+ msgstr ""
+
+@@ -1012,7 +1159,7 @@ msgstr ""
+ #. (c)lear sets cleartext.
+ #. (a)utomatic defers to the recommendation.
+ #.
+-#: compose.c:338
++#: compose.c:337
+ msgid "Autocrypt: (e)ncrypt, (c)lear, (a)utomatic?"
+ msgstr ""
+
+@@ -1020,53 +1167,53 @@ msgstr ""
+ #. The letter corresponding to the compose menu autocrypt prompt
+ #. (e)ncrypt, (c)lear, (a)utomatic
+ #.
+-#: compose.c:346
++#: compose.c:345
+ msgid "eca"
+ msgstr ""
+
+-#: compose.c:383
++#: compose.c:382
+ #, fuzzy
+ msgid "Not supported"
+ msgstr "不支援標記功能"
+
+-#: compose.c:390
++#: compose.c:389
+ msgid "Sign, Encrypt"
+ msgstr "簽名,加密"
+
+-#: compose.c:395 compose.c:468
++#: compose.c:394 compose.c:467
+ msgid "Encrypt"
+ msgstr "加密"
+
+-#: compose.c:400
++#: compose.c:399
+ msgid "Sign"
+ msgstr "簽名"
+
+-#: compose.c:406
++#: compose.c:405
+ msgid "None"
+ msgstr ""
+
+-#: compose.c:415
++#: compose.c:414
+ #, fuzzy
+ msgid " (inline PGP)"
+ msgstr "(繼續)\n"
+
+-#: compose.c:417
++#: compose.c:416
+ msgid " (PGP/MIME)"
+ msgstr ""
+
+-#: compose.c:420
++#: compose.c:419
+ msgid " (S/MIME)"
+ msgstr ""
+
+-#: compose.c:424
++#: compose.c:423
+ msgid " (OppEnc mode)"
+ msgstr ""
+
+-#: compose.c:436 compose.c:445
++#: compose.c:435 compose.c:444
+ msgid "<default>"
+ msgstr "<預設值>"
+
+-#: compose.c:452
++#: compose.c:451
+ #, fuzzy
+ msgid "Encrypt with: "
+ msgstr "加密"
+@@ -1076,12 +1223,12 @@ msgstr "加密"
+ #. Displays the output of the recommendation engine
+ #. (Off, No, Discouraged, Available, Yes)
+ #.
+-#: compose.c:483
++#: compose.c:482
+ #, fuzzy
+ msgid "Recommendation: "
+ msgstr "編輯 Reply-To 欄位"
+
+-#: compose.c:547
++#: compose.c:546
+ msgid "<no chain defined>"
+ msgstr ""
+
+@@ -1092,7 +1239,7 @@ msgstr ""
+ #. The filename is located last to avoid a long path hiding the
+ #. error message.
+ #.
+-#: compose.c:601
++#: compose.c:600
+ #, fuzzy, c-format
+ msgid "Attachment #%d no longer exists: %s"
+ msgstr "%s [#%d] 已不存在"
+@@ -1104,239 +1251,359 @@ msgstr "%s [#%d] 已不存在"
+ #. The filename is located last to avoid a long path hiding the
+ #. prompt question.
+ #.
+-#: compose.c:621
++#: compose.c:620
+ #, fuzzy, c-format
+ msgid "Attachment #%d modified. Update encoding for %s?"
+ msgstr "%s [#%d] 已修改。更新編碼?"
+
+-#: compose.c:716
++#: compose.c:715
+ msgid "-- Attachments"
+ msgstr "-- 附件"
+
+-#: compose.c:770
++#: compose.c:769
+ msgid "You may not delete the only attachment"
+ msgstr "您不可以刪除唯一的附件"
+
+-#: compose.c:1296 edit.c:538 send.c:2462
++#: compose.c:1356 edit.c:536 send.c:2473
+ #, c-format
+ msgid "Bad IDN in '%s': '%s'"
+ msgstr "「%s」中有無效的 IDN:「%s」"
+
+-#: compose.c:1347
++#: compose.c:1407
+ #, fuzzy
+ msgid "Attachment is already at top"
+ msgstr "附件已被儲存"
+
+-#: compose.c:1352 compose.c:1368
++#: compose.c:1412 compose.c:1428
+ #, fuzzy
+ msgid "The fundamental part can't be moved"
+ msgstr "這個附件不會被轉換"
+
+-#: compose.c:1363
++#: compose.c:1423
+ #, fuzzy
+ msgid "Attachment is already at bottom"
+ msgstr "附件被過濾掉"
+
+-#: compose.c:1381
++#: compose.c:1441
+ msgid "Grouping 'alternatives' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1462
++#: compose.c:1522
+ msgid "Grouping 'multilingual' requires at least 2 tagged messages"
+ msgstr ""
+
+-#: compose.c:1475
++#: compose.c:1535
+ msgid "Not all parts have 'Content-Language' set, continue?"
+ msgstr ""
+
+-#: compose.c:1477
++#: compose.c:1537
+ #, fuzzy
+ msgid "Not sending this message"
+ msgstr "寄信途中發生錯誤"
+
+-#: compose.c:1571
++#: compose.c:1631
+ #, fuzzy
+ msgid "Attaching selected file..."
+ msgid_plural "Attaching selected files..."
+ msgstr[0] "正在附加選取了的檔案…"
+
+-#: compose.c:1585
++#: compose.c:1645
+ #, c-format
+ msgid "Unable to attach %s"
+ msgstr "無法附加 %s"
+
+-#: compose.c:1606
++#: compose.c:1666
+ msgid "Open mailbox to attach message from"
+ msgstr "開啟信箱並從它選擇附加的信件"
+
+-#: compose.c:1616
++#: compose.c:1676
+ #, fuzzy
+ msgid "Open newsgroup to attach message from"
+ msgstr "開啟信箱並從它選擇附加的信件"
+
+-#: compose.c:1667
++#: compose.c:1730
+ #, fuzzy, c-format
+ msgid "Unable to open mailbox %s"
+ msgstr "無法鎖住信箱"
+
+-#: compose.c:1676
++#: compose.c:1739
+ msgid "No messages in that folder"
+ msgstr "檔案夾中沒有信件"
+
+-#: compose.c:1686
++#: compose.c:1749
+ msgid "Tag the messages you want to attach"
+ msgstr "請標記您要附加的信件"
+
+-#: compose.c:1715
++#: compose.c:1785
+ msgid "Unable to attach"
+ msgstr "無法附加"
+
+-#: compose.c:1752
++#: compose.c:1822
+ msgid "Recoding only affects text attachments"
+ msgstr "重新編碼只影響文字附件"
+
+-#: compose.c:1757
++#: compose.c:1827
+ msgid "The current attachment won't be converted"
+ msgstr "這個附件不會被轉換"
+
+-#: compose.c:1759
++#: compose.c:1829
+ msgid "The current attachment will be converted"
+ msgstr "這個附件會被轉換"
+
+-#: compose.c:1831
++#: compose.c:1901
+ msgid "Empty 'Content-Language'"
+ msgstr ""
+
+-#: compose.c:1849
++#: compose.c:1920
+ msgid "Invalid encoding"
+ msgstr "無效的編碼"
+
+-#: compose.c:1871
++#: compose.c:1942
+ msgid "Save a copy of this message?"
+ msgstr "儲存這封信件的拷貝嗎?"
+
+-#: compose.c:1924
++#: compose.c:1995
+ #, fuzzy
+ msgid "Send attachment with name: "
+ msgstr "用文字方式顯示附件內容"
+
+-#: compose.c:1939
++#: compose.c:2010
+ msgid "Rename to: "
+ msgstr "更改名稱為:"
+
+ #. L10N: "stat" is a system call. Do "man 2 stat" for more information.
+-#: compose.c:1946 editmsg.c:102 editmsg.c:138 sendlib.c:1050
++#: compose.c:2017 editmsg.c:102 editmsg.c:138 sendlib.c:1049
+ #, fuzzy, c-format
+ msgid "Can't stat %s: %s"
+ msgstr "無法讀取:%s"
+
+-#: compose.c:1966
++#: compose.c:2037
+ msgid "New file: "
+ msgstr "建立新檔:"
+
+-#: compose.c:1984
++#: compose.c:2055
+ msgid "Content-Type is of the form base/sub"
+ msgstr "Content-Type 的格式是 base/sub"
+
+-#: compose.c:1991
++#: compose.c:2062
+ #, c-format
+ msgid "Unknown Content-Type %s"
+ msgstr "不明的 Content-Type %s"
+
+-#: compose.c:1999
++#: compose.c:2070
+ #, c-format
+ msgid "Can't create file %s"
+ msgstr "無法建立檔案 %s"
+
+-#: compose.c:2008
++#: compose.c:2079
+ msgid "What we have here is a failure to make an attachment"
+ msgstr "我們無法加上附件"
+
+-#: compose.c:2073
++#: compose.c:2144
+ #, fuzzy
+ msgid "Save (postpone) draft message?"
+ msgstr "要叫出被延遲的信件?"
+
+-#: compose.c:2133
++#: compose.c:2204
+ msgid "Write message to mailbox"
+ msgstr "將信件寫入到信箱"
+
+-#: compose.c:2136
++#: compose.c:2207
+ #, c-format
+ msgid "Writing message to %s ..."
+ msgstr "寫入信件到 %s …"
+
+-#: compose.c:2143
++#: compose.c:2214
+ msgid "Message written"
+ msgstr "信件已寫入"
+
+-#: compose.c:2154
++#: compose.c:2225
+ msgid "No PGP backend configured"
+ msgstr ""
+
+-#: compose.c:2161 compose.c:2225
++#: compose.c:2232 compose.c:2296
+ msgid "S/MIME already selected. Clear and continue?"
+ msgstr ""
+
+-#: compose.c:2186
++#: compose.c:2257
+ msgid "No S/MIME backend configured"
+ msgstr ""
+
+-#: compose.c:2194
++#: compose.c:2265
+ msgid "PGP already selected. Clear and continue?"
+ msgstr ""
+
+-#: compress.c:355 compress.c:499
++#: compress/compress.c:354 compress/compress.c:498
+ #, c-format
+ msgid "Can't append without an append-hook or close-hook : %s"
+ msgstr ""
+
+-#: compress.c:444 compress.c:511 compress.c:590 compress.c:628 mbox/mbox.c:1208
++#: compress/compress.c:443 compress/compress.c:510 compress/compress.c:589
++#: compress/compress.c:627 mbox/mbox.c:1208
+ msgid "Unable to lock mailbox"
+ msgstr "無法鎖住信箱"
+
+-#: compress.c:448 compress.c:518 compress.c:594
++#: compress/compress.c:447 compress/compress.c:517 compress/compress.c:593
+ #, c-format
+ msgid "Decompressing %s"
+ msgstr ""
+
+-#: compress.c:457
++#: compress/compress.c:456
+ msgid "Can't identify the contents of the compressed file"
+ msgstr ""
+
+-#: compress.c:464 compress.c:539
++#: compress/compress.c:463 compress/compress.c:538
+ #, c-format
+ msgid "Can't find mailbox ops for mailbox type %d"
+ msgstr ""
+
+-#: compress.c:521
++#: compress/compress.c:520
+ #, fuzzy, c-format
+ msgid "Compress command failed: %s"
+ msgstr "預先連接指令失敗"
+
+-#: compress.c:532
++#: compress/compress.c:531
+ msgid "Unsupported mailbox type for appending"
+ msgstr ""
+
+-#: compress.c:618
++#: compress/compress.c:617
+ msgid "Can't sync a compressed file without a close-hook"
+ msgstr ""
+
+-#: compress.c:640 compress.c:692
++#: compress/compress.c:639 compress/compress.c:691
+ #, fuzzy, c-format
+ msgid "Compressing %s"
+ msgstr "拷貝到 %s…"
+
+-#: compress.c:687
++#: compress/compress.c:686
+ #, fuzzy, c-format
+ msgid "Compressed-appending to %s..."
+ msgstr "拷貝到 %s…"
+
+-#: compress.c:699 editmsg.c:247
++#: compress/compress.c:698 editmsg.c:247
+ #, c-format
+ msgid "Error. Preserving temporary file: %s"
+ msgstr "發生錯誤,保留暫存檔:%s"
+
++#: config/bool.c:70
++#, fuzzy, c-format
++msgid "Invalid boolean value: %s"
++msgstr "無效的相對日期:%s"
++
++#: config/bool.c:131
++#, fuzzy, c-format
++msgid "Invalid boolean value: %ld"
++msgstr "無效的相對日期:%s"
++
++#: config/enum.c:62
++#, fuzzy, c-format
++msgid "Invalid enum value: %s"
++msgstr "%d:無效的信件號碼。\n"
++
++#: config/enum.c:149
++#, fuzzy, c-format
++msgid "Invalid enum value: %ld"
++msgstr "無效的日子:%s"
++
++#: config/long.c:50
++#, fuzzy, c-format
++msgid "Invalid long: %s"
++msgstr "無效的月份:%s"
++
++#: config/long.c:56 config/long.c:114 config/number.c:68 config/number.c:133
++#, fuzzy, c-format
++msgid "Option %s may not be negative"
++msgstr "功能在 attach-message 模式下不被支援"
++
++#: config/number.c:49 config/sort.c:145 config/string.c:75 config/string.c:159
++#, c-format
++msgid "Option %s may not be empty"
++msgstr ""
++
++#: config/number.c:56
++#, fuzzy, c-format
++msgid "Invalid number: %s"
++msgstr "%d:無效的信件號碼。\n"
++
++#: config/number.c:62
++#, c-format
++msgid "Number is too big: %s"
++msgstr ""
++
++#: config/number.c:127
++#, fuzzy, c-format
++msgid "Invalid number: %ld"
++msgstr "%d:無效的信件號碼。\n"
++
++#: config/quad.c:69
++#, fuzzy, c-format
++msgid "Invalid quad value: %s"
++msgstr "無效的相對日期:%s"
++
++#: config/quad.c:133
++#, fuzzy, c-format
++msgid "Invalid quad value: %ld"
++msgstr "無效的日子:%s"
++
++#: config/set.c:102
++#, c-format
++msgid "No such variable: %s"
++msgstr ""
++
++#: config/set.c:134 config/set.c:821
++#, fuzzy, c-format
++msgid "Variable '%s' has an invalid type %d"
++msgstr "錯誤:「%s」是無效的 IDN"
++
++#: config/set.c:399 config/set.c:463 config/set.c:528 config/set.c:601
++#: config/set.c:671 config/set.c:744
++#, fuzzy, c-format
++msgid "Unknown variable '%s'"
++msgstr "%s:不明的變數"
++
++#: config/sort.c:192
++#, fuzzy, c-format
++msgid "Invalid sort name: %s"
++msgstr "無效的相對日期:%s"
++
++#: config/sort.c:322
++#, fuzzy, c-format
++msgid "Invalid sort type: %ld"
++msgstr "無效的相對日期:%s"
++
++#. L10N: Example: Username at myhost.com
++#: conn/connaccount.c:61
++#, c-format
++msgid "Username at %s: "
++msgstr "在 %s 的使用者名稱:"
++
++#: conn/connaccount.c:117
++#, c-format
++msgid "Password for %s@%s: "
++msgstr "%s@%s 的密碼:"
++
++#. L10N: You will see this error message if (1) you have "oauthbearer" in
++#. one of your $*_authenticators and (2) you do not have the corresponding
++#. $*_oauth_refresh_command defined. So the message does not mean "None of
++#. your $*_oauth_refresh_command's are defined."
++#: conn/connaccount.c:165
++#, fuzzy
++msgid "No OAUTH refresh command defined"
++msgstr "查詢指令尚未定義"
++
++#: conn/connaccount.c:173
++msgid "Unable to run refresh command"
++msgstr ""
++
++#: conn/connaccount.c:184
++msgid "Command returned empty string"
++msgstr ""
++
++#: conn/connaccount.c:191
++#, c-format
++msgid "OAUTH token is too big: %ld"
++msgstr ""
++
+ #: conn/conn_raw.c:160 conn/conn_raw.c:218
+ #, c-format
+ msgid "Looking up %s..."
+@@ -1357,7 +1624,7 @@ msgstr "正連接到 %s…"
+ msgid "Could not connect to %s (%s)"
+ msgstr "無法連線到 %s (%s)"
+
+-#: conn/conn_raw.c:260 conn/ssl.c:1230 curs_lib.c:568 mutt_logging.c:149
++#: conn/conn_raw.c:260 conn/ssl.c:1245 gui/curs_lib.c:569 mutt_logging.c:147
+ msgid "unknown error"
+ msgstr "不明的錯誤"
+
+@@ -1371,24 +1638,24 @@ msgstr "連線到 %s (%s) 時失敗"
+ msgid "Connection to %s has been aborted"
+ msgstr "到 %s 的連線中斷了"
+
+-#: conn/sasl.c:565
++#: conn/sasl.c:547
+ msgid "Unknown SASL profile"
+ msgstr ""
+
+-#: conn/sasl.c:598
++#: conn/sasl.c:580
+ #, fuzzy
+ msgid "Error allocating SASL connection"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: conn/sasl.c:608
++#: conn/sasl.c:590
+ msgid "Error setting SASL security properties"
+ msgstr ""
+
+-#: conn/sasl.c:619
++#: conn/sasl.c:601
+ msgid "Error setting SASL external security strength"
+ msgstr ""
+
+-#: conn/sasl.c:629
++#: conn/sasl.c:611
+ msgid "Error setting SASL external user name"
+ msgstr ""
+
+@@ -1401,138 +1668,112 @@ msgstr "預先連接指令失敗"
+ msgid "Connection to %s closed"
+ msgstr "到 %s 的連線中斷了"
+
+-#: conn/ssl.c:237
++#: conn/ssl.c:222
+ #, c-format
+ msgid "Filling entropy pool: %s..."
+ msgstr ""
+
+-#: conn/ssl.c:243
++#: conn/ssl.c:228
+ #, c-format
+ msgid "%s has insecure permissions"
+ msgstr "%s 的權限不安全"
+
+-#: conn/ssl.c:385
++#: conn/ssl.c:369
+ msgid "SSL disabled due to the lack of entropy"
+ msgstr ""
+
+-#: conn/ssl.c:402
++#: conn/ssl.c:386
+ msgid "Unknown"
+ msgstr "不明"
+
+-#: conn/ssl.c:421 conn/ssl_gnutls.c:186
++#: conn/ssl.c:405 conn/ssl_gnutls.c:188
+ #, c-format
+ msgid "[unable to calculate]"
+ msgstr "【無法計算】"
+
+-#: conn/ssl.c:446
++#: conn/ssl.c:430
+ msgid "[invalid date]"
+ msgstr "【無效的日期】"
+
+-#: conn/ssl.c:506
++#: conn/ssl.c:490
+ msgid "Server certificate is not yet valid"
+ msgstr "伺服器的驗証還未有效"
+
+-#: conn/ssl.c:516
++#: conn/ssl.c:500
+ msgid "Server certificate has expired"
+ msgstr "伺服器的驗証已過期"
+
+ # Well, I don't know how to translate the word "entropy"
+-#: conn/ssl.c:605
++#: conn/ssl.c:589
+ msgid "Failed to find enough entropy on your system"
+ msgstr ""
+
+-#: conn/ssl.c:799
++#: conn/ssl.c:783
+ #, fuzzy
+ msgid "can't get certificate subject"
+ msgstr "無法從對方拿取驗証"
+
+-#: conn/ssl.c:808 conn/ssl.c:816
++#: conn/ssl.c:792 conn/ssl.c:800
+ #, fuzzy
+ msgid "can't get certificate common name"
+ msgstr "無法從對方拿取驗証"
+
+-#: conn/ssl.c:830
++#: conn/ssl.c:814
+ #, c-format
+ msgid "certificate owner does not match hostname %s"
+ msgstr ""
+
+-#: conn/ssl.c:904 conn/ssl_gnutls.c:539
++#: conn/ssl.c:917 conn/ssl_gnutls.c:570
+ msgid "This certificate belongs to:"
+ msgstr "這個驗証屬於:"
+
+-#: conn/ssl.c:913 conn/ssl_gnutls.c:593
++#: conn/ssl.c:926 conn/ssl_gnutls.c:624
+ msgid "This certificate was issued by:"
+ msgstr "這個驗証的派發者:"
+
+-#: conn/ssl.c:922 conn/ssl_gnutls.c:604
++#: conn/ssl.c:935 conn/ssl_gnutls.c:635
+ msgid "This certificate is valid"
+ msgstr "這個驗証有效"
+
+-#: conn/ssl.c:923 conn/ssl_gnutls.c:608
++#: conn/ssl.c:936 conn/ssl_gnutls.c:639
+ #, c-format
+ msgid " from %s"
+ msgstr " 由 %s"
+
+-#: conn/ssl.c:925 conn/ssl_gnutls.c:612
++#: conn/ssl.c:938 conn/ssl_gnutls.c:643
+ #, c-format
+ msgid " to %s"
+ msgstr " 至 %s"
+
+-#: conn/ssl.c:931 conn/ssl_gnutls.c:617
++#: conn/ssl.c:944 conn/ssl_gnutls.c:648
+ #, fuzzy, c-format
+ msgid "SHA1 Fingerprint: %s"
+ msgstr "指模:%s"
+
+-#: conn/ssl.c:937 conn/ssl.c:940 conn/ssl_gnutls.c:623 conn/ssl_gnutls.c:625
++#: conn/ssl.c:950 conn/ssl.c:953 conn/ssl_gnutls.c:654 conn/ssl_gnutls.c:656
+ #, fuzzy
+ msgid "SHA256 Fingerprint: "
+ msgstr "指模:%s"
+
+-#: conn/ssl.c:944 conn/ssl_gnutls.c:664
+-#, c-format
+-msgid "SSL Certificate check (certificate %zu of %zu in chain)"
+-msgstr ""
+-
+-#. L10N: These four letters correspond to the choices in the next four strings:
+-#. (r)eject, accept (o)nce, (a)ccept always, (s)kip.
+-#. These prompts are the interactive certificate confirmation prompts for
+-#. an OpenSSL connection.
+-#: conn/ssl.c:964
+-msgid "roas"
+-msgstr ""
+-
+-#: conn/ssl.c:968
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (a)ccept always, (s)kip"
+-msgstr "(1)不接受,(2)只是這次接受,(3)永遠接受"
+-
+-#: conn/ssl.c:970 conn/ssl_gnutls.c:671
+-msgid "(r)eject, accept (o)nce, (a)ccept always"
+-msgstr "(1)不接受,(2)只是這次接受,(3)永遠接受"
+-
+-#: conn/ssl.c:975
+-#, fuzzy
+-msgid "(r)eject, accept (o)nce, (s)kip"
+-msgstr "(1)不接受,(2)只是這次接受"
+-
+-#: conn/ssl.c:977 conn/ssl_gnutls.c:680
+-msgid "(r)eject, accept (o)nce"
+-msgstr "(1)不接受,(2)只是這次接受"
+-
+-#: conn/ssl.c:981 conn/ssl_gnutls.c:689 ncrypt/crypt_gpgme.c:4729
+-#: ncrypt/pgpkey.c:664 ncrypt/smime.c:549
++#: conn/ssl.c:957 conn/ssl_gnutls.c:695
++#, c-format
++msgid "SSL Certificate check (certificate %zu of %zu in chain)"
++msgstr ""
++
++#: conn/ssl.c:994 conn/ssl_gnutls.c:720 ncrypt/crypt_gpgme.c:4777
++#: ncrypt/pgpkey.c:667 ncrypt/smime.c:551
+ msgid "Exit "
+ msgstr "離開 "
+
+-#: conn/ssl.c:1016 conn/ssl_gnutls.c:742
++#: conn/ssl.c:1029 conn/ssl_gnutls.c:773
+ msgid "Warning: Couldn't save certificate"
+ msgstr "警告:未能儲存驗証"
+
+-#: conn/ssl.c:1020 conn/ssl_gnutls.c:746
++#: conn/ssl.c:1033 conn/ssl_gnutls.c:777
+ msgid "Certificate saved"
+ msgstr "驗証已儲存"
+
+-#: conn/ssl.c:1132
++#: conn/ssl.c:1147
+ #, fuzzy, c-format
+ msgid "Certificate host check failed: %s"
+ msgstr "驗証已儲存"
+@@ -1540,15 +1781,15 @@ msgstr "驗証已儲存"
+ #. L10N: This is a warning when trying to set the host name for
+ #. * TLS Server Name Indication (SNI). This allows the server to present
+ #. * the correct certificate if it supports multiple hosts.
+-#: conn/ssl.c:1213 conn/ssl_gnutls.c:1072
++#: conn/ssl.c:1228 conn/ssl_gnutls.c:1105
+ msgid "Warning: unable to set TLS SNI host name"
+ msgstr ""
+
+-#: conn/ssl.c:1224
++#: conn/ssl.c:1239
+ msgid "I/O error"
+ msgstr ""
+
+-#: conn/ssl.c:1233
++#: conn/ssl.c:1248
+ #, fuzzy, c-format
+ msgid "SSL failed: %s"
+ msgstr "登入失敗: %s"
+@@ -1556,96 +1797,80 @@ msgstr "登入失敗: %s"
+ #. L10N: an SSL context is a data structure returned by the OpenSSL
+ #. function SSL_CTX_new(). In this case it returned NULL: an
+ #. error condition.
+-#: conn/ssl.c:1269
++#: conn/ssl.c:1284
+ #, fuzzy
+ msgid "Unable to create SSL context"
+ msgstr "[-- 錯誤:無法建立 OpenSSL 子程序! --]\n"
+
+-#: conn/ssl.c:1322
++#: conn/ssl.c:1337
+ msgid "Warning: error enabling ssl_verify_partial_chains"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:150 conn/ssl_gnutls.c:784 conn/ssl_gnutls.c:793
++#: conn/ssl_gnutls.c:152 conn/ssl_gnutls.c:817 conn/ssl_gnutls.c:826
+ msgid "Unable to get certificate from peer"
+ msgstr "無法從對方拿取驗証"
+
+-#: conn/ssl_gnutls.c:155
++#: conn/ssl_gnutls.c:157
+ #, c-format
+ msgid "Certificate verification error (%s)"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:162
++#: conn/ssl_gnutls.c:164
+ #, fuzzy
+ msgid "Certificate is not X.509"
+ msgstr "驗証已儲存"
+
+-#: conn/ssl_gnutls.c:349 conn/ssl_gnutls.c:483
++#: conn/ssl_gnutls.c:351 conn/ssl_gnutls.c:485
+ #, fuzzy
+ msgid "Error initialising gnutls certificate data"
+ msgstr "無法初始化終端機"
+
+-#: conn/ssl_gnutls.c:355 conn/ssl_gnutls.c:489
++#: conn/ssl_gnutls.c:357 conn/ssl_gnutls.c:491
+ msgid "Error processing certificate data"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:635
++#: conn/ssl_gnutls.c:666
+ #, fuzzy
+ msgid "WARNING: Server certificate is not yet valid"
+ msgstr "伺服器的驗証還未有效"
+
+-#: conn/ssl_gnutls.c:640
++#: conn/ssl_gnutls.c:671
+ #, fuzzy
+ msgid "WARNING: Server certificate has expired"
+ msgstr "伺服器的驗証已過期"
+
+-#: conn/ssl_gnutls.c:645
++#: conn/ssl_gnutls.c:676
+ #, fuzzy
+ msgid "WARNING: Server certificate has been revoked"
+ msgstr "伺服器的驗証已過期"
+
+-#: conn/ssl_gnutls.c:650
++#: conn/ssl_gnutls.c:681
+ msgid "WARNING: Server hostname does not match certificate"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:655
++#: conn/ssl_gnutls.c:686
+ #, fuzzy
+ msgid "WARNING: Signer of server certificate is not a CA"
+ msgstr "伺服器的驗証還未有效"
+
+-#: conn/ssl_gnutls.c:659 conn/ssl_gnutls.c:1004
++#: conn/ssl_gnutls.c:690 conn/ssl_gnutls.c:1037
+ msgid "Warning: Server certificate was signed using an insecure algorithm"
+ msgstr ""
+
+-#. L10N: These three letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce, (a)ccept always.
+-#. This is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:676
+-msgid "roa"
+-msgstr "123"
+-
+-#. L10N: These two letters correspond to the choices in the string:
+-#. (r)eject, accept (o)nce.
+-#. These is an interactive certificate confirmation prompt for
+-#. a GNUTLS connection.
+-#: conn/ssl_gnutls.c:685
+-msgid "ro"
+-msgstr "12"
+-
+-#: conn/ssl_gnutls.c:950 conn/ssl_gnutls.c:992
++#: conn/ssl_gnutls.c:983 conn/ssl_gnutls.c:1025
+ msgid "All available protocols for TLS/SSL connection disabled"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:999
++#: conn/ssl_gnutls.c:1032
+ msgid "Explicit ciphersuite selection via $ssl_ciphers not supported"
+ msgstr ""
+
+-#: conn/ssl_gnutls.c:1120
++#: conn/ssl_gnutls.c:1153
+ #, fuzzy, c-format
+ msgid "SSL/TLS connection using %s (%s/%s/%s)"
+ msgstr "利用 %s (%s) 來進行 SSL"
+
+-#: conn/ssl_gnutls.c:1175 conn/ssl_gnutls.c:1204
++#: conn/ssl_gnutls.c:1210 conn/ssl_gnutls.c:1239
+ msgid "Error: no TLS socket open"
+ msgstr ""
+
+@@ -1664,39 +1889,17 @@ msgstr "連線到 %s (%s) 時失敗"
+ msgid "Tunnel to %s returned error %d (%s)"
+ msgstr ""
+
+-#: copy.c:660
++#: copy.c:662
+ #, c-format
+ msgid "The length calculation was wrong by %ld byte"
+ msgid_plural "The length calculation was wrong by %ld bytes"
+ msgstr[0] ""
+
+-#: copy.c:744
++#: copy.c:746
+ msgid "No decryption engine available for message"
+ msgstr ""
+
+-# Don't translate this!!
+-#: curs_lib.c:378
+-msgid "yes"
+-msgstr ""
+-
+-# Don't translate this!!
+-#: curs_lib.c:379
+-msgid "no"
+-msgstr ""
+-
+-#: curs_lib.c:518
+-msgid "Exit NeoMutt?"
+-msgstr "離開 NeoMutt?"
+-
+-#: curs_lib.c:597
+-msgid "Press any key to continue..."
+-msgstr "按下任何鍵繼續…"
+-
+-#: curs_lib.c:705
+-msgid " ('?' for list): "
+-msgstr " (用 '?' 顯示列表):"
+-
+-#: edit.c:64
++#: edit.c:62
+ #, fuzzy
+ msgid ""
+ "~~ insert a line beginning with a single ~\n"
+@@ -1728,7 +1931,7 @@ msgstr ""
+ "~? 這訊息\n"
+ ". 如果是一行裏的唯一字符,則代表結束輸入\n"
+
+-#: edit.c:75
++#: edit.c:73
+ #, fuzzy
+ msgid ""
+ "~q write file and quit editor\n"
+@@ -1760,20 +1963,20 @@ msgstr ""
+ "~? 這訊息\n"
+ ". 如果是一行裏的唯一字符,則代表結束輸入\n"
+
+-#: edit.c:261
++#: edit.c:259
+ #, c-format
+ msgid "%d: invalid message number.\n"
+ msgstr "%d:無效的信件號碼。\n"
+
+-#: edit.c:416
++#: edit.c:414
+ msgid "(End message with a . on a line by itself)\n"
+ msgstr "(在一行裏輸入一個 . 符號來結束信件)\n"
+
+-#: edit.c:474
++#: edit.c:472
+ msgid "No mailbox.\n"
+ msgstr "沒有信箱。\n"
+
+-#: edit.c:478
++#: edit.c:476
+ msgid "Message contains:\n"
+ msgstr "信件包含:\n"
+
+@@ -1781,19 +1984,19 @@ msgstr "信件包含:\n"
+ #. not IN the middle of the content.
+ #. So it doesn't mean "(message will continue)"
+ #. but means "(press any key to continue using neomutt)".
+-#: edit.c:486 edit.c:547
++#: edit.c:484 edit.c:545
+ msgid "(continue)\n"
+ msgstr "(繼續)\n"
+
+-#: edit.c:499
++#: edit.c:497
+ msgid "missing filename.\n"
+ msgstr "沒有檔名。\n"
+
+-#: edit.c:519
++#: edit.c:517
+ msgid "No lines in message.\n"
+ msgstr "文章中沒有文字。\n"
+
+-#: edit.c:558
++#: edit.c:556
+ #, c-format
+ msgid "%s: unknown editor command (~? for help)\n"
+ msgstr "%s:不明的編輯器指令(~? 求助)\n"
+@@ -1840,19 +2043,75 @@ msgstr "無法把資料加到檔案夾:%s"
+ msgid "multipart message has no boundary parameter"
+ msgstr "多部份郵件沒有分隔的參數"
+
+-#: flags.c:382 index.c:2561 index.c:2604 index.c:3134 index.c:3171
++#: flags.c:381 index.c:2587 index.c:2630 index.c:3160 index.c:3197
+ #: mutt_thread.c:1091 mutt_thread.c:1158 mutt_thread.c:1246
+ msgid "Threading is not enabled"
+ msgstr "序列功能尚未啟動"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Set flag"
+ msgstr "設定旗標"
+
+-#: flags.c:442
++#: flags.c:441
+ msgid "Clear flag"
+ msgstr "清除旗標"
+
++#: gui/color.c:633 gui/color.c:644
++#, c-format
++msgid "%s: color not supported by term"
++msgstr "%s:終端機無法顯示色彩"
++
++#: gui/color.c:652
++#, c-format
++msgid "%s: no such color"
++msgstr "%s:沒有這種顏色"
++
++#: gui/color.c:717 gui/color.c:740 gui/color.c:751 gui/color.c:842
++#, c-format
++msgid "%s: no such object"
++msgstr "%s:沒有這個物件"
++
++#: gui/color.c:1142
++#, c-format
++msgid "%s: no such attribute"
++msgstr "%s:沒有這個屬性"
++
++#: gui/color.c:1244
++msgid "default colors not supported"
++msgstr "不支援預設的色彩"
++
++#: gui/color.c:1282
++#, c-format
++msgid "Maximum quoting level is %d"
++msgstr ""
++
++#: gui/color.c:1319
++#, fuzzy, c-format
++msgid "%s: invalid number: %s"
++msgstr "%d:無效的信件號碼。\n"
++
++# Don't translate this!!
++#: gui/curs_lib.c:379
++msgid "yes"
++msgstr ""
++
++# Don't translate this!!
++#: gui/curs_lib.c:380
++msgid "no"
++msgstr ""
++
++#: gui/curs_lib.c:519
++msgid "Exit NeoMutt?"
++msgstr "離開 NeoMutt?"
++
++#: gui/curs_lib.c:598
++msgid "Press any key to continue..."
++msgstr "按下任何鍵繼續…"
++
++#: gui/curs_lib.c:749
++msgid " ('?' for list): "
++msgstr " (用 '?' 顯示列表):"
++
+ #: handler.c:102
+ #, fuzzy, c-format
+ msgid "[-- Type: %s/%s%s%s, Encoding: %s, Size: %s --]\n"
+@@ -1873,23 +2132,23 @@ msgstr "[-- 使用 %s 自動顯示 --]\n"
+ msgid "Invoking autoview command: %s"
+ msgstr "執行自動顯示指令:%s"
+
+-#: handler.c:591 mutt_attach.c:527 mutt_attach.c:714 mutt_attach.c:745
+-#: mutt_attach.c:1087 mutt_attach.c:1152 ncrypt/pgpkey.c:723
+-#: ncrypt/pgpkey.c:920
++#: handler.c:590 mutt_attach.c:555 mutt_attach.c:747 mutt_attach.c:778
++#: mutt_attach.c:1120 mutt_attach.c:1185 ncrypt/pgpkey.c:756
++#: ncrypt/pgpkey.c:955
+ msgid "Can't create filter"
+ msgstr "無法建立過濾器"
+
+-#: handler.c:595
++#: handler.c:594
+ #, c-format
+ msgid "[-- Can't run %s. --]\n"
+ msgstr "[-- 不能執行 %s 。 --]\n"
+
+-#: handler.c:614 handler.c:635
++#: handler.c:613 handler.c:634
+ #, c-format
+ msgid "[-- Autoview stderr of %s --]\n"
+ msgstr "[-- 自動顯示 %s 的 stderr 內容 --]\n"
+
+-#: handler.c:764
++#: handler.c:763
+ msgid "[-- Error: message/external-body has no access-type parameter --]\n"
+ msgstr "[-- 錯誤:message/external-body 沒有存取類型 (access-type) 的參數 --]\n"
+
+@@ -1908,7 +2167,7 @@ msgstr "[-- 錯誤:message/external-body 沒有存取類型 (access-type) 的
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:807
++#: handler.c:806
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+@@ -1934,7 +2193,7 @@ msgstr[0] ""
+ #. passing the precise size in bytes. If you are interested the
+ #. function responsible for the prettification is
+ #. mutt_str_pretty_size() in mutt/string.c.
+-#: handler.c:830
++#: handler.c:829
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment (size %s byte) has been deleted --]\n"
+ msgid_plural "[-- This %s/%s attachment (size %s bytes) has been deleted --]\n"
+@@ -1947,7 +2206,7 @@ msgstr[0] "[-- 這個 %s/%s 附件 (%s 個位元組) 已經被刪除了 --]\n"
+ #.
+ #. Caution: Argument three %3$ is also defined but should not be used
+ #. in this translation!
+-#: handler.c:848
++#: handler.c:847
+ #, fuzzy
+ msgid ""
+ "[-- This %s/%s attachment has been deleted --]\n"
+@@ -1959,12 +2218,12 @@ msgstr ""
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The first "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:856
++#: handler.c:855
+ #, fuzzy, c-format
+ msgid "[-- This %s/%s attachment has been deleted --]\n"
+ msgstr "[-- 這個 %s/%s 附件 已經被刪除了 --]\n"
+
+-#: handler.c:866
++#: handler.c:865
+ #, c-format
+ msgid "[-- name: %s --]\n"
+ msgstr "[-- 名稱:%s --]\n"
+@@ -1972,7 +2231,7 @@ msgstr "[-- 名稱:%s --]\n"
+ #. L10N: If the translation of this string is a multi line string, then
+ #. each line should start with "[-- " and end with " --]".
+ #. The "%s/%s" is a MIME type, e.g. "text/plain".
+-#: handler.c:884
++#: handler.c:883
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1988,7 +2247,7 @@ msgstr ""
+ #. The "%s/%s" is a MIME type, e.g. "text/plain". The %s after
+ #. access-type is an access-type as defined by the MIME RFCs, e.g. "FTP",
+ #. "LOCAL-FILE", "MAIL-SERVER".
+-#: handler.c:905
++#: handler.c:904
+ #, fuzzy, c-format
+ msgid ""
+ "[-- This %s/%s attachment is not included, --]\n"
+@@ -1997,95 +2256,95 @@ msgstr ""
+ "[-- 這個 %s/%s 附件無法被附上, --]\n"
+ "[-- 並且被指示的存取類型 (access-type) %s 不被支援 --]\n"
+
+-#: handler.c:1090
++#: handler.c:1089
+ msgid "[-- Error: Could not display any parts of Multipart/Alternative --]\n"
+ msgstr "[-- 錯誤: 無法顯示 Multipart/Alternative! --]\n"
+
+ #. L10N: %s is the attachment description, filename or form_name.
+-#: handler.c:1231
++#: handler.c:1230
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d: %s --]\n"
+ msgstr "[-- 附件 #%d: %s --]\n"
+
+-#: handler.c:1236
++#: handler.c:1235
+ #, fuzzy, c-format
+ msgid "[-- Attachment #%d --]\n"
+ msgstr "[-- 附件 #%d --]\n"
+
+-#: handler.c:1254
++#: handler.c:1253
+ msgid "One or more parts of this message could not be displayed"
+ msgstr ""
+
+-#: handler.c:1320
++#: handler.c:1319
+ #, fuzzy
+ msgid "Unable to open 'memory stream'"
+ msgstr "無法開啟暫存檔"
+
+-#: handler.c:1330
++#: handler.c:1329
+ msgid "Unable to open temporary file"
+ msgstr "無法開啟暫存檔"
+
+-#: handler.c:1379
++#: handler.c:1378
+ #, fuzzy
+ msgid "failed to re-open 'memory stream'"
+ msgstr "無法開啟暫存檔"
+
+-#: handler.c:1620
++#: handler.c:1619
+ msgid "Error: multipart/signed has no protocol"
+ msgstr "錯誤:multipart/signed 沒有通訊協定"
+
+ #. L10N: %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1694
++#: handler.c:1693
+ #, fuzzy, c-format
+ msgid "[-- This is an attachment (use '%s' to view this part) --]\n"
+ msgstr "[-- 這個 %s/%s 附件 (按 '%s' 來顯示這部份) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+ #. The last %s expands to a keystroke/key binding, e.g. 'v'.
+-#: handler.c:1701
++#: handler.c:1700
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (use '%s' to view this part) --]\n"
+ msgstr "[-- %s/%s 尚未支援 (按 '%s' 來顯示這部份) --]\n"
+
+-#: handler.c:1709
++#: handler.c:1708
+ #, fuzzy
+ msgid "[-- This is an attachment (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- 這個 %s/%s 附件 (需要定義一個鍵給 'view-attachments' 來瀏覽附件!) --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1715
++#: handler.c:1714
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported (need 'view-attachments' bound to key) --]\n"
+ msgstr "[-- %s/%s 尚未支援 (需要定義一個鍵給 'view-attachments' 來瀏覽附件!) --]\n"
+
+-#: handler.c:1724
++#: handler.c:1723
+ #, fuzzy
+ msgid "[-- This is an attachment --]\n"
+ msgstr "[-- 這個 %s/%s 附件 --]\n"
+
+ #. L10N: %s/%s is a MIME type, e.g. "text/plain".
+-#: handler.c:1729
++#: handler.c:1728
+ #, fuzzy, c-format
+ msgid "[-- %s/%s is unsupported --]\n"
+ msgstr "[-- %s/%s 尚未支援 --]\n"
+
+-#: help.c:400
++#: help.c:401
+ msgid "ERROR: please report this bug"
+ msgstr "錯誤:請回報這個問題"
+
+-#: help.c:455
++#: help.c:456
+ msgid "<UNKNOWN>"
+ msgstr "<不明的>"
+
+-#: help.c:469
++#: help.c:470
+ msgid "Generic bindings:"
+ msgstr "標準功能定義:"
+
+-#: help.c:473
++#: help.c:474
+ msgid "Unbound functions:"
+ msgstr "未被定義的功能:"
+
+-#: help.c:481
++#: help.c:482
+ #, c-format
+ msgid "Help for %s"
+ msgstr "%s 的求助"
+@@ -2102,41 +2361,41 @@ msgstr ""
+ msgid "badly formatted command string"
+ msgstr ""
+
+-#: hook.c:461
++#: hook.c:466
+ msgid "unhook: Can't do unhook * from within a hook"
+ msgstr "unhook: 在 hook 裡面不能做 unhook *"
+
+-#: hook.c:474
++#: hook.c:479
+ #, c-format
+ msgid "unhook: unknown hook type: %s"
+ msgstr "unhook:不明的 hook type %s"
+
+-#: hook.c:484
++#: hook.c:489
+ #, c-format
+ msgid "unhook: Can't delete a %s from within a %s"
+ msgstr "unhook:不能從 %2$s 刪除 %1$s"
+
+ #. L10N: '%s' is the (misspelled) name of the menu, e.g. 'index' or 'pager'
+-#: icommands.c:259 keymap.c:1161 keymap.c:1346
++#: icommands.c:261 keymap.c:1159 keymap.c:1344
+ #, c-format
+ msgid "%s: no such menu"
+ msgstr "%s:沒有這個選單"
+
+ #. L10N: '%s' is the name of the menu, e.g. 'index' or 'pager', it might
+ #. L10N: also be 'all' when all menus are affected.
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no binds for this menu"
+ msgstr "%s:沒有這個選單"
+
+-#: icommands.c:272
++#: icommands.c:274
+ #, fuzzy, c-format
+ msgid "%s: no macros for this menu"
+ msgstr "%s:沒有這個選單"
+
+ #. L10N: '%s' is the file name of the temporary file
+-#: icommands.c:283 icommands.c:296 icommands.c:316 icommands.c:340
+-#: icommands.c:360 icommands.c:371 imap/message.c:1093
++#: icommands.c:285 icommands.c:297 icommands.c:317 icommands.c:340
++#: icommands.c:360 icommands.c:370 imap/message.c:1093
+ #, c-format
+ msgid "Could not create temporary file %s"
+ msgstr "無法建立暫存檔 %s"
+@@ -2174,30 +2433,30 @@ msgstr "GSSAPI 驗證失敗"
+ msgid "LOGIN disabled on this server"
+ msgstr "伺服器禁止了登入"
+
+-#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:288
++#: imap/auth_login.c:61 imap/auth_plain.c:57 pop/pop_auth.c:289
+ msgid "Logging in..."
+ msgstr "登入中…"
+
+-#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:329
++#: imap/auth_login.c:79 imap/auth_plain.c:97 pop/pop_auth.c:330
+ msgid "Login failed"
+ msgstr "登入失敗"
+
+-#: imap/auth_oauth.c:64 pop/pop_auth.c:346 smtp.c:524
++#: imap/auth_oauth.c:65 pop/pop_auth.c:347 smtp.c:549
+ #, fuzzy
+ msgid "Authenticating (OAUTHBEARER)..."
+ msgstr "驗證中 (SASL)…"
+
+-#: imap/auth_oauth.c:96
++#: imap/auth_oauth.c:97
+ #, fuzzy
+ msgid "OAUTHBEARER authentication failed"
+ msgstr "OAUTHBEARER 驗證失敗"
+
+-#: imap/auth_sasl.c:128 nntp/nntp.c:606 nntp/nntp.c:671 smtp.c:443
++#: imap/auth_sasl.c:128 nntp/nntp.c:608 nntp/nntp.c:673 smtp.c:468
+ #, fuzzy, c-format
+ msgid "Authenticating (%s)..."
+ msgstr "驗證中 (APOP)…"
+
+-#: imap/auth_sasl.c:259 pop/pop_auth.c:200 smtp.c:584 smtp.c:646
++#: imap/auth_sasl.c:259 pop/pop_auth.c:201 smtp.c:609 smtp.c:671
+ msgid "SASL authentication failed"
+ msgstr "SASL 驗證失敗"
+
+@@ -2247,133 +2506,123 @@ msgstr "登入失敗: %s"
+ msgid "Mailbox renamed"
+ msgstr "已完成製造郵箱"
+
+-#: imap/command.c:164
++#: imap/command.c:177
+ #, fuzzy, c-format
+ msgid "Mailbox %s@%s closed"
+ msgstr "郵箱已經關掉"
+
+-#: imap/command.c:1258 imap/command.c:1370
++#: imap/command.c:1287 imap/command.c:1399
+ #, fuzzy, c-format
+ msgid "Connection to %s timed out"
+ msgstr "到 %s 的連線中斷了"
+
+-#: imap/imap.c:87
++#: imap/imap.c:93
+ #, fuzzy
+ msgid "This IMAP server is ancient. NeoMutt does not work with it."
+ msgstr "這個 IMAP 伺服器已過時,NeoMutt 無法使用它"
+
+-#: imap/imap.c:438
++#: imap/imap.c:444
+ #, c-format
+ msgid "Header search without header name: %s"
+ msgstr ""
+
+-#: imap/imap.c:468
++#: imap/imap.c:474
+ #, c-format
+ msgid "Server-side custom search not supported: %s"
+ msgstr ""
+
+-#: imap/imap.c:584
++#: imap/imap.c:590
+ #, fuzzy, c-format
+ msgid "CREATE failed: %s"
+ msgstr "登入失敗: %s"
+
+-#: imap/imap.c:704
++#: imap/imap.c:710
+ #, c-format
+ msgid "Closing connection to %s..."
+ msgstr "正在關閉與 %s 的連線…"
+
+-#: imap/imap.c:882 nntp/nntp.c:1889 pop/pop_lib.c:324 smtp.c:687
++#: imap/imap.c:888 nntp/nntp.c:1891 pop/pop_lib.c:350 smtp.c:712
+ msgid "Secure connection with TLS?"
+ msgstr "利用 TLS 來進行安全連接?"
+
+-#: imap/imap.c:895 nntp/nntp.c:1910 pop/pop_lib.c:343 smtp.c:702
++#: imap/imap.c:901 nntp/nntp.c:1912 pop/pop_lib.c:369 smtp.c:727
+ msgid "Could not negotiate TLS connection"
+ msgstr "未能"
+
+-#: imap/imap.c:910 pop/pop_lib.c:360
++#: imap/imap.c:916 pop/pop_lib.c:386
+ #, fuzzy
+ msgid "Encrypted connection unavailable"
+ msgstr "加密的鑰匙"
+
+-#: imap/imap.c:1417
++#: imap/imap.c:1430
+ #, c-format
+ msgid "Subscribing to %s..."
+ msgstr "訂閱 %s…"
+
+-#: imap/imap.c:1419
++#: imap/imap.c:1432
+ #, fuzzy, c-format
+ msgid "Unsubscribing from %s..."
+ msgstr "取消訂閱 %s…"
+
+-#: imap/imap.c:1430 init.c:2142
+-#, fuzzy, c-format
+-msgid "Subscribed to %s"
+-msgstr "訂閱 %s…"
+-
+-#: imap/imap.c:1432 init.c:2620
+-#, fuzzy, c-format
+-msgid "Unsubscribed from %s"
+-msgstr "取消訂閱 %s…"
+-
+-#: imap/imap.c:1582 imap/message.c:1674
++#: imap/imap.c:1595 imap/message.c:1674
+ #, fuzzy, c-format
+ msgid "Copying %d message to %s..."
+ msgid_plural "Copying %d messages to %s..."
+ msgstr[0] "正在複制 %d 封信件到 %s …"
+
+-#: imap/imap.c:1599 imap/imap.c:2217 imap/message.c:1713 muttlib.c:1505
++#: imap/imap.c:1612 imap/imap.c:2254 imap/message.c:1713 muttlib.c:1503
+ #, c-format
+ msgid "Create %s?"
+ msgstr "建立 %s?"
+
+-#: imap/imap.c:1667
++#: imap/imap.c:1685
+ msgid "Expunge failed"
+ msgstr "刪除 (expunge) 失敗"
+
+-#: imap/imap.c:1683
++#: imap/imap.c:1701
+ #, fuzzy, c-format
+ msgid "Marking %d message deleted..."
+ msgid_plural "Marking %d messages deleted..."
+ msgstr[0] "標簽了的 %d 封信件刪去了…"
+
+ #. L10N: The plural is chosen by the last %d, i.e. the total number
+-#: imap/imap.c:1720
++#: imap/imap.c:1738
+ #, fuzzy, c-format
+ msgid "Saving changed message... [%d/%d]"
+ msgid_plural "Saving changed messages... [%d/%d]"
+ msgstr[0] "正在儲存信件狀態旗標… [%d/%d]"
+
+-#: imap/imap.c:1776
++#: imap/imap.c:1794
+ msgid "Error saving flags. Close anyway?"
+ msgstr ""
+
+-#: imap/imap.c:1783
++#: imap/imap.c:1801
+ #, fuzzy
+ msgid "Error saving flags"
+ msgstr "無法分析位址"
+
+-#: imap/imap.c:1808
++#: imap/imap.c:1826
+ msgid "Expunging messages from server..."
+ msgstr "正在刪除伺服器上的信件…"
+
+-#: imap/imap.c:1814
++#: imap/imap.c:1832
+ msgid "imap_sync_mailbox: EXPUNGE failed"
+ msgstr ""
+
+-#: imap/imap.c:2023 nntp/nntp.c:2486
++#: imap/imap.c:2058 nntp/nntp.c:2488
+ #, c-format
+ msgid "Selecting %s..."
+ msgstr "正在選擇 %s …"
+
+-#: imap/imap.c:2184
++#: imap/imap.c:2221
+ msgid "Error opening mailbox"
+ msgstr "開啟信箱時發生錯誤"
+
+-#: imap/imap.c:2330
++#: imap/imap.c:2367
+ msgid "IMAP server doesn't support custom flags"
+ msgstr ""
+
+-#: imap/imap.c:2374
++#: imap/imap.c:2411
+ #, fuzzy
+ msgid "Invalid IMAP flags"
+ msgstr "無效的月份:%s"
+@@ -2384,7 +2633,7 @@ msgid "Abort download and close mailbox?"
+ msgstr ""
+
+ #: imap/message.c:554 mutt/memory.c:58 mutt/memory.c:98 mutt/memory.c:134
+-#: mutt/string.c:1178 mx.c:1176
++#: mutt/string.c:1201 mx.c:1195
+ msgid "Out of memory"
+ msgstr "記憶體不足"
+
+@@ -2405,7 +2654,7 @@ msgstr "正在取回信件標頭… [%d/%d]"
+ msgid "Unable to fetch headers from this IMAP server version"
+ msgstr "無法取回使用這個 IMAP 伺服器版本的郵件的標頭"
+
+-#: imap/message.c:1099 index.c:1548 nntp/nntp.c:1328 pop/pop.c:426
++#: imap/message.c:1099 index.c:1554 nntp/nntp.c:1330 pop/pop.c:426
+ #, fuzzy
+ msgid "Fetching message headers..."
+ msgstr "正在取回信件標頭… [%d/%d]"
+@@ -2420,157 +2669,157 @@ msgstr "正在上傳信件…"
+ msgid "Copying message %d to %s..."
+ msgstr "正在複制 信件 %d 到 %s …"
+
+-#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2737 pop/pop.c:1110
++#: imap/message.c:1908 imap/message.c:1973 nntp/nntp.c:2739 pop/pop.c:1105
+ msgid "Fetching message..."
+ msgstr "拿取信件中…"
+
+-#: imap/message.c:1959 pop/pop.c:1106
++#: imap/message.c:1959 pop/pop.c:1101
+ msgid "The message index is incorrect. Try reopening the mailbox."
+ msgstr "信件的索引不正確。請再重新開啟信箱"
+
+-#: imap/util.c:767
++#: imap/util.c:796
+ msgid "Continue?"
+ msgstr "繼續?"
+
+-#: index.c:115 index.c:128
++#: index.c:111 index.c:124
+ msgid "Quit"
+ msgstr "離開"
+
+-#: index.c:118 index.c:131 recvattach.c:93
++#: index.c:114 index.c:127 recvattach.c:91
+ msgid "Save"
+ msgstr "儲存"
+
+-#: index.c:119 query.c:81
++#: index.c:115 query.c:79
+ msgid "Mail"
+ msgstr "信件"
+
+-#: index.c:120 pager.c:237
++#: index.c:116 pager.c:229
+ msgid "Reply"
+ msgstr "回覆"
+
+-#: index.c:121
++#: index.c:117
+ msgid "Group"
+ msgstr "群組"
+
+-#: index.c:132 pager.c:244
++#: index.c:128 pager.c:236
+ msgid "Post"
+ msgstr ""
+
+-#: index.c:133 pager.c:245
++#: index.c:129 pager.c:237
+ #, fuzzy
+ msgid "Followup"
+ msgstr "以後的回覆都寄至 %s%s?"
+
+-#: index.c:190 index.c:1362
++#: index.c:186 index.c:1367
+ msgid "No mailbox is open"
+ msgstr "沒有已開啟的信箱"
+
+-#: index.c:196
++#: index.c:192
+ msgid "There are no messages"
+ msgstr "沒有信件"
+
+-#: index.c:202
++#: index.c:198
+ msgid "No visible messages"
+ msgstr "沒有要被顯示的信件"
+
+-#: index.c:208 mx.c:901 pager.c:223 recvattach.c:80
++#: index.c:204 mx.c:920 pager.c:215 recvattach.c:78
+ msgid "Mailbox is read-only"
+ msgstr "信箱是唯讀的"
+
+-#: index.c:214 pager.c:225 recvattach.c:98
++#: index.c:210 pager.c:217 recvattach.c:96
+ msgid "Function not permitted in attach-message mode"
+ msgstr "功能在 attach-message 模式下不被支援"
+
+ #. L10N: %s is one of the CHECK_ACL entries below.
+-#: index.c:239 pager.c:290
++#: index.c:235 pager.c:282
+ #, c-format
+ msgid "%s: Operation not permitted by ACL"
+ msgstr ""
+
+-#: index.c:430
++#: index.c:426
+ msgid "Can't toggle write on a readonly mailbox"
+ msgstr "無法寫入到一個唯讀的信箱"
+
+-#: index.c:437
++#: index.c:433
+ msgid "Changes to folder will be written on folder exit"
+ msgstr "在離開之後將會把改變寫入資料夾"
+
+-#: index.c:442
++#: index.c:438
+ msgid "Changes to folder will not be written"
+ msgstr "將不會把改變寫入資料夾"
+
+-#: index.c:719 muttlib.c:1490 mx.c:206 mx.c:340
++#: index.c:714 muttlib.c:1488 mx.c:206 mx.c:338
+ #, c-format
+ msgid "%s is not a mailbox"
+ msgstr "%s 不是信箱"
+
+-#: index.c:1218
++#: index.c:1223
+ msgid "Mailbox was externally modified. Flags may be wrong."
+ msgstr "信箱已經由其他途徑改變過。旗標可能有錯誤。"
+
+-#: index.c:1227 pager.c:2409
++#: index.c:1232 pager.c:2379
+ msgid "New mail in this mailbox"
+ msgstr "這個信箱中有新信件"
+
+-#: index.c:1242
++#: index.c:1247
+ msgid "Mailbox was externally modified"
+ msgstr "信箱已經由其他途徑更改過"
+
+-#: index.c:1369
++#: index.c:1374
+ msgid "No tagged messages"
+ msgstr "沒有標記了的信件"
+
+-#: index.c:1373 index.c:1647 menu.c:1423
++#: index.c:1378 index.c:1653 menu.c:1423
+ #, fuzzy
+ msgid "Nothing to do"
+ msgstr "正連接到 %s…"
+
+-#: index.c:1470
++#: index.c:1475
+ #, fuzzy
+ msgid "Enter Message-Id: "
+ msgstr "請輸入 %s 的鑰匙 ID:"
+
+-#: index.c:1481
++#: index.c:1487
+ msgid "Article has no parent reference"
+ msgstr ""
+
+-#: index.c:1504
++#: index.c:1510
+ #, fuzzy
+ msgid "Message is not visible in limited view"
+ msgstr "在限制閱覽模式下無法顯示主信件"
+
+-#: index.c:1508
++#: index.c:1514
+ #, fuzzy, c-format
+ msgid "Fetching %s from server..."
+ msgstr "正在刪除伺服器上的信件…"
+
+-#: index.c:1518 nntp/nntp.c:2772
++#: index.c:1524 nntp/nntp.c:2774
+ #, c-format
+ msgid "Article %s not found on the server"
+ msgstr ""
+
+-#: index.c:1544
++#: index.c:1550
+ msgid "No Message-Id. Unable to perform operation."
+ msgstr ""
+
+-#: index.c:1623
++#: index.c:1629
+ #, fuzzy
+ msgid "No deleted messages found in the thread"
+ msgstr "刪除所有在序列中的信件"
+
+-#: index.c:1644
++#: index.c:1650
+ msgid "Jump to message: "
+ msgstr "跳到信件:"
+
+-#: index.c:1650
++#: index.c:1656
+ msgid "Argument must be a message number"
+ msgstr "需要一個信件編號的參數"
+
+-#: index.c:1652
++#: index.c:1658
+ msgid "Invalid message number"
+ msgstr "無效的信件編號"
+
+-#: index.c:1654
++#: index.c:1660
+ msgid "That message is not visible"
+ msgstr "這封信件無法顯示"
+
+@@ -2583,38 +2832,38 @@ msgstr "這封信件無法顯示"
+ #. delete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+ #.
+-#: index.c:1692 index.c:3267 pager.c:3064
++#: index.c:1698 index.c:3293 pager.c:3039
+ #, fuzzy
+ msgid "Can't delete messages"
+ msgstr "沒有要反刪除的信件"
+
+-#: index.c:1695
++#: index.c:1701
+ msgid "Delete messages matching: "
+ msgstr "刪除符合這樣式的信件:"
+
+-#: index.c:1736
++#: index.c:1742
+ msgid "No limit pattern is in effect"
+ msgstr "目前未有指定限制樣式"
+
+ #. L10N: ask for a limit to apply
+-#: index.c:1741
++#: index.c:1747
+ #, c-format
+ msgid "Limit: %s"
+ msgstr "限制: %s"
+
+-#: index.c:1778
++#: index.c:1784
+ msgid "Limit to messages matching: "
+ msgstr "限制只符合這樣式的信件:"
+
+-#: index.c:1809
++#: index.c:1815
+ msgid "To view all messages, limit to \"all\""
+ msgstr ""
+
+-#: index.c:1821 pager.c:2514
++#: index.c:1827 pager.c:2487
+ msgid "Quit NeoMutt?"
+ msgstr "離開 NeoMutt?"
+
+-#: index.c:1924
++#: index.c:1931
+ msgid "Tag messages matching: "
+ msgstr "標記信件的條件:"
+
+@@ -2622,213 +2871,213 @@ msgstr "標記信件的條件:"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. undelete zero, 1, 12, ... messages. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:1935 index.c:3807 pager.c:3418
++#: index.c:1942 index.c:3833 pager.c:3396
+ #, fuzzy
+ msgid "Can't undelete messages"
+ msgstr "沒有要反刪除的信件"
+
+-#: index.c:1939
++#: index.c:1946
+ msgid "Undelete messages matching: "
+ msgstr "反刪除信件的條件:"
+
+-#: index.c:1948
++#: index.c:1955
+ msgid "Untag messages matching: "
+ msgstr "反標記信件的條件:"
+
+-#: index.c:1989
++#: index.c:1996
+ #, fuzzy
+ msgid "Logged out of IMAP servers"
+ msgstr "正在關閉與 IMAP 伺服器的連線…"
+
+-#: index.c:2105
++#: index.c:2113
+ #, fuzzy
+ msgid "No virtual folder and no Message-Id, aborting"
+ msgstr "沒有標題,正在中斷中"
+
+-#: index.c:2117 index.c:2288 index.c:2310 index.c:2331
++#: index.c:2125 index.c:2313 index.c:2335 index.c:2356
+ msgid "Failed to create query, aborting"
+ msgstr ""
+
+-#: index.c:2130
++#: index.c:2138
+ msgid "failed to find message in notmuch database. try running 'notmuch new'."
+ msgstr ""
+
+-#: index.c:2139
++#: index.c:2147
+ msgid "Failed to read thread, aborting"
+ msgstr ""
+
+-#: index.c:2171 mx.c:1252 mx.c:1272
++#: index.c:2179 mx.c:1271 mx.c:1291
+ msgid "Folder doesn't support tagging, aborting"
+ msgstr ""
+
+-#: index.c:2188
++#: index.c:2196
+ #, fuzzy
+ msgid "No tag specified, aborting"
+ msgstr "沒有標題,正在中斷中"
+
+-#: index.c:2198
++#: index.c:2206
+ msgid "Update tags..."
+ msgstr ""
+
+-#: index.c:2238
++#: index.c:2246
+ msgid "Failed to modify tags, aborting"
+ msgstr ""
+
+-#: index.c:2284
++#: index.c:2293
+ #, fuzzy
+ msgid "No query, aborting"
+ msgstr "沒有標題,正在中斷中"
+
+-#: index.c:2299 index.c:2320
++#: index.c:2324 index.c:2345
+ msgid "Windowed queries disabled"
+ msgstr ""
+
+-#: index.c:2304 index.c:2325
++#: index.c:2329 index.c:2350
+ msgid "No notmuch vfolder currently loaded"
+ msgstr ""
+
+-#: index.c:2374
++#: index.c:2399
+ msgid "Open mailbox in read-only mode"
+ msgstr "用唯讀模式開啟信箱"
+
+-#: index.c:2376
++#: index.c:2401
+ msgid "Open mailbox"
+ msgstr "開啟信箱"
+
+-#: index.c:2386
++#: index.c:2411
+ #, fuzzy
+ msgid "No mailboxes have new mail"
+ msgstr "沒有信箱有新信件"
+
+-#: index.c:2419
++#: index.c:2444
+ #, fuzzy
+ msgid "Open newsgroup in read-only mode"
+ msgstr "用唯讀模式開啟信箱"
+
+-#: index.c:2421
++#: index.c:2446
+ msgid "Open newsgroup"
+ msgstr ""
+
+-#: index.c:2538
++#: index.c:2564
+ #, fuzzy
+ msgid "Exit NeoMutt without saving?"
+ msgstr "不儲存便離開 NeoMutt 嗎?"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2554
++#: index.c:2580
+ #, fuzzy
+ msgid "Can't break thread"
+ msgstr "無法建立過濾器"
+
+-#: index.c:2574
++#: index.c:2600
+ msgid "Thread broken"
+ msgstr ""
+
+-#: index.c:2587
++#: index.c:2613
+ msgid "Thread can't be broken, message is not part of a thread"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:2597
++#: index.c:2623
+ msgid "Can't link threads"
+ msgstr ""
+
+-#: index.c:2606
++#: index.c:2632
+ msgid "No Message-ID: header available to link thread"
+ msgstr ""
+
+-#: index.c:2608
++#: index.c:2634
+ #, fuzzy
+ msgid "First, please tag a message to be linked here"
+ msgstr "儲存信件以便稍後寄出"
+
+-#: index.c:2621
++#: index.c:2647
+ msgid "Threads linked"
+ msgstr ""
+
+-#: index.c:2624
++#: index.c:2650
+ msgid "No thread linked"
+ msgstr ""
+
+-#: index.c:2665 index.c:2690
++#: index.c:2691 index.c:2716
+ msgid "You are on the last message"
+ msgstr "您已經在最後一封信了"
+
+-#: index.c:2673 index.c:2716
++#: index.c:2699 index.c:2742
+ msgid "No undeleted messages"
+ msgstr "沒有要反刪除的信件"
+
+-#: index.c:2708 index.c:2733
++#: index.c:2734 index.c:2759
+ msgid "You are on the first message"
+ msgstr "您已經在第一封信了"
+
+-#: index.c:2874
++#: index.c:2900
+ #, fuzzy
+ msgid "No new messages in this limited view"
+ msgstr "在限制閱覽模式下無法顯示主信件"
+
+-#: index.c:2876
++#: index.c:2902
+ #, fuzzy
+ msgid "No new messages"
+ msgstr "沒有新信件"
+
+-#: index.c:2881
++#: index.c:2907
+ #, fuzzy
+ msgid "No unread messages in this limited view"
+ msgstr "在限制閱覽模式下無法顯示主信件"
+
+-#: index.c:2883
++#: index.c:2909
+ #, fuzzy
+ msgid "No unread messages"
+ msgstr "沒有尚未讀取的信件"
+
+-#: index.c:2893 menu.c:1208 pager.c:2644 pattern.c:2652
++#: index.c:2919 menu.c:1208 pager.c:2618 pattern.c:2776
+ msgid "Search wrapped to top"
+ msgstr "搜尋至開頭"
+
+-#: index.c:2898 pager.c:2669 pattern.c:2663
++#: index.c:2924 pager.c:2643 pattern.c:2787
+ msgid "Search wrapped to bottom"
+ msgstr "搜尋至結尾"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2915
++#: index.c:2941
+ #, fuzzy
+ msgid "Can't flag message"
+ msgstr "顯示信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:2961 pager.c:3377
++#: index.c:2987 pager.c:3355
+ msgid "Can't toggle new"
+ msgstr ""
+
+-#: index.c:3057
++#: index.c:3083
+ msgid "No more threads"
+ msgstr "沒有更多的序列"
+
+-#: index.c:3059
++#: index.c:3085
+ msgid "You are on the first thread"
+ msgstr "您已經在第一個序列上"
+
+-#: index.c:3156
++#: index.c:3182
+ #, fuzzy
+ msgid "Thread contains unread or flagged messages"
+ msgstr "序列中有尚未讀取的信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3215 pager.c:3019
++#: index.c:3241 pager.c:2994
+ #, fuzzy
+ msgid "Can't delete message"
+ msgstr "沒有要反刪除的信件"
+
+ #. L10N: CHECK_ACL
+-#: index.c:3339
++#: index.c:3365
+ #, fuzzy
+ msgid "Can't edit message"
+ msgstr "無法寫信件"
+
+ #. L10N: This is displayed when the x-label on one or more
+ #. messages is edited.
+-#: index.c:3432 pager.c:3495
++#: index.c:3458 pager.c:3473
+ #, fuzzy, c-format
+ msgid "%d label changed"
+ msgid_plural "%d labels changed"
+@@ -2837,7 +3086,7 @@ msgstr[0] "信箱沒有變動"
+ #. L10N: This is displayed when editing an x-label, but no messages
+ #. were updated. Possibly due to canceling at the prompt or if the new
+ #. label is the same as the old label.
+-#: index.c:3440 pager.c:3499
++#: index.c:3466 pager.c:3477
+ #, fuzzy
+ msgid "No labels changed"
+ msgstr "信箱沒有變動"
+@@ -2846,7 +3095,7 @@ msgstr "信箱沒有變動"
+ #. L10N: Due to the implementation details we do not know whether we
+ #. mark zero, 1, 12, ... messages as read. So in English we use
+ #. "messages". Your language might have other means to express this.
+-#: index.c:3571
++#: index.c:3597
+ #, fuzzy
+ msgid "Can't mark messages as read"
+ msgstr "跳到這個序列的主信件"
+@@ -2854,14 +3103,14 @@ msgstr "跳到這個序列的主信件"
+ #. L10N: This is the prompt for <mark-message>. Whatever they
+ #. enter will be prefixed by $mark_macro_prefix and will become
+ #. a macro hotkey to jump to the currently selected message.
+-#: index.c:3612
++#: index.c:3638
+ #, fuzzy
+ msgid "Enter macro stroke: "
+ msgstr "請輸入 %s 的鑰匙 ID:"
+
+ #. L10N: "message hotkey" is the key bindings menu description of a
+ #. macro created by <mark-message>.
+-#: index.c:3620
++#: index.c:3646
+ #, fuzzy
+ msgid "message hotkey"
+ msgstr "信件被延遲寄出"
+@@ -2869,266 +3118,124 @@ msgstr "信件被延遲寄出"
+ #. L10N: This is echoed after <mark-message> creates a new hotkey
+ #. macro. %s is the hotkey string ($mark_macro_prefix followed
+ #. by whatever they typed at the prompt.)
+-#: index.c:3625
++#: index.c:3651
+ #, fuzzy, c-format
+ msgid "Message bound to %s"
+ msgstr "郵件已被傳送"
+
+ #. L10N: This error is printed if <mark-message> can't find a
+ #. Message-ID for the currently selected message in the index.
+-#: index.c:3634
++#: index.c:3660
+ #, fuzzy
+ msgid "No message ID to macro"
+ msgstr "檔案夾中沒有信件"
+
+-#: index.c:3688 pager.c:3221 recvattach.c:1646
++#: index.c:3714 pager.c:3196 recvattach.c:1678
+ msgid "Reply by mail as poster prefers?"
+ msgstr ""
+
+-#: index.c:3691 pager.c:3182 pager.c:3194 pager.c:3224
++#: index.c:3717 pager.c:3157 pager.c:3169 pager.c:3199
+ msgid "Posting to this group not allowed, may be moderated. Continue?"
+ msgstr ""
+
+ #. L10N: CHECK_ACL
+-#: index.c:3768 pager.c:3397
++#: index.c:3794 pager.c:3375
+ #, fuzzy
+ msgid "Can't undelete message"
+ msgstr "沒有要反刪除的信件"
+
+-#: init.c:313
++#: init.c:223
+ #, c-format
+ msgid "Error in command line: %s"
+ msgstr "指令行有錯:%s"
+
+-#: init.c:315
++#: init.c:225
+ #, fuzzy, c-format
+ msgid "Warning in command line: %s"
+ msgstr "指令行有錯:%s"
+
+-#: init.c:426
++#: init.c:336
+ #, fuzzy
+ msgid "unable to determine nodename via uname()"
+ msgstr "無法決定使用者名稱"
+
+-#: init.c:580
+-msgid "-group: no group name"
+-msgstr ""
+-
+-#: init.c:590
+-#, fuzzy
+-msgid "out of arguments"
+-msgstr "太少參數"
+-
+-#: init.c:804 init.c:1752
+-#, c-format
+-msgid "Error: Can't build path of '%s'"
+-msgstr ""
+-
+-#: init.c:817
+-#, c-format
+-msgid "Error: Cyclic sourcing of configuration file '%s'"
+-msgstr ""
+-
+-#: init.c:850
+-#, c-format
+-msgid "Error in %s, line %d: %s"
+-msgstr "%s 發生錯誤,行號 %d:%s"
+-
+-#: init.c:861
+-#, fuzzy, c-format
+-msgid "Warning in %s, line %d: %s"
+-msgstr "%s 發生錯誤,行號 %d:%s"
+-
+-#: init.c:885
+-#, c-format
+-msgid "source: errors in %s"
+-msgstr "source:錯誤發生在 %s"
+-
+-#: init.c:885
+-#, fuzzy, c-format
+-msgid "source: reading aborted due to too many errors in %s"
+-msgstr "source: 因 %s 發生太多錯誤,因此閱讀終止"
+-
+-#: init.c:894
+-#, fuzzy, c-format
+-msgid "source: %d warning in %s"
+-msgid_plural "source: %d warnings in %s"
+-msgstr[0] "source:錯誤發生在 %s"
+-
+-#: init.c:923
+-msgid "alias: no address"
+-msgstr "別名:沒有電子郵件位址"
+-
+-#: init.c:965
+-#, c-format
+-msgid "Warning: Bad IDN '%s' in alias '%s'"
+-msgstr "警告:別名「%2$s」當中的「%1$s」為無效的 IDN"
+-
+-#: init.c:1043
+-#, fuzzy
+-msgid "attachments: no disposition"
+-msgstr "編輯附件的說明"
+-
+-#: init.c:1054
+-#, fuzzy
+-msgid "Current attachments settings:"
+-msgstr "編輯附件的說明"
+-
+-#: init.c:1084
+-#, fuzzy
+-msgid "attachments: invalid disposition"
+-msgstr "編輯附件的說明"
+-
+-#: init.c:1160
+-#, c-format
+-msgid "%sgroup: missing -rx or -addr"
+-msgstr ""
+-
+-#: init.c:1186
+-#, fuzzy, c-format
+-msgid "%sgroup: warning: bad IDN '%s'"
+-msgstr "警告:別名「%2$s」當中的「%1$s」為無效的 IDN"
+-
+-#: init.c:1278
+-#, c-format
+-msgid "Error: %s"
+-msgstr ""
+-
+-#: init.c:1445
+-msgid "invalid header field"
+-msgstr "無效的標頭欄位"
+-
+-#: init.c:1711 init.c:1815
+-#, c-format
+-msgid "%s: unknown variable"
+-msgstr "%s:不明的變數"
+-
+-#: init.c:1908
+-#, c-format
+-msgid "%s is unset"
+-msgstr "%s 沒有被設定"
+-
+-#: init.c:1953 mutt_lua.c:478
+-#, c-format
+-msgid "source: error at %s"
+-msgstr "source:錯誤發生在 %s"
+-
+-#: init.c:1961
+-#, fuzzy, c-format
+-msgid "source: file %s could not be sourced"
+-msgstr "信件未能列印出來"
+-
+-#: init.c:1984
+-#, fuzzy
+-msgid "spam: no matching pattern"
+-msgstr "標記符合某個格式的信件"
+-
+-#: init.c:1986
+-#, fuzzy
+-msgid "nospam: no matching pattern"
+-msgstr "反標記符合某個格式的信件"
+-
+-#: init.c:2146
+-#, fuzzy, c-format
+-msgid "Could not subscribe to %s"
+-msgstr "訂閱 %s…"
+-
+-#: init.c:2154 init.c:2632
+-#, fuzzy
+-msgid "No folder specified"
+-msgstr "沒有指定標題"
+-
+-#: init.c:2341
+-#, fuzzy
+-msgid "unattachments: no disposition"
+-msgstr "編輯附件的說明"
+-
+-#: init.c:2379
+-msgid "unattachments: invalid disposition"
+-msgstr ""
+-
+-#: init.c:2624
+-#, fuzzy, c-format
+-msgid "Could not unsubscribe from %s"
+-msgstr "取消訂閱 %s…"
+-
+-#: init.c:3292
++#: init.c:1042
+ #, c-format
+ msgid "%s: unknown command"
+ msgstr "%s:不明的指令"
+
+-#: init.c:3837
++#: init.c:1588
+ msgid "'charset' must contain exactly one character set name"
+ msgstr ""
+
+-#: init.c:3853 init.c:3877 init.c:3912
++#: init.c:1604 init.c:1628 init.c:1663
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %s"
+ msgstr "無效的日子:%s"
+
+-#: init.c:3890
++#: init.c:1641
+ #, c-format
+ msgid "Option %s may not be set or reset from the pager"
+ msgstr ""
+
+-#: init.c:3928
++#: init.c:1679
+ #, fuzzy, c-format
+ msgid "Option %s may not be set when in attach-message mode"
+ msgstr "功能在 attach-message 模式下不被支援"
+
+ #. L10N: This applies to the "$wrap_headers" config variable
+-#: init.c:3943
++#: init.c:1694
+ #, c-format
+ msgid "Option %s must between 78 and 998 inclusive"
+ msgstr ""
+
+-#: keymap.c:373 keymap.c:381
++#: keymap.c:371 keymap.c:379
+ #, c-format
+ msgid "Binding '%s' will alias '%s' Before, try: 'bind %s %s noop' https://neomutt.org/guide/configuration.html#bind-warnings"
+ msgstr ""
+
+-#: keymap.c:757
++#: keymap.c:755
+ msgid "Macro loop detected"
+ msgstr "檢測到巨集中有迴圈"
+
+-#: keymap.c:1064 keymap.c:1099
++#: keymap.c:1062 keymap.c:1097
+ msgid "Key is not bound"
+ msgstr "這個鍵還未被定義功能"
+
+-#: keymap.c:1104
++#: keymap.c:1102
+ #, c-format
+ msgid "Key is not bound. Press '%s' for help."
+ msgstr "這個鍵還未被定義功能。 按 '%s' 以取得說明"
+
+-#: keymap.c:1177
++#: keymap.c:1175
+ #, c-format
+ msgid "%s: null key sequence"
+ msgstr "%s: 空的鍵值序列"
+
+-#: keymap.c:1212
++#: keymap.c:1210
+ #, c-format
+ msgid "Function '%s' not available for menu '%s'"
+ msgstr ""
+
+-#: keymap.c:1495
++#: keymap.c:1493
+ msgid "macro: empty key sequence"
+ msgstr "macro:空的鍵值序列"
+
+-#: keymap.c:1543
++#: keymap.c:1541
+ msgid "exec: no arguments"
+ msgstr "exec:沒有引數"
+
+-#: keymap.c:1563
++#: keymap.c:1561
+ #, c-format
+ msgid "%s: no such function"
+ msgstr "%s:沒有這個功能"
+
+-#: keymap.c:1584
++#: keymap.c:1582
+ #, fuzzy
+ msgid "Enter keys (^G to abort): "
+ msgstr "請輸入 %s 的鑰匙 ID:"
+
+-#: keymap.c:1590
++#: keymap.c:1588
+ #, c-format
+ msgid "Char = %s, Octal = %o, Decimal = %d"
+ msgstr ""
+@@ -3152,7 +3259,7 @@ msgstr "沒有發現類型 %s 的 mailcap 紀錄"
+ msgid "Scanning %s..."
+ msgstr "正在選擇 %s …"
+
+-#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:353
++#: maildir/shared.c:831 mbox/mbox.c:215 mbox/mbox.c:381 mx.c:351
+ #, c-format
+ msgid "Reading %s..."
+ msgstr "讀取 %s 中…"
+@@ -3167,13 +3274,13 @@ msgid "md_commit_message(): unable to set time on file"
+ msgstr ""
+
+ #. L10N: Displayed before/as a mailbox is being synced
+-#: maildir/shared.c:1723 mbox/mbox.c:1276 mx.c:461 notmuch/mutt_notmuch.c:2364
++#: maildir/shared.c:1734 mbox/mbox.c:1276 mx.c:459 notmuch/mutt_notmuch.c:2364
+ #, c-format
+ msgid "Writing %s..."
+ msgstr "寫入 %s 中…"
+
+ #. L10N: Try to limit to 80 columns
+-#: main.c:227
++#: main.c:160
+ msgid ""
+ "usage:\n"
+ " neomutt [-Enx] [-e <command>] [-F <config>] [-H <draft>] [-i <include>]\n"
+@@ -3196,7 +3303,7 @@ msgid ""
+ msgstr ""
+
+ #. L10N: Try to limit to 80 columns. If more space is needed add an indented line
+-#: main.c:247
++#: main.c:180
+ msgid ""
+ "options:\n"
+ " -- Special argument forces NeoMutt to stop option parsing and treat\n"
+@@ -3239,54 +3346,54 @@ msgid ""
+ " or exit immediately with exit code 1 otherwise"
+ msgstr ""
+
+-#: main.c:312
++#: main.c:245
+ msgid "Error initializing terminal"
+ msgstr "無法初始化終端機"
+
+-#: main.c:390
++#: main.c:323
+ msgid "unable to determine username"
+ msgstr "無法決定使用者名稱"
+
+-#: main.c:396
++#: main.c:329
+ msgid "unable to determine home directory"
+ msgstr "無法決定 home 目錄"
+
+-#: main.c:640
++#: main.c:572
+ #, fuzzy, c-format
+ msgid "Error: value '%s' is invalid for -d"
+ msgstr "錯誤:「%s」是無效的 IDN"
+
+-#: main.c:884
++#: main.c:815
+ msgid "Failed to parse mailto: link"
+ msgstr ""
+
+-#: main.c:896 send.c:2452 send.c:2456
++#: main.c:827 send.c:2463 send.c:2467
+ msgid "No recipients specified"
+ msgstr "沒有指定收件人"
+
+-#: main.c:923
++#: main.c:854
+ msgid "Can't use -E flag with stdin"
+ msgstr ""
+
+-#: main.c:1007
++#: main.c:938
+ #, fuzzy, c-format
+ msgid "Can't parse message template: %s"
+ msgstr "無法開啟信件檔案:%s"
+
+-#: main.c:1073 mutt_header.c:329
++#: main.c:1004 mutt_header.c:329
+ #, c-format
+ msgid "%s: unable to attach file"
+ msgstr "%s:無法附帶檔案"
+
+-#: main.c:1156
++#: main.c:1087
+ msgid "No mailbox with new mail"
+ msgstr "沒有信箱有新信件"
+
+-#: main.c:1180
++#: main.c:1111
+ msgid "No incoming mailboxes defined"
+ msgstr "沒有定義任何的收信郵箱"
+
+-#: main.c:1230
++#: main.c:1161
+ msgid "Mailbox is empty"
+ msgstr "信箱內空無一物"
+
+@@ -3328,52 +3435,52 @@ msgstr "無法重開信箱"
+ msgid "Can't write message"
+ msgstr "無法寫信件"
+
+-#: menu.c:632
++#: menu.c:631
+ msgid "Jump to: "
+ msgstr "跳到:"
+
+-#: menu.c:641
++#: menu.c:640
+ msgid "Invalid index number"
+ msgstr "無效的索引編號"
+
+-#: menu.c:645 menu.c:671 menu.c:744 menu.c:810 menu.c:828 menu.c:843 menu.c:858
+-#: menu.c:873 menu.c:890 menu.c:907 menu.c:1553
++#: menu.c:644 menu.c:670 menu.c:743 menu.c:809 menu.c:827 menu.c:842 menu.c:857
++#: menu.c:872 menu.c:889 menu.c:906 menu.c:1553
+ msgid "No entries"
+ msgstr "沒有資料"
+
+-#: menu.c:668
++#: menu.c:667
+ msgid "You can't scroll down farther"
+ msgstr "您無法再向下捲動了"
+
+-#: menu.c:690
++#: menu.c:689
+ msgid "You can't scroll up farther"
+ msgstr "您無法再向上捲動了"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the first page"
+ msgstr "您現在在第一頁"
+
+-#: menu.c:737
++#: menu.c:736
+ msgid "You are on the last page"
+ msgstr "您現在在最後一頁"
+
+-#: menu.c:922
++#: menu.c:921
+ msgid "You are on the last entry"
+ msgstr "您現在在最後一項"
+
+-#: menu.c:937
++#: menu.c:936
+ msgid "You are on the first entry"
+ msgstr "您現在在第一項"
+
+-#: menu.c:1172 pager.c:2692 pattern.c:2578
++#: menu.c:1172 pager.c:2666 pattern.c:2702
+ msgid "Search for: "
+ msgstr "搜尋:"
+
+-#: menu.c:1173 pager.c:2693 pattern.c:2579
++#: menu.c:1173 pager.c:2667 pattern.c:2703
+ msgid "Reverse search for: "
+ msgstr "返向搜尋:"
+
+-#: menu.c:1226 pager.c:2641 pager.c:2666 pager.c:2800 pattern.c:2708
++#: menu.c:1226 pager.c:2615 pager.c:2640 pager.c:2774 pattern.c:2832
+ msgid "Not found"
+ msgstr "沒有找到"
+
+@@ -3416,20 +3523,20 @@ msgstr "正在等待 flock 執行成功… %d"
+ msgid "Bad history file format (line %d)"
+ msgstr ""
+
+-#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1006 ncrypt/crypt_gpgme.c:2381
+-#: ncrypt/crypt_gpgme.c:2401 ncrypt/crypt_gpgme.c:2460
+-#: ncrypt/crypt_gpgme.c:2477 ncrypt/crypt_gpgme.c:2509
+-#: ncrypt/crypt_gpgme.c:2527 ncrypt/crypt_gpgme.c:2611
+-#: ncrypt/crypt_gpgme.c:3194 ncrypt/crypt_gpgme.c:3292
+-#: ncrypt/crypt_gpgme.c:4373 ncrypt/pgp.c:576 ncrypt/pgp.c:583 ncrypt/pgp.c:896
+-#: ncrypt/pgp.c:1014 ncrypt/pgp.c:1161 ncrypt/pgp.c:1181 ncrypt/pgp.c:1215
+-#: ncrypt/pgp.c:1568 ncrypt/pgpkey.c:708 ncrypt/pgpkey.c:902
+-#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1092 ncrypt/smime.c:1100
+-#: ncrypt/smime.c:1191 ncrypt/smime.c:1299 ncrypt/smime.c:1364
+-#: ncrypt/smime.c:1372 ncrypt/smime.c:1571 ncrypt/smime.c:1967
+-#: ncrypt/smime.c:2046 ncrypt/smime.c:2053 ncrypt/smime.c:2156
+-#: ncrypt/smime.c:2281 ncrypt/smime.c:2297 nntp/nntp.c:1397 nntp/nntp.c:2237
+-#: pattern.c:1132 pop/pop.c:182
++#: mutt/history.c:262 ncrypt/crypt_gpgme.c:1005 ncrypt/crypt_gpgme.c:2420
++#: ncrypt/crypt_gpgme.c:2440 ncrypt/crypt_gpgme.c:2499
++#: ncrypt/crypt_gpgme.c:2516 ncrypt/crypt_gpgme.c:2548
++#: ncrypt/crypt_gpgme.c:2566 ncrypt/crypt_gpgme.c:2650
++#: ncrypt/crypt_gpgme.c:3237 ncrypt/crypt_gpgme.c:3335
++#: ncrypt/crypt_gpgme.c:4421 ncrypt/pgp.c:575 ncrypt/pgp.c:582 ncrypt/pgp.c:895
++#: ncrypt/pgp.c:1013 ncrypt/pgp.c:1160 ncrypt/pgp.c:1180 ncrypt/pgp.c:1214
++#: ncrypt/pgp.c:1570 ncrypt/pgpkey.c:741 ncrypt/pgpkey.c:937
++#: ncrypt/pgpmicalg.c:187 ncrypt/smime.c:1126 ncrypt/smime.c:1134
++#: ncrypt/smime.c:1225 ncrypt/smime.c:1333 ncrypt/smime.c:1398
++#: ncrypt/smime.c:1406 ncrypt/smime.c:1605 ncrypt/smime.c:2001
++#: ncrypt/smime.c:2080 ncrypt/smime.c:2087 ncrypt/smime.c:2190
++#: ncrypt/smime.c:2315 ncrypt/smime.c:2331 nntp/nntp.c:1399 nntp/nntp.c:2239
++#: pattern.c:1171 pop/pop.c:182
+ msgid "Can't create temporary file"
+ msgstr "無法建立暫存檔"
+
+@@ -3448,7 +3555,7 @@ msgstr "除錯模式在第 %d 層。\n"
+ msgid "Logging at level %d to file '%s'"
+ msgstr "除錯模式在第 %d 層。\n"
+
+-#: mutt/path.c:401
++#: mutt/path.c:420
+ #, fuzzy
+ msgid "Error: converting path to absolute"
+ msgstr "連線到 %s 時失敗"
+@@ -3472,17 +3579,17 @@ msgstr "捕抓到 signal %d (%s) … 正在離開.\n"
+ msgid "Caught signal %d ... Exiting.\n"
+ msgstr "捕抓到 signal %d … 正在離開.\n"
+
+-#: muttlib.c:490
++#: muttlib.c:488
+ #, c-format
+ msgid "mutt_randbuf buflen=%zu"
+ msgstr ""
+
+-#: muttlib.c:510
++#: muttlib.c:508
+ #, c-format
+ msgid "open /dev/urandom: %s"
+ msgstr ""
+
+-#: muttlib.c:517
++#: muttlib.c:515
+ #, c-format
+ msgid "read /dev/urandom: %s"
+ msgstr ""
+@@ -3490,150 +3597,122 @@ msgstr ""
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+ #. These three letters correspond to the choices in the string.
+-#: muttlib.c:745
++#: muttlib.c:743
+ #, fuzzy
+ msgid "File is a directory, save under it: (y)es, (n)o, (a)ll?"
+ msgstr "檔案是一個目錄, 儲存在它下面?"
+
+-#: muttlib.c:745
++#: muttlib.c:743
+ msgid "yna"
+ msgstr ""
+
+ #. L10N: Means "The path you specified as the destination file is a directory."
+ #. See the msgid "Save to file: " (alias.c, recvattach.c)
+-#: muttlib.c:763
++#: muttlib.c:761
+ msgid "File is a directory, save under it?"
+ msgstr "檔案是一個目錄, 儲存在它下面?"
+
+-#: muttlib.c:768
++#: muttlib.c:766
+ msgid "File under directory: "
+ msgstr "在目錄底下的檔案:"
+
+-#: muttlib.c:781
++#: muttlib.c:779
+ msgid "File exists, (o)verwrite, (a)ppend, or (c)ancel?"
+ msgstr "檔案已經存在, (1)覆蓋, (2)附加, 或是 (3)取消?"
+
+ #. L10N: Options for: File exists, (o)verwrite, (a)ppend, or (c)ancel?
+-#: muttlib.c:783
++#: muttlib.c:781
+ msgid "oac"
+ msgstr "123"
+
+-#: muttlib.c:1458
++#: muttlib.c:1456
+ msgid "Can't save message to POP mailbox"
+ msgstr "無法將信件存到信箱"
+
+-#: muttlib.c:1468
++#: muttlib.c:1466
+ #, c-format
+ msgid "Append messages to %s?"
+ msgstr "附加信件到 %s?"
+
+-#: muttlib.c:1481
++#: muttlib.c:1479
+ #, fuzzy
+ msgid "Can't save message to news server"
+ msgstr "無法編輯 POP 伺服器上的信件"
+
+-#. L10N: Example: Username at myhost.com
+-#: mutt_account.c:233
+-#, c-format
+-msgid "Username at %s: "
+-msgstr "在 %s 的使用者名稱:"
+-
+-#: mutt_account.c:315
+-#, c-format
+-msgid "Password for %s@%s: "
+-msgstr "%s@%s 的密碼:"
+-
+-#. L10N: You will see this error message if (1) you have "oauthbearer" in
+-#. one of your $*_authenticators and (2) you do not have the corresponding
+-#. $*_oauth_refresh_command defined. So the message does not mean "None of
+-#. your $*_oauth_refresh_command's are defined."
+-#: mutt_account.c:383
+-#, fuzzy
+-msgid "No OAUTH refresh command defined"
+-msgstr "查詢指令尚未定義"
+-
+-#: mutt_account.c:390
+-msgid "Unable to run refresh command"
+-msgstr ""
+-
+-#: mutt_account.c:400
+-msgid "Command returned empty string"
+-msgstr ""
+-
+-#: mutt_attach.c:140 mutt_attach.c:274 mutt_attach.c:459 mutt_attach.c:1054
++#: mutt_attach.c:142 mutt_attach.c:276 mutt_attach.c:488 mutt_attach.c:1087
+ msgid "Can't match 'nametemplate', continue?"
+ msgstr "無法配合二個同樣名稱,繼續?"
+
+-#: mutt_attach.c:150
++#: mutt_attach.c:152
+ #, c-format
+ msgid "Mailcap compose entry requires %%s"
+ msgstr "Mailcap 編輯項目需要 %%s"
+
+-#: mutt_attach.c:168
++#: mutt_attach.c:170
+ msgid "Failure to open file to parse headers"
+ msgstr "開啟檔案來分析檔頭失敗"
+
+-#: mutt_attach.c:202
++#: mutt_attach.c:204
+ msgid "Failure to open file to strip headers"
+ msgstr "開啟檔案時去除檔案標頭失敗"
+
+-#: mutt_attach.c:212
++#: mutt_attach.c:214
+ #, fuzzy
+ msgid "Failure to rename file"
+ msgstr "開啟檔案來分析檔頭失敗"
+
+-#: mutt_attach.c:222
++#: mutt_attach.c:224
+ #, c-format
+ msgid "No mailcap compose entry for %s, creating empty file"
+ msgstr "沒有 %s 的 mailcap 組成登錄,正在建立空的檔案"
+
+-#: mutt_attach.c:284
++#: mutt_attach.c:286
+ #, c-format
+ msgid "Mailcap Edit entry requires %%s"
+ msgstr "編輯 Mailcap 項目時需要 %%s"
+
+-#: mutt_attach.c:305
++#: mutt_attach.c:307
+ #, c-format
+ msgid "No mailcap edit entry for %s"
+ msgstr "沒有 %s 的 mailcap 編輯登錄"
+
+-#: mutt_attach.c:427
++#: mutt_attach.c:456
+ msgid "No matching mailcap entry found. Viewing as text."
+ msgstr "沒有發現配合 mailcap 的登錄。將以文字檔方式瀏覽"
+
+-#: mutt_attach.c:440
++#: mutt_attach.c:469
+ msgid "MIME type not defined. Can't view attachment."
+ msgstr "MIME 形式未被定義. 無法顯示附件內容"
+
+-#: mutt_attach.c:535
++#: mutt_attach.c:563
+ #, c-format
+ msgid "---Command: %-20.20s Description: %s"
+ msgstr ""
+
+-#: mutt_attach.c:540
++#: mutt_attach.c:568
+ #, c-format
+ msgid "---Command: %-30.30s Attachment: %s"
+ msgstr ""
+
+-#: mutt_attach.c:619
++#: mutt_attach.c:652
+ #, fuzzy, c-format
+ msgid "---Attachment: %s: %s"
+ msgstr "-- 附件"
+
+-#: mutt_attach.c:621
++#: mutt_attach.c:654
+ #, fuzzy, c-format
+ msgid "---Attachment: %s"
+ msgstr "-- 附件"
+
+-#: mutt_attach.c:902 mutt_attach.c:910
++#: mutt_attach.c:935 mutt_attach.c:943
+ msgid "Write fault"
+ msgstr "寫入失敗"
+
+-#: mutt_attach.c:1174
++#: mutt_attach.c:1207
+ msgid "I don't know how to print that"
+ msgstr "我不知道要如何列印它"
+
+-#: mutt_history.c:47 query.c:84
++#: mutt_history.c:47 query.c:82
+ msgid "Search"
+ msgstr "搜尋"
+
+@@ -3642,21 +3721,21 @@ msgstr "搜尋"
+ msgid "History '%s'"
+ msgstr "查詢 '%s'"
+
+-#: mutt_logging.c:315
++#: mutt_logging.c:313
+ #, fuzzy, c-format
+ msgid "Invalid value for option %s: %ld"
+ msgstr "無效的日子:%s"
+
+-#: mutt_lua.c:429
++#: mutt_lua.c:431
+ msgid "Error: Couldn't load the lua interpreter"
+ msgstr ""
+
+-#: mutt_lua.c:491
++#: mutt_lua.c:493
+ #, fuzzy, c-format
+ msgid "Couldn't source lua source: %s"
+ msgstr "無法鎖住 %s。\n"
+
+-#: mutt_mailbox.c:214
++#: mutt_mailbox.c:241
+ #, fuzzy
+ msgid "New mail in "
+ msgstr "在 %s 有新信件"
+@@ -3680,20 +3759,20 @@ msgstr "在限制閱覽模式下無法顯示主信件"
+ msgid "Parent message is not visible in this limited view"
+ msgstr "在限制閱覽模式下無法顯示主信件"
+
+-#: mx.c:387
++#: mx.c:385
+ #, fuzzy, c-format
+ msgid "Reading from %s interrupted..."
+ msgstr "搜尋已被中斷"
+
+ #. L10N: Displayed if a mailbox sync fails
+-#: mx.c:468
++#: mx.c:469
+ #, fuzzy, c-format
+ msgid "Unable to write %s"
+ msgstr "無法附加 %s"
+
+ #. L10N: Although we know the precise number of messages, we do not show it to the user.
+ #. So feel free to use a "generic plural" as plural translation if your language has one.
+-#: mx.c:523
++#: mx.c:525
+ #, fuzzy
+ msgid "message not deleted"
+ msgid_plural "messages not deleted"
+@@ -3704,68 +3783,68 @@ msgstr[0] "標簽了的 %d 封信件刪去了…"
+ msgid "Can't open trash folder"
+ msgstr "無法把資料加到檔案夾:%s"
+
+-#: mx.c:623
++#: mx.c:627
+ msgid "Mark all articles read?"
+ msgstr ""
+
+ #. L10N: The first argument is the number of read messages to be
+ #. moved, the second argument is the target mailbox.
+-#: mx.c:671
++#: mx.c:675
+ #, fuzzy, c-format
+ msgid "Move %d read message to %s?"
+ msgid_plural "Move %d read messages to %s?"
+ msgstr[0] "搬移已讀取的信件到 %s?"
+
+-#: mx.c:685 mx.c:917
++#: mx.c:689 mx.c:936
+ #, fuzzy, c-format
+ msgid "Purge %d deleted message?"
+ msgid_plural "Purge %d deleted messages?"
+ msgstr[0] "清除 %d 封已經被刪除的信件?"
+
+-#: mx.c:708
++#: mx.c:712
+ #, c-format
+ msgid "Moving read messages to %s..."
+ msgstr "正在搬移已經讀取的信件到 %s …"
+
+-#: mx.c:774 mx.c:908
++#: mx.c:783 mx.c:927
+ msgid "Mailbox is unchanged"
+ msgstr "信箱沒有變動"
+
+-#: mx.c:827
++#: mx.c:842
+ #, c-format
+ msgid "%d kept, %d moved, %d deleted"
+ msgstr "%d 封信件被保留, %d 封信件被搬移, %d 封信件被刪除"
+
+-#: mx.c:831 mx.c:972
++#: mx.c:846 mx.c:991
+ #, c-format
+ msgid "%d kept, %d deleted"
+ msgstr "%d 封信件被保留, %d 封信件被刪除"
+
+-#: mx.c:892
++#: mx.c:911
+ #, c-format
+ msgid " Press '%s' to toggle write"
+ msgstr " 請按下 '%s' 來切換寫入模式"
+
+-#: mx.c:894
++#: mx.c:913
+ msgid "Use 'toggle-write' to re-enable write"
+ msgstr "請使用 'toggle-write' 來重新啟動寫入功能"
+
+-#: mx.c:896
++#: mx.c:915
+ #, c-format
+ msgid "Mailbox is marked unwritable. %s"
+ msgstr "信箱被標記成為無法寫入的. %s"
+
+ # How to translate?
+-#: mx.c:966
++#: mx.c:985
+ msgid "Mailbox checkpointed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:93
++#: ncrypt/crypt.c:91
+ #, c-format
+ msgid " (current time: %c)"
+ msgstr ""
+
+-#: ncrypt/crypt.c:98
++#: ncrypt/crypt.c:96
+ #, fuzzy, c-format
+ msgid "[-- %s output follows%s --]\n"
+ msgstr "[-- 以下為 PGP 輸出的資料(現在時間:%c) --]\n"
+@@ -3774,53 +3853,53 @@ msgstr "[-- 以下為 PGP 輸出的資料(現在時間:%c) --]\n"
+ #. by gpg-agent) we can't know whether we forgot zero, 1, 12, ...
+ #. passwords. So in English we use "Passphrases". Your language might
+ #. have other means to express this.
+-#: ncrypt/crypt.c:119
++#: ncrypt/crypt.c:117
+ #, fuzzy
+ msgid "Passphrases forgotten"
+ msgstr "已忘記 PGP 通行密碼"
+
+-#: ncrypt/crypt.c:203
++#: ncrypt/crypt.c:201
+ msgid "Inline PGP can't be used with attachments. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:207
++#: ncrypt/crypt.c:205
+ msgid "Mail not sent: inline PGP can't be used with attachments"
+ msgstr ""
+
+-#: ncrypt/crypt.c:214
++#: ncrypt/crypt.c:212
+ msgid "Inline PGP can't be used with format=flowed. Revert to PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:218
++#: ncrypt/crypt.c:216
+ msgid "Mail not sent: inline PGP can't be used with format=flowed"
+ msgstr ""
+
+-#: ncrypt/crypt.c:228 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:714
+-#: ncrypt/pgpkey.c:915
++#: ncrypt/crypt.c:226 ncrypt/cryptglue.c:152 ncrypt/pgpkey.c:747
++#: ncrypt/pgpkey.c:950
+ msgid "Invoking PGP..."
+ msgstr "啟動 PGP…"
+
+-#: ncrypt/crypt.c:240
++#: ncrypt/crypt.c:238
+ msgid "Message can't be sent inline. Revert to using PGP/MIME?"
+ msgstr ""
+
+-#: ncrypt/crypt.c:242 send.c:2430
++#: ncrypt/crypt.c:240 send.c:2441
+ msgid "Mail not sent"
+ msgstr "信件沒有寄出"
+
+-#: ncrypt/crypt.c:662
++#: ncrypt/crypt.c:666
+ msgid "S/MIME messages with no hints on content are unsupported"
+ msgstr ""
+
+-#: ncrypt/crypt.c:888
++#: ncrypt/crypt.c:892
+ msgid "Trying to extract PGP keys...\n"
+ msgstr ""
+
+-#: ncrypt/crypt.c:917
++#: ncrypt/crypt.c:921
+ msgid "Trying to extract S/MIME certificates..."
+ msgstr ""
+
+-#: ncrypt/crypt.c:1140
++#: ncrypt/crypt.c:1144
+ #, c-format
+ msgid ""
+ "[-- Error: Unknown multipart/signed protocol %s --]\n"
+@@ -3829,7 +3908,7 @@ msgstr ""
+ "[-- 錯誤:不明的 multipart/signed 協定 %s! --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1180
++#: ncrypt/crypt.c:1184
+ #, fuzzy
+ msgid ""
+ "[-- Error: Missing or bad-format multipart/signed signature --]\n"
+@@ -3838,7 +3917,7 @@ msgstr ""
+ "[-- 錯誤:不一致的 multipart/signed 結構! --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1222
++#: ncrypt/crypt.c:1226
+ #, c-format
+ msgid ""
+ "[-- Warning: We can't verify %s/%s signatures. --]\n"
+@@ -3847,7 +3926,7 @@ msgstr ""
+ "[-- 警告:我們不能證實 %s/%s 簽名。 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1235
++#: ncrypt/crypt.c:1239
+ #, fuzzy
+ msgid ""
+ "[-- The following data is signed --]\n"
+@@ -3856,7 +3935,7 @@ msgstr ""
+ "[-- 以下的資料已被簽署 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1243
++#: ncrypt/crypt.c:1248
+ msgid ""
+ "[-- Warning: Can't find any signatures. --]\n"
+ "\n"
+@@ -3864,7 +3943,7 @@ msgstr ""
+ "[-- 警告:找不到任何的簽名。 --]\n"
+ "\n"
+
+-#: ncrypt/crypt.c:1249
++#: ncrypt/crypt.c:1255
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -3885,236 +3964,236 @@ msgstr "啟動 S/MIME…"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ msgid "Name: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1869 ncrypt/crypt_gpgme.c:1874
++#: ncrypt/crypt_gpgme.c:183 ncrypt/crypt_gpgme.c:1900 ncrypt/crypt_gpgme.c:1905
+ msgid "aka: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid From: "
+ msgstr "無效的月份:%s"
+
+-#: ncrypt/crypt_gpgme.c:184
++#: ncrypt/crypt_gpgme.c:183
+ #, fuzzy
+ msgid "Valid To: "
+ msgstr "無效的月份:%s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Type: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Key Usage: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:185 ncrypt/crypt_gpgme.c:1759
++#: ncrypt/crypt_gpgme.c:184 ncrypt/crypt_gpgme.c:1790
+ #, fuzzy
+ msgid "Fingerprint: "
+ msgstr "指模:%s"
+
+-#: ncrypt/crypt_gpgme.c:185
++#: ncrypt/crypt_gpgme.c:184
+ msgid "Serial-No: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ msgid "Issued By: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:186
++#: ncrypt/crypt_gpgme.c:185
+ #, fuzzy
+ msgid "Subkey: "
+ msgstr "鑰匙 ID:0x%s"
+
+-#: ncrypt/crypt_gpgme.c:783
++#: ncrypt/crypt_gpgme.c:782
+ #, c-format
+ msgid "error enabling CMS protocol: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:806
++#: ncrypt/crypt_gpgme.c:805
+ #, fuzzy, c-format
+ msgid "error creating gpgme data object: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:907 ncrypt/crypt_gpgme.c:934 ncrypt/crypt_gpgme.c:2057
+-#: ncrypt/crypt_gpgme.c:2814
++#: ncrypt/crypt_gpgme.c:906 ncrypt/crypt_gpgme.c:933 ncrypt/crypt_gpgme.c:2096
++#: ncrypt/crypt_gpgme.c:2853
+ #, fuzzy, c-format
+ msgid "error allocating data object: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:956
++#: ncrypt/crypt_gpgme.c:955
+ #, fuzzy, c-format
+ msgid "error rewinding data object: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:972
++#: ncrypt/crypt_gpgme.c:971
+ msgid "[tempfile]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:978 ncrypt/crypt_gpgme.c:1032
++#: ncrypt/crypt_gpgme.c:977 ncrypt/crypt_gpgme.c:1031
+ #, fuzzy, c-format
+ msgid "error reading data object: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:1149
++#: ncrypt/crypt_gpgme.c:1148
+ #, fuzzy, c-format
+ msgid "error adding recipient '%s': %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:1202
++#: ncrypt/crypt_gpgme.c:1186
+ #, c-format
+ msgid "secret key '%s' not found: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1218
++#: ncrypt/crypt_gpgme.c:1203
+ #, c-format
+ msgid "ambiguous specification of secret key '%s'\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1234
++#: ncrypt/crypt_gpgme.c:1219
+ #, c-format
+ msgid "error setting secret key '%s': %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1250
++#: ncrypt/crypt_gpgme.c:1278
+ #, fuzzy, c-format
+ msgid "error setting PKA signature notation: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:1324
++#: ncrypt/crypt_gpgme.c:1353
+ #, fuzzy, c-format
+ msgid "error encrypting data: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:1453
++#: ncrypt/crypt_gpgme.c:1483
+ #, fuzzy, c-format
+ msgid "error signing data: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:1463
++#: ncrypt/crypt_gpgme.c:1493
+ msgid "$pgp_sign_as unset and no default key specified in ~/.gnupg/gpg.conf"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1641
++#: ncrypt/crypt_gpgme.c:1672
+ msgid "Warning: One of the keys has been revoked\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1651
++#: ncrypt/crypt_gpgme.c:1682
+ msgid "Warning: The key used to create the signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1657
++#: ncrypt/crypt_gpgme.c:1688
+ #, fuzzy
+ msgid "Warning: At least one certification key has expired\n"
+ msgstr "伺服器的驗証已過期"
+
+-#: ncrypt/crypt_gpgme.c:1671
++#: ncrypt/crypt_gpgme.c:1702
+ msgid "Warning: The signature expired at: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1678
++#: ncrypt/crypt_gpgme.c:1709
+ msgid "Can't verify due to a missing key or certificate\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1683
++#: ncrypt/crypt_gpgme.c:1714
+ #, fuzzy
+ msgid "The CRL is not available\n"
+ msgstr "沒有 SSL 功能"
+
+-#: ncrypt/crypt_gpgme.c:1689
++#: ncrypt/crypt_gpgme.c:1720
+ msgid "Available CRL is too old\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1694
++#: ncrypt/crypt_gpgme.c:1725
+ msgid "A policy requirement was not met\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1703
++#: ncrypt/crypt_gpgme.c:1734
+ msgid "A system error occurred"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1734
++#: ncrypt/crypt_gpgme.c:1765
+ msgid "WARNING: PKA entry does not match signer's address: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1740
++#: ncrypt/crypt_gpgme.c:1771
+ msgid "PKA verified signer's address is: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1822
++#: ncrypt/crypt_gpgme.c:1853
+ msgid "WARNING: We have NO indication whether the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1829
++#: ncrypt/crypt_gpgme.c:1860
+ msgid "WARNING: The key does NOT BELONG to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1833
++#: ncrypt/crypt_gpgme.c:1864
+ msgid "WARNING: It is NOT certain that the key belongs to the person named as shown above\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1886
++#: ncrypt/crypt_gpgme.c:1917
+ msgid "KeyID "
+ msgstr ""
+
+ #. L10N: You will see this message in place of "KeyID "
+ #. if the S/MIME key has no ID. This is quite an error.
+-#: ncrypt/crypt_gpgme.c:1893
++#: ncrypt/crypt_gpgme.c:1924
+ msgid "no signature fingerprint available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1902 ncrypt/crypt_gpgme.c:1907
++#: ncrypt/crypt_gpgme.c:1933 ncrypt/crypt_gpgme.c:1938
+ #, fuzzy
+ msgid "created: "
+ msgstr "建立 %s?"
+
+-#: ncrypt/crypt_gpgme.c:1981
++#: ncrypt/crypt_gpgme.c:2012
+ #, c-format
+ msgid "Error getting key information for KeyID %s: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1988 ncrypt/crypt_gpgme.c:2003
++#: ncrypt/crypt_gpgme.c:2019 ncrypt/crypt_gpgme.c:2034
+ msgid "Good signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:1995
++#: ncrypt/crypt_gpgme.c:2026
+ msgid "*BAD* signature from:"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2011
++#: ncrypt/crypt_gpgme.c:2042
+ msgid "Problem signature from:"
+ msgstr ""
+
+ #. L10N: This is trying to match the width of the
+ #. "Problem signature from:" translation just above.
+-#: ncrypt/crypt_gpgme.c:2017
++#: ncrypt/crypt_gpgme.c:2048
+ msgid " expires: "
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2064 ncrypt/crypt_gpgme.c:2294
+-#: ncrypt/crypt_gpgme.c:3081
++#: ncrypt/crypt_gpgme.c:2103 ncrypt/crypt_gpgme.c:2333
++#: ncrypt/crypt_gpgme.c:3124
+ msgid "[-- Begin signature information --]\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2075
++#: ncrypt/crypt_gpgme.c:2114
+ #, fuzzy, c-format
+ msgid "Error: verification failed: %s\n"
+ msgstr "指令行有錯:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:2126
++#: ncrypt/crypt_gpgme.c:2165
+ #, c-format
+ msgid "*** Begin Notation (signature by: %s) ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2145
++#: ncrypt/crypt_gpgme.c:2184
+ msgid "*** End Notation ***\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:2153 ncrypt/crypt_gpgme.c:2308
+-#: ncrypt/crypt_gpgme.c:3091
++#: ncrypt/crypt_gpgme.c:2192 ncrypt/crypt_gpgme.c:2347
++#: ncrypt/crypt_gpgme.c:3134
+ #, fuzzy
+ msgid ""
+ "[-- End signature information --]\n"
+@@ -4123,28 +4202,34 @@ msgstr ""
+ "\n"
+ "[-- 簽署的資料結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2268
++#: ncrypt/crypt_gpgme.c:2307
+ #, fuzzy, c-format
+ msgid ""
+ "[-- Error: decryption failed: %s --]\n"
+ "\n"
+ msgstr "[-- 錯誤:突發的檔尾! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:2821
++#: ncrypt/crypt_gpgme.c:2860
+ #, fuzzy, c-format
+ msgid "Error importing key: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: ncrypt/crypt_gpgme.c:3059
++#: ncrypt/crypt_gpgme.c:3098
+ #, c-format
+ msgid "Error: decryption/verification failed: %s\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3103
++#: ncrypt/crypt_gpgme.c:3105 ncrypt/crypt_gpgme.c:3302 ncrypt/pgp.c:726
++#: ncrypt/pgp.c:1273
++#, fuzzy
++msgid "PGP message successfully decrypted"
++msgstr "PGP 簽名驗證成功"
++
++#: ncrypt/crypt_gpgme.c:3146
+ msgid "Error: copy data failed\n"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:3116 ncrypt/pgp.c:675
++#: ncrypt/crypt_gpgme.c:3159 ncrypt/pgp.c:674
+ msgid ""
+ "[-- BEGIN PGP MESSAGE --]\n"
+ "\n"
+@@ -4152,11 +4237,11 @@ msgstr ""
+ "[-- PGP 信件開始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3118 ncrypt/pgp.c:677
++#: ncrypt/crypt_gpgme.c:3161 ncrypt/pgp.c:676
+ msgid "[-- BEGIN PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公共鑰匙區段開始 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3120 ncrypt/pgp.c:679
++#: ncrypt/crypt_gpgme.c:3163 ncrypt/pgp.c:678
+ msgid ""
+ "[-- BEGIN PGP SIGNED MESSAGE --]\n"
+ "\n"
+@@ -4164,25 +4249,25 @@ msgstr ""
+ "[-- PGP 簽名的信件開始 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3145 ncrypt/pgp.c:716
++#: ncrypt/crypt_gpgme.c:3188 ncrypt/pgp.c:715
+ #, fuzzy
+ msgid "[-- END PGP MESSAGE --]\n"
+ msgstr ""
+ "\n"
+ "[-- PGP 信件結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3147 ncrypt/pgp.c:730
++#: ncrypt/crypt_gpgme.c:3190 ncrypt/pgp.c:729
+ msgid "[-- END PGP PUBLIC KEY BLOCK --]\n"
+ msgstr "[-- PGP 公共鑰匙區段結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3149 ncrypt/pgp.c:732
++#: ncrypt/crypt_gpgme.c:3192 ncrypt/pgp.c:731
+ #, fuzzy
+ msgid "[-- END PGP SIGNED MESSAGE --]\n"
+ msgstr ""
+ "\n"
+ "[-- PGP 簽名的信件結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3170 ncrypt/pgp.c:765
++#: ncrypt/crypt_gpgme.c:3213 ncrypt/pgp.c:764
+ msgid ""
+ "[-- Error: could not find beginning of PGP message --]\n"
+ "\n"
+@@ -4190,11 +4275,11 @@ msgstr ""
+ "[-- 錯誤:找不到 PGP 信件的開頭! --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3198 ncrypt/crypt_gpgme.c:3296 ncrypt/pgp.c:1218
++#: ncrypt/crypt_gpgme.c:3241 ncrypt/crypt_gpgme.c:3339 ncrypt/pgp.c:1218
+ msgid "[-- Error: could not create temporary file --]\n"
+ msgstr "[-- 錯誤:無法建立暫存檔! --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3212
++#: ncrypt/crypt_gpgme.c:3255
+ #, fuzzy
+ msgid ""
+ "[-- The following data is PGP/MIME signed and encrypted --]\n"
+@@ -4203,7 +4288,7 @@ msgstr ""
+ "[-- 下面是 PGP/MIME 加密資料 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3214 ncrypt/pgp.c:1231
++#: ncrypt/crypt_gpgme.c:3257 ncrypt/pgp.c:1232
+ msgid ""
+ "[-- The following data is PGP/MIME encrypted --]\n"
+ "\n"
+@@ -4211,32 +4296,27 @@ msgstr ""
+ "[-- 下面是 PGP/MIME 加密資料 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3254
++#: ncrypt/crypt_gpgme.c:3297
+ #, fuzzy
+ msgid "[-- End of PGP/MIME signed and encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- PGP/MIME 加密資料結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3255 ncrypt/pgp.c:1267
++#: ncrypt/crypt_gpgme.c:3298 ncrypt/pgp.c:1268
+ #, fuzzy
+ msgid "[-- End of PGP/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- PGP/MIME 加密資料結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3259 ncrypt/pgp.c:727 ncrypt/pgp.c:1272
+-#, fuzzy
+-msgid "PGP message successfully decrypted"
+-msgstr "PGP 簽名驗證成功"
+-
+-#: ncrypt/crypt_gpgme.c:3265 ncrypt/pgp.c:666 ncrypt/pgp.c:718
+-#: ncrypt/pgp.c:1276
++#: ncrypt/crypt_gpgme.c:3308 ncrypt/pgp.c:665 ncrypt/pgp.c:717
++#: ncrypt/pgp.c:1277
+ #, fuzzy
+ msgid "Could not decrypt PGP message"
+ msgstr "無法複制信件"
+
+-#: ncrypt/crypt_gpgme.c:3310
++#: ncrypt/crypt_gpgme.c:3353
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME signed --]\n"
+@@ -4245,7 +4325,7 @@ msgstr ""
+ "[-- 以下的資料已被簽署 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3311
++#: ncrypt/crypt_gpgme.c:3354
+ #, fuzzy
+ msgid ""
+ "[-- The following data is S/MIME encrypted --]\n"
+@@ -4254,144 +4334,144 @@ msgstr ""
+ "[-- 下面是 S/MIME 加密資料 --]\n"
+ "\n"
+
+-#: ncrypt/crypt_gpgme.c:3358
++#: ncrypt/crypt_gpgme.c:3401
+ #, fuzzy
+ msgid "[-- End of S/MIME signed data --]\n"
+ msgstr ""
+ "\n"
+ "[-- 簽署的資料結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:3359
++#: ncrypt/crypt_gpgme.c:3402
+ #, fuzzy
+ msgid "[-- End of S/MIME encrypted data --]\n"
+ msgstr ""
+ "\n"
+ "[-- S/MIME 加密資料結束 --]\n"
+
+-#: ncrypt/crypt_gpgme.c:4029
++#: ncrypt/crypt_gpgme.c:4077
+ msgid "[Can't display this user ID (unknown encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4031
++#: ncrypt/crypt_gpgme.c:4079
+ msgid "[Can't display this user ID (invalid encoding)]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4036
++#: ncrypt/crypt_gpgme.c:4084
+ msgid "[Can't display this user ID (invalid DN)]"
+ msgstr ""
+
+ #. L10N: comes after the Name or aka if the key is invalid
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4150 ncrypt/crypt_gpgme.c:4291
++#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4339
+ #, fuzzy
+ msgid "[Invalid]"
+ msgstr "無效的月份:%s"
+
+ #. L10N: This is printed after "Key Type: " and looks like this: PGP, 2048 bit RSA
+-#: ncrypt/crypt_gpgme.c:4190 ncrypt/crypt_gpgme.c:4331
++#: ncrypt/crypt_gpgme.c:4238 ncrypt/crypt_gpgme.c:4379
+ #, c-format
+ msgid "%s, %lu bit %s\n"
+ msgid_plural "%s, %lu bit %s\n"
+ msgstr[0] ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4198 ncrypt/crypt_gpgme.c:4338
++#: ncrypt/crypt_gpgme.c:4246 ncrypt/crypt_gpgme.c:4386
+ #, fuzzy
+ msgid "encryption"
+ msgstr "加密"
+
+-#: ncrypt/crypt_gpgme.c:4199 ncrypt/crypt_gpgme.c:4205
+-#: ncrypt/crypt_gpgme.c:4339 ncrypt/crypt_gpgme.c:4344
++#: ncrypt/crypt_gpgme.c:4247 ncrypt/crypt_gpgme.c:4253
++#: ncrypt/crypt_gpgme.c:4387 ncrypt/crypt_gpgme.c:4392
+ msgid ", "
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4204 ncrypt/crypt_gpgme.c:4343
++#: ncrypt/crypt_gpgme.c:4252 ncrypt/crypt_gpgme.c:4391
+ msgid "signing"
+ msgstr ""
+
+ #. L10N: value in Key Usage: field
+-#: ncrypt/crypt_gpgme.c:4210 ncrypt/crypt_gpgme.c:4348
++#: ncrypt/crypt_gpgme.c:4258 ncrypt/crypt_gpgme.c:4396
+ #, fuzzy
+ msgid "certification"
+ msgstr "驗証已儲存"
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4285
++#: ncrypt/crypt_gpgme.c:4333
+ msgid "[Revoked]"
+ msgstr ""
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4297
++#: ncrypt/crypt_gpgme.c:4345
+ #, fuzzy
+ msgid "[Expired]"
+ msgstr "離開 "
+
+ #. L10N: describes a subkey
+-#: ncrypt/crypt_gpgme.c:4303
++#: ncrypt/crypt_gpgme.c:4351
+ msgid "[Disabled]"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4376
++#: ncrypt/crypt_gpgme.c:4424
+ #, fuzzy
+ msgid "Collecting data..."
+ msgstr "正連接到 %s…"
+
+-#: ncrypt/crypt_gpgme.c:4394
++#: ncrypt/crypt_gpgme.c:4442
+ #, fuzzy, c-format
+ msgid "Error finding issuer key: %s\n"
+ msgstr "連線到 %s 時失敗"
+
+-#: ncrypt/crypt_gpgme.c:4403
++#: ncrypt/crypt_gpgme.c:4451
+ #, fuzzy
+ msgid "Error: certification chain too long - stopping here\n"
+ msgstr "指令行有錯:%s\n"
+
+-#: ncrypt/crypt_gpgme.c:4413 ncrypt/pgpkey.c:733
++#: ncrypt/crypt_gpgme.c:4461 ncrypt/pgpkey.c:766
+ #, c-format
+ msgid "Key ID: 0x%s"
+ msgstr "鑰匙 ID:0x%s"
+
+-#: ncrypt/crypt_gpgme.c:4538 ncrypt/crypt_gpgme.c:4589
++#: ncrypt/crypt_gpgme.c:4586 ncrypt/crypt_gpgme.c:4637
+ #, c-format
+ msgid "gpgme_op_keylist_start failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4577 ncrypt/crypt_gpgme.c:4619
+-#: ncrypt/crypt_gpgme.c:5355
++#: ncrypt/crypt_gpgme.c:4625 ncrypt/crypt_gpgme.c:4667
++#: ncrypt/crypt_gpgme.c:5435
+ #, c-format
+ msgid "gpgme_op_keylist_next failed: %s"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4701
++#: ncrypt/crypt_gpgme.c:4749
+ #, fuzzy
+ msgid "All matching keys are marked expired/revoked"
+ msgstr "所有符合的鑰匙經已過期或取消"
+
+-#: ncrypt/crypt_gpgme.c:4731 ncrypt/pgpkey.c:666 ncrypt/smime.c:551
++#: ncrypt/crypt_gpgme.c:4779 ncrypt/pgpkey.c:669 ncrypt/smime.c:553
+ msgid "Select "
+ msgstr "選擇 "
+
+-#: ncrypt/crypt_gpgme.c:4733 ncrypt/pgpkey.c:668
++#: ncrypt/crypt_gpgme.c:4781 ncrypt/pgpkey.c:671
+ msgid "Check key "
+ msgstr "檢查鑰匙 "
+
+-#: ncrypt/crypt_gpgme.c:4749
++#: ncrypt/crypt_gpgme.c:4827
+ #, fuzzy
+ msgid "PGP and S/MIME keys matching"
+ msgstr "PGP 鑰匙符合 <%s>"
+
+-#: ncrypt/crypt_gpgme.c:4751
++#: ncrypt/crypt_gpgme.c:4829
+ #, fuzzy
+ msgid "PGP keys matching"
+ msgstr "PGP 鑰匙符合 <%s>"
+
+-#: ncrypt/crypt_gpgme.c:4753
++#: ncrypt/crypt_gpgme.c:4831
+ #, fuzzy
+ msgid "S/MIME keys matching"
+ msgstr "S/MIME 鑰匙符合 <%s>"
+
+-#: ncrypt/crypt_gpgme.c:4755
++#: ncrypt/crypt_gpgme.c:4833
+ #, fuzzy
+ msgid "keys matching"
+ msgstr "PGP 鑰匙符合 <%s>"
+@@ -4400,58 +4480,58 @@ msgstr "PGP 鑰匙符合 <%s>"
+ #. %1$s is one of the previous four entries.
+ #. %2$s is an address.
+ #. e.g. "S/MIME keys matching <me@mutt.org>"
+-#: ncrypt/crypt_gpgme.c:4763
++#: ncrypt/crypt_gpgme.c:4841
+ #, fuzzy, c-format
+ msgid "%s <%s>"
+ msgstr "%s 【%s】\n"
+
+ #. L10N: e.g. 'S/MIME keys matching "Michael Elkins".'
+-#: ncrypt/crypt_gpgme.c:4768
++#: ncrypt/crypt_gpgme.c:4846
+ #, fuzzy, c-format
+ msgid "%s \"%s\""
+ msgstr "%s 【%s】\n"
+
+-#: ncrypt/crypt_gpgme.c:4796 ncrypt/pgpkey.c:754
++#: ncrypt/crypt_gpgme.c:4874 ncrypt/pgpkey.c:787
+ msgid "This key can't be used: expired/disabled/revoked"
+ msgstr "這個鑰匙不能使用:過期/停用/已取消"
+
+-#: ncrypt/crypt_gpgme.c:4810 ncrypt/pgpkey.c:767 ncrypt/smime.c:581
++#: ncrypt/crypt_gpgme.c:4888 ncrypt/pgpkey.c:800 ncrypt/smime.c:613
+ #, fuzzy
+ msgid "ID is expired/disabled/revoked. Do you really want to use the key?"
+ msgstr "這個 ID 已過期/停用/取消。 您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4820 ncrypt/pgpkey.c:779
++#: ncrypt/crypt_gpgme.c:4898 ncrypt/pgpkey.c:812
+ #, fuzzy
+ msgid "ID is not valid. Do you really want to use the key?"
+ msgstr "這個 ID 不可接受。 您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4823 ncrypt/pgpkey.c:782
++#: ncrypt/crypt_gpgme.c:4901 ncrypt/pgpkey.c:815
+ #, fuzzy
+ msgid "ID is only marginally valid. Do you really want to use the key?"
+ msgstr "此 ID 只是勉強可接受。 您真的要使用此密钥吗?"
+
+-#: ncrypt/crypt_gpgme.c:4831 ncrypt/pgpkey.c:775 ncrypt/smime.c:585
++#: ncrypt/crypt_gpgme.c:4909 ncrypt/pgpkey.c:808 ncrypt/smime.c:617
+ msgid "ID has undefined validity. Do you really want to use the key?"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:4911 ncrypt/crypt_gpgme.c:5024 ncrypt/pgpkey.c:1019
+-#: ncrypt/pgpkey.c:1146
++#: ncrypt/crypt_gpgme.c:4991 ncrypt/crypt_gpgme.c:5104 ncrypt/pgpkey.c:1054
++#: ncrypt/pgpkey.c:1181
+ #, c-format
+ msgid "Looking for keys matching \"%s\"..."
+ msgstr "正找尋匹配 \"%s\" 的鑰匙…"
+
+-#: ncrypt/crypt_gpgme.c:5140 ncrypt/pgpkey.c:870 ncrypt/smime.c:924
++#: ncrypt/crypt_gpgme.c:5220 ncrypt/pgpkey.c:905 ncrypt/smime.c:958
+ #, c-format
+ msgid "No matching keys found for \"%s\""
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5190 ncrypt/pgp.c:1456
++#: ncrypt/crypt_gpgme.c:5270 ncrypt/pgp.c:1457
+ #, c-format
+ msgid "Use keyID = \"%s\" for %s?"
+ msgstr "要為 %2$s 使用鑰匙 ID = \"%1$s\"?"
+
+-#: ncrypt/crypt_gpgme.c:5238 ncrypt/pgp.c:1505 ncrypt/smime.c:944
+-#: ncrypt/smime.c:1049
++#: ncrypt/crypt_gpgme.c:5318 ncrypt/pgp.c:1506 ncrypt/smime.c:978
++#: ncrypt/smime.c:1083
+ #, c-format
+ msgid "Enter keyID for %s: "
+ msgstr "請輸入 %s 的鑰匙 ID:"
+@@ -4460,16 +4540,16 @@ msgstr "請輸入 %s 的鑰匙 ID:"
+ #. mutt_gpgme_select_secret_key() tries to list all secret keys to choose
+ #. from. This error is displayed if no results were found.
+ #.
+-#: ncrypt/crypt_gpgme.c:5364
++#: ncrypt/crypt_gpgme.c:5444
+ #, fuzzy
+ msgid "No secret keys found"
+ msgstr "沒有找到"
+
+-#: ncrypt/crypt_gpgme.c:5398 ncrypt/pgpkey.c:888
++#: ncrypt/crypt_gpgme.c:5478 ncrypt/pgpkey.c:923
+ msgid "Please enter the key ID: "
+ msgstr "請輸入這把鑰匙的 ID:"
+
+-#: ncrypt/crypt_gpgme.c:5411
++#: ncrypt/crypt_gpgme.c:5491
+ #, fuzzy, c-format
+ msgid "Error exporting key: %s"
+ msgstr "在樣式上有錯誤:%s"
+@@ -4477,103 +4557,103 @@ msgstr "在樣式上有錯誤:%s"
+ #. L10N: 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.
+-#: ncrypt/crypt_gpgme.c:5429
++#: ncrypt/crypt_gpgme.c:5509
+ #, fuzzy, c-format
+ msgid "PGP Key 0x%s"
+ msgstr "PGP 鑰匙 %s"
+
+-#: ncrypt/crypt_gpgme.c:5474
++#: ncrypt/crypt_gpgme.c:5554
+ msgid "GPGME: OpenPGP protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5485
++#: ncrypt/crypt_gpgme.c:5565
+ msgid "GPGME: CMS protocol not available"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5536
++#: ncrypt/crypt_gpgme.c:5616
+ #, fuzzy
+ msgid "S/MIME (s)ign, sign (a)s, (p)gp, (c)lear, or (o)ppenc mode off?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5538
++#: ncrypt/crypt_gpgme.c:5618
+ msgid "sapco"
+ msgstr "12345"
+
+-#: ncrypt/crypt_gpgme.c:5545
++#: ncrypt/crypt_gpgme.c:5625
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, s/(m)ime, (c)lear, or (o)ppenc mode off?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/crypt_gpgme.c:5547
++#: ncrypt/crypt_gpgme.c:5627
+ msgid "samco"
+ msgstr "12345"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5557
++#: ncrypt/crypt_gpgme.c:5637
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp, (c)lear, or (o)ppenc mode?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5560
++#: ncrypt/crypt_gpgme.c:5640
+ #, fuzzy
+ msgid "esabpco"
+ msgstr "12345"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5566
++#: ncrypt/crypt_gpgme.c:5646
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime, (c)lear, or (o)ppenc mode?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/crypt_gpgme.c:5569
++#: ncrypt/crypt_gpgme.c:5649
+ #, fuzzy
+ msgid "esabmco"
+ msgstr "12345"
+
+-#: ncrypt/crypt_gpgme.c:5580
++#: ncrypt/crypt_gpgme.c:5660
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, sign (a)s, (b)oth, (p)gp or (c)lear?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/crypt_gpgme.c:5582
++#: ncrypt/crypt_gpgme.c:5662
+ #, fuzzy
+ msgid "esabpc"
+ msgstr "12345"
+
+-#: ncrypt/crypt_gpgme.c:5589
++#: ncrypt/crypt_gpgme.c:5669
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, s/(m)ime or (c)lear?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options
+-#: ncrypt/crypt_gpgme.c:5591
++#: ncrypt/crypt_gpgme.c:5671
+ #, fuzzy
+ msgid "esabmc"
+ msgstr "12345"
+
+-#: ncrypt/crypt_gpgme.c:5751
++#: ncrypt/crypt_gpgme.c:5831
+ msgid "Failed to verify sender"
+ msgstr ""
+
+-#: ncrypt/crypt_gpgme.c:5754
++#: ncrypt/crypt_gpgme.c:5834
+ #, fuzzy
+ msgid "Failed to figure out sender"
+ msgstr "開啟檔案來分析檔頭失敗"
+
+-#: ncrypt/pgp.c:108
++#: ncrypt/pgp.c:107
+ msgid "Enter PGP passphrase:"
+ msgstr "請輸入 PGP 通行密碼:"
+
+-#: ncrypt/pgp.c:595
++#: ncrypt/pgp.c:594
+ msgid "[-- Error: unable to create PGP subprocess --]\n"
+ msgstr "[-- 錯誤:無法建立 PGP 子程序! --]\n"
+
+-#: ncrypt/pgp.c:644 ncrypt/pgp.c:926 ncrypt/pgp.c:1086
++#: ncrypt/pgp.c:643 ncrypt/pgp.c:925 ncrypt/pgp.c:1085
+ msgid ""
+ "[-- End of PGP output --]\n"
+ "\n"
+@@ -4584,16 +4664,16 @@ msgstr ""
+ #. L10N: You will see this error message if (1) you are decrypting
+ #. (not encrypting) something and (2) it is a plaintext. So the
+ #. message does not mean "You failed to encrypt the message."
+-#: ncrypt/pgp.c:724
++#: ncrypt/pgp.c:723
+ #, fuzzy
+ msgid "PGP message is not encrypted"
+ msgstr "PGP 簽名驗證成功"
+
+-#: ncrypt/pgp.c:978
++#: ncrypt/pgp.c:977
+ msgid "Internal error. Please submit a bug report."
+ msgstr ""
+
+-#: ncrypt/pgp.c:1043
++#: ncrypt/pgp.c:1042
+ msgid ""
+ "[-- Error: could not create a PGP subprocess --]\n"
+ "\n"
+@@ -4601,134 +4681,134 @@ msgstr ""
+ "[-- 錯誤:無法建立 PGP 子程序! --]\n"
+ "\n"
+
+-#: ncrypt/pgp.c:1073 ncrypt/pgp.c:1098 ncrypt/smime.c:2143 postpone.c:757
+-#: postpone.c:785
++#: ncrypt/pgp.c:1072 ncrypt/pgp.c:1097 ncrypt/smime.c:2177 postpone.c:803
++#: postpone.c:831
+ #, fuzzy
+ msgid "Decryption failed"
+ msgstr "登入失敗"
+
+-#: ncrypt/pgp.c:1333
++#: ncrypt/pgp.c:1334
+ msgid "Can't open PGP subprocess"
+ msgstr "無法開啟 PGP 子程序"
+
+-#: ncrypt/pgp.c:1768
++#: ncrypt/pgp.c:1770
+ msgid "Can't invoke PGP"
+ msgstr "不能執行 PGP"
+
+ #. L10N: The next string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1875
++#: ncrypt/pgp.c:1877
+ msgid "PGP/M(i)ME"
+ msgstr ""
+
+ #. L10N: The previous string MUST have the same highlighted letter
+ #. One of them will appear in each of the three strings marked "(inline"), below.
+-#: ncrypt/pgp.c:1881
++#: ncrypt/pgp.c:1883
+ msgid "(i)nline"
+ msgstr ""
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1893
++#: ncrypt/pgp.c:1895
+ #, fuzzy, c-format
+ msgid "PGP (s)ign, sign (a)s, %s format, (c)lear, or (o)ppenc mode off?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is on)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1899
++#: ncrypt/pgp.c:1901
+ msgid "saico"
+ msgstr "12345"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1905
++#: ncrypt/pgp.c:1907
+ #, fuzzy
+ msgid "PGP (s)ign, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (opportunistic encryption is on)
+-#: ncrypt/pgp.c:1907
++#: ncrypt/pgp.c:1909
+ msgid "saco"
+ msgstr "12345"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1921
++#: ncrypt/pgp.c:1923
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, (c)lear, or (o)ppenc mode?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (inline) (opportunistic encryption is off)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1927
++#: ncrypt/pgp.c:1929
+ #, fuzzy
+ msgid "esabico"
+ msgstr "12345"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1933
++#: ncrypt/pgp.c:1935
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (opportunistic encryption is off)
+-#: ncrypt/pgp.c:1936
++#: ncrypt/pgp.c:1938
+ #, fuzzy
+ msgid "esabco"
+ msgstr "12345"
+
+ #. L10N: PGP options (inline)
+-#: ncrypt/pgp.c:1947
++#: ncrypt/pgp.c:1949
+ #, fuzzy, c-format
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, %s format, or (c)lear?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options (inline)
+ #. The 'i' is from the "PGP/M(i)ME" or "(i)nline", above.
+-#: ncrypt/pgp.c:1953
++#: ncrypt/pgp.c:1955
+ #, fuzzy
+ msgid "esabic"
+ msgstr "12345"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1959
++#: ncrypt/pgp.c:1961
+ #, fuzzy
+ msgid "PGP (e)ncrypt, (s)ign, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: PGP options
+-#: ncrypt/pgp.c:1961
++#: ncrypt/pgp.c:1963
+ #, fuzzy
+ msgid "esabc"
+ msgstr "12345"
+
+-#: ncrypt/pgpinvoke.c:458
++#: ncrypt/pgpinvoke.c:461
+ msgid "Fetching PGP key..."
+ msgstr "正在拿取 PGP 鑰匙 …"
+
+-#: ncrypt/pgpkey.c:640
++#: ncrypt/pgpkey.c:643
+ #, fuzzy
+ msgid "All matching keys are expired, revoked, or disabled"
+ msgstr "所有符合的鑰匙經已過期或取消"
+
+-#: ncrypt/pgpkey.c:681
++#: ncrypt/pgpkey.c:714
+ #, c-format
+ msgid "PGP keys matching <%s>"
+ msgstr "PGP 鑰匙符合 <%s>"
+
+-#: ncrypt/pgpkey.c:683
++#: ncrypt/pgpkey.c:716
+ #, c-format
+ msgid "PGP keys matching \"%s\""
+ msgstr "PGP 鑰匙符合 \"%s\""
+
+-#: ncrypt/pgpkey.c:700 ncrypt/pgpkey.c:909
++#: ncrypt/pgpkey.c:733 ncrypt/pgpkey.c:944
+ msgid "Can't open /dev/null"
+ msgstr "無法開啟 /dev/null"
+
+-#: ncrypt/pgpkey.c:938
++#: ncrypt/pgpkey.c:973
+ #, c-format
+ msgid "PGP Key %s"
+ msgstr "PGP 鑰匙 %s"
+
+-#: ncrypt/smime.c:182
++#: ncrypt/smime.c:180
+ #, fuzzy
+ msgid "Enter S/MIME passphrase:"
+ msgstr "請輸入 S/MIME 通行密碼:"
+@@ -4738,7 +4818,7 @@ msgstr "請輸入 S/MIME 通行密碼:"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:460
++#: ncrypt/smime.c:462
+ #, fuzzy
+ msgid "Expired "
+ msgstr "離開 "
+@@ -4748,7 +4828,7 @@ msgstr "離開 "
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:468
++#: ncrypt/smime.c:470
+ #, fuzzy
+ msgid "Invalid "
+ msgstr "無效的月份:%s"
+@@ -4758,7 +4838,7 @@ msgstr "無效的月份:%s"
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:476
++#: ncrypt/smime.c:478
+ msgid "Revoked "
+ msgstr ""
+
+@@ -4767,7 +4847,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:484
++#: ncrypt/smime.c:486
+ msgid "Trusted "
+ msgstr ""
+
+@@ -4776,7 +4856,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:492
++#: ncrypt/smime.c:494
+ msgid "Unverified"
+ msgstr ""
+
+@@ -4785,7 +4865,7 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:500
++#: ncrypt/smime.c:502
+ msgid "Verified "
+ msgstr ""
+
+@@ -4794,66 +4874,66 @@ msgstr ""
+ #. has the same length as the other translations.
+ #. The translation strings which need to be padded are:
+ #. Expired, Invalid, Revoked, Trusted, Unverified, Verified, and Unknown.
+-#: ncrypt/smime.c:508
++#: ncrypt/smime.c:510
+ #, fuzzy
+ msgid "Unknown "
+ msgstr "不清楚"
+
+-#: ncrypt/smime.c:545
++#: ncrypt/smime.c:547
+ #, fuzzy, c-format
+ msgid "S/MIME certificates matching \"%s\""
+ msgstr "S/MIME 鑰匙符合 \"%s\""
+
+-#: ncrypt/smime.c:589
++#: ncrypt/smime.c:621
+ #, fuzzy
+ msgid "ID is not trusted. Do you really want to use the key?"
+ msgstr "這個 ID 不可接受。 您真的要使用此密钥吗?"
+
+-#: ncrypt/smime.c:910
++#: ncrypt/smime.c:944
+ #, fuzzy
+ msgid "Enter keyID: "
+ msgstr "請輸入 %s 的鑰匙 ID:"
+
+-#: ncrypt/smime.c:1055
++#: ncrypt/smime.c:1089
+ #, c-format
+ msgid "No (valid) certificate found for %s"
+ msgstr ""
+
+-#: ncrypt/smime.c:1108 ncrypt/smime.c:1137 ncrypt/smime.c:1209
+-#: ncrypt/smime.c:1243 ncrypt/smime.c:1319 ncrypt/smime.c:1399
++#: ncrypt/smime.c:1142 ncrypt/smime.c:1171 ncrypt/smime.c:1243
++#: ncrypt/smime.c:1277 ncrypt/smime.c:1353 ncrypt/smime.c:1433
+ #, fuzzy
+ msgid "Error: unable to create OpenSSL subprocess"
+ msgstr "[-- 錯誤:無法建立 OpenSSL 子程序! --]\n"
+
+-#: ncrypt/smime.c:1379
++#: ncrypt/smime.c:1413
+ #, fuzzy
+ msgid "Label for certificate: "
+ msgstr "無法從對方拿取驗証"
+
+-#: ncrypt/smime.c:1480
++#: ncrypt/smime.c:1514
+ #, fuzzy
+ msgid "no certfile"
+ msgstr "無法建立過濾器"
+
+-#: ncrypt/smime.c:1483
++#: ncrypt/smime.c:1517
+ #, fuzzy
+ msgid "no mbox"
+ msgstr "(沒有信箱)"
+
+-#: ncrypt/smime.c:1640 ncrypt/smime.c:1810
++#: ncrypt/smime.c:1674 ncrypt/smime.c:1844
+ msgid "No output from OpenSSL..."
+ msgstr ""
+
+-#: ncrypt/smime.c:1727
++#: ncrypt/smime.c:1761
+ msgid "Can't sign: No key specified. Use Sign As."
+ msgstr ""
+
+-#: ncrypt/smime.c:1777
++#: ncrypt/smime.c:1811
+ #, fuzzy
+ msgid "Can't open OpenSSL subprocess"
+ msgstr "無法開啟 OpenSSL 子程序"
+
+-#: ncrypt/smime.c:2004 ncrypt/smime.c:2123
++#: ncrypt/smime.c:2038 ncrypt/smime.c:2157
+ #, fuzzy
+ msgid ""
+ "[-- End of OpenSSL output --]\n"
+@@ -4862,26 +4942,26 @@ msgstr ""
+ "[-- OpenSSL 輸出部份結束 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2080 ncrypt/smime.c:2093
++#: ncrypt/smime.c:2114 ncrypt/smime.c:2127
+ #, fuzzy
+ msgid "[-- Error: unable to create OpenSSL subprocess --]\n"
+ msgstr "[-- 錯誤:無法建立 OpenSSL 子程序! --]\n"
+
+-#: ncrypt/smime.c:2129
++#: ncrypt/smime.c:2163
+ #, fuzzy
+ msgid "[-- The following data is S/MIME encrypted --]\n"
+ msgstr ""
+ "[-- 下面是 S/MIME 加密資料 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2132
++#: ncrypt/smime.c:2166
+ #, fuzzy
+ msgid "[-- The following data is S/MIME signed --]\n"
+ msgstr ""
+ "[-- 以下的資料已被簽署 --]\n"
+ "\n"
+
+-#: ncrypt/smime.c:2225
++#: ncrypt/smime.c:2259
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4890,7 +4970,7 @@ msgstr ""
+ "\n"
+ "[-- S/MIME 加密資料結束 --]\n"
+
+-#: ncrypt/smime.c:2227
++#: ncrypt/smime.c:2261
+ #, fuzzy
+ msgid ""
+ "\n"
+@@ -4900,169 +4980,169 @@ msgstr ""
+ "[-- 簽署的資料結束 --]\n"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2361
++#: ncrypt/smime.c:2395
+ #, fuzzy
+ msgid "S/MIME (s)ign, encrypt (w)ith, sign (a)s, (c)lear, or (o)ppenc mode off?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options (opportunistic encryption is on)
+-#: ncrypt/smime.c:2364
++#: ncrypt/smime.c:2398
+ msgid "swaco"
+ msgstr "12345"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2372
++#: ncrypt/smime.c:2406
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, (c)lear, or (o)ppenc mode?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options (opportunistic encryption is off)
+-#: ncrypt/smime.c:2375
++#: ncrypt/smime.c:2409
+ msgid "eswabco"
+ msgstr "12345"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2382
++#: ncrypt/smime.c:2416
+ #, fuzzy
+ msgid "S/MIME (e)ncrypt, (s)ign, encrypt (w)ith, sign (a)s, (b)oth, or (c)lear?"
+ msgstr "(1)加密, (2)簽名, (3)用別的身份簽, (4)兩者皆要, 或 (5)放棄?"
+
+ #. L10N: S/MIME options
+-#: ncrypt/smime.c:2385
++#: ncrypt/smime.c:2419
+ msgid "eswabc"
+ msgstr "12345"
+
+-#: ncrypt/smime.c:2449
++#: ncrypt/smime.c:2483
+ msgid "Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?"
+ msgstr ""
+
+ #. L10N: Options for: Choose algorithm family: (1) DES, (2) RC2, (3) AES, or (c)lear?
+-#: ncrypt/smime.c:2452
++#: ncrypt/smime.c:2486
+ msgid "123c"
+ msgstr ""
+
+-#: ncrypt/smime.c:2455
++#: ncrypt/smime.c:2489
+ msgid "(1) DES, (2) Triple-DES?"
+ msgstr ""
+
+ #. L10N: Options for: (1) DES, (2) Triple-DES
+-#: ncrypt/smime.c:2457
++#: ncrypt/smime.c:2491
+ msgid "12"
+ msgstr ""
+
+-#: ncrypt/smime.c:2470
++#: ncrypt/smime.c:2504
+ msgid "(1) RC2-40, (2) RC2-64, (3) RC2-128?"
+ msgstr ""
+
+ #. L10N: Options for: (1) RC2-40, (2) RC2-64, (3) RC2-128
+ #. L10N: Options for: (1) AES128, (2) AES192, (3) AES256
+-#: ncrypt/smime.c:2472 ncrypt/smime.c:2490
++#: ncrypt/smime.c:2506 ncrypt/smime.c:2524
+ msgid "123"
+ msgstr ""
+
+-#: ncrypt/smime.c:2488
++#: ncrypt/smime.c:2522
+ msgid "(1) AES128, (2) AES192, (3) AES256?"
+ msgstr ""
+
+-#: nntp/newsrc.c:632
++#: nntp/newsrc.c:639
+ msgid "Loading list of groups from cache..."
+ msgstr ""
+
+-#: nntp/newsrc.c:997
++#: nntp/newsrc.c:1023
+ #, fuzzy
+ msgid "No news server defined"
+ msgstr "沒有被定義的 POP 使用者名稱"
+
+-#: nntp/newsrc.c:1012
++#: nntp/newsrc.c:1041
+ #, c-format
+ msgid "%s is an invalid news server specification"
+ msgstr ""
+
+-#: nntp/nntp.c:236 nntp/nntp.c:777 pop/pop.c:742 pop/pop_lib.c:398
++#: nntp/nntp.c:238 nntp/nntp.c:779 pop/pop.c:742 pop/pop_lib.c:424
+ msgid "Server closed connection"
+ msgstr "與伺服器的聯結中斷了"
+
+-#: nntp/nntp.c:340
++#: nntp/nntp.c:342
+ msgid "Server doesn't support reader mode"
+ msgstr ""
+
+-#: nntp/nntp.c:576 pop/pop_auth.c:504 smtp.c:650
++#: nntp/nntp.c:578 pop/pop_auth.c:505 smtp.c:675
+ msgid "No authenticators available"
+ msgstr "沒有認證方式"
+
+-#: nntp/nntp.c:766
++#: nntp/nntp.c:768
+ #, fuzzy, c-format
+ msgid "%s authentication failed"
+ msgstr "SASL 驗證失敗"
+
+-#: nntp/nntp.c:826
++#: nntp/nntp.c:828
+ #, fuzzy, c-format
+ msgid "Connection to %s lost. Reconnect?"
+ msgstr "到 %s 的連線中斷了"
+
+-#: nntp/nntp.c:1285
++#: nntp/nntp.c:1287
+ #, fuzzy
+ msgid "Fetching list of articles..."
+ msgstr "正在拿取信件…"
+
+-#: nntp/nntp.c:1549 nntp/nntp.c:2138 pop/pop.c:614 pop/pop.c:910
++#: nntp/nntp.c:1551 nntp/nntp.c:2140 pop/pop.c:614 pop/pop.c:905
+ msgid "Checking for new messages..."
+ msgstr "看看有沒有新信件…"
+
+-#: nntp/nntp.c:1864 nntp/nntp.c:1954
++#: nntp/nntp.c:1866 nntp/nntp.c:1956
+ #, fuzzy
+ msgid "Could not switch to reader mode"
+ msgstr "無法寫入暫存檔:%s"
+
+-#: nntp/nntp.c:1877
++#: nntp/nntp.c:1879
+ #, fuzzy, c-format
+ msgid "Connected to %s. %s"
+ msgstr "正連接到 %s…"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ #, fuzzy
+ msgid "Posting is ok"
+ msgstr "正連接到 %s…"
+
+-#: nntp/nntp.c:1878
++#: nntp/nntp.c:1880
+ msgid "Posting is NOT ok"
+ msgstr ""
+
+-#: nntp/nntp.c:2008 nntp/nntp.c:2043
++#: nntp/nntp.c:2010 nntp/nntp.c:2045
+ #, fuzzy, c-format
+ msgid "Can't post article: %s"
+ msgstr "無法讀取:%s"
+
+-#: nntp/nntp.c:2064
++#: nntp/nntp.c:2066
+ #, fuzzy, c-format
+ msgid "Loading list of groups from server %s..."
+ msgstr "正在刪除伺服器上的信件…"
+
+-#: nntp/nntp.c:2106 nntp/nntp.c:2198
++#: nntp/nntp.c:2108 nntp/nntp.c:2200
+ #, fuzzy
+ msgid "Loading descriptions..."
+ msgstr "登入中…"
+
+-#: nntp/nntp.c:2128
++#: nntp/nntp.c:2130
+ #, fuzzy
+ msgid "Checking for new newsgroups..."
+ msgstr "看看有沒有新信件…"
+
+-#: nntp/nntp.c:2332
++#: nntp/nntp.c:2334
+ msgid "Unable to find child articles because server does not support XPAT command"
+ msgstr ""
+
+-#: nntp/nntp.c:2437
++#: nntp/nntp.c:2439
+ #, c-format
+ msgid "%s is an invalid newsgroup specification"
+ msgstr ""
+
+-#: nntp/nntp.c:2476
++#: nntp/nntp.c:2478
+ #, c-format
+ msgid "Newsgroup %s not found on the server"
+ msgstr ""
+
+-#: nntp/nntp.c:2498
++#: nntp/nntp.c:2500
+ #, c-format
+ msgid "Newsgroup %s has been removed from the server"
+ msgstr ""
+@@ -5074,7 +5154,7 @@ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:219 notmuch/mutt_notmuch.c:1939
+ #, c-format
+-msgid "failed to parse notmuch uri: %s"
++msgid "failed to parse notmuch url: %s"
+ msgstr ""
+
+ #: notmuch/mutt_notmuch.c:449
+@@ -6234,189 +6314,189 @@ msgstr ""
+ msgid "show S/MIME options"
+ msgstr "顯示 S/MIME 選項"
+
+-#: pager.c:222
++#: pager.c:214
+ msgid "Not available in this menu"
+ msgstr "在這個菜單中沒有這個功能"
+
+-#: pager.c:229
++#: pager.c:221
+ msgid "PrevPg"
+ msgstr "上一頁"
+
+-#: pager.c:230
++#: pager.c:222
+ msgid "NextPg"
+ msgstr "下一頁"
+
+-#: pager.c:235
++#: pager.c:227
+ msgid "View Attachm."
+ msgstr "顯示附件。"
+
+-#: pager.c:238 pager.c:247
++#: pager.c:230 pager.c:239
+ msgid "Next"
+ msgstr "下一個"
+
+ #. L10N: Status bar message: the entire email is visible in the pager
+ #. L10N: Status bar message: all the emails are visible in the index
+-#: pager.c:2180 status.c:278
++#: pager.c:2136 status.c:278
+ msgid "all"
+ msgstr ""
+
+ #. L10N: Status bar message: the end of the email is visible in the pager
+ #. L10N: Status bar message: the end of the list emails is visible in the index
+-#: pager.c:2182 status.c:276
++#: pager.c:2138 status.c:276
+ msgid "end"
+ msgstr ""
+
+-#: pager.c:2530 pager.c:2566 pager.c:2602 pager.c:2937
++#: pager.c:2503 pager.c:2539 pager.c:2576 pager.c:2911
+ msgid "Bottom of message is shown"
+ msgstr "現正顯示最下面的信件"
+
+-#: pager.c:2543 pager.c:2573 pager.c:2580 pager.c:2590
++#: pager.c:2516 pager.c:2546 pager.c:2553 pager.c:2564
+ msgid "Top of message is shown"
+ msgstr "現正顯示最上面的信件"
+
+-#: pager.c:2840
++#: pager.c:2814
+ msgid "Help is currently being shown"
+ msgstr "現正顯示說明文件"
+
+-#: pager.c:2897
++#: pager.c:2871
+ msgid "No more quoted text"
+ msgstr "不能有再多的引言"
+
+-#: pager.c:2914
++#: pager.c:2888
+ msgid "No more unquoted text after quoted text"
+ msgstr "在引言後有過多的非引言文字"
+
+-#: pattern.c:220 pattern.c:297 pattern.c:1046
++#: pattern.c:221 pattern.c:298 pattern.c:1085
+ #, c-format
+ msgid "Error in expression: %s"
+ msgstr "表達式有錯誤:%s"
+
+-#: pattern.c:226 pattern.c:302 pattern.c:1052
++#: pattern.c:227 pattern.c:303 pattern.c:1091
+ #, fuzzy
+ msgid "Empty expression"
+ msgstr "表達式有錯誤"
+
+-#: pattern.c:288
++#: pattern.c:289
+ #, fuzzy
+ msgid "No search command defined"
+ msgstr "查詢指令尚未定義"
+
+-#: pattern.c:326
++#: pattern.c:327
+ #, fuzzy, c-format
+ msgid "Running search command: %s ..."
+ msgstr "執行自動顯示指令:%s"
+
+-#: pattern.c:417
++#: pattern.c:441 pattern.c:456
+ #, c-format
+ msgid "Invalid day of month: %s"
+ msgstr "無效的日子:%s"
+
+-#: pattern.c:431
++#: pattern.c:446 pattern.c:470
+ #, c-format
+ msgid "Invalid month: %s"
+ msgstr "無效的月份:%s"
+
+-#: pattern.c:534
++#: pattern.c:573
+ #, c-format
+ msgid "Invalid relative date: %s"
+ msgstr "無效的相對日期:%s"
+
+-#: pattern.c:842 pattern.c:975
++#: pattern.c:881 pattern.c:1014
+ #, fuzzy
+ msgid "No current message"
+ msgstr "沒有尚未讀取的信件"
+
+-#: pattern.c:1002
++#: pattern.c:1041
+ msgid "No Context"
+ msgstr ""
+
+-#: pattern.c:1125
++#: pattern.c:1164
+ #, fuzzy
+ msgid "Error opening 'memory stream'"
+ msgstr "開啟信箱時發生錯誤"
+
+-#: pattern.c:1171
++#: pattern.c:1210
+ #, fuzzy
+ msgid "Error re-opening 'memory stream'"
+ msgstr "開啟信箱時發生錯誤"
+
+-#: pattern.c:1180
++#: pattern.c:1219
+ #, fuzzy
+ msgid "Error opening /dev/null"
+ msgstr "無法開啟 /dev/null"
+
+-#: pattern.c:1443 pattern.c:1620
++#: pattern.c:1482 pattern.c:1662
+ #, c-format
+ msgid "error in pattern at: %s"
+ msgstr "在樣式上有錯誤:%s"
+
+-#: pattern.c:1476
++#: pattern.c:1515
+ #, fuzzy, c-format
+ msgid "missing pattern: %s"
+ msgstr "錯失參數"
+
+-#: pattern.c:1494 pattern.c:1593
++#: pattern.c:1533 pattern.c:1635
+ #, c-format
+ msgid "mismatched parentheses: %s"
+ msgstr "不對稱的括弧:%s"
+
+-#: pattern.c:1559
++#: pattern.c:1598
+ #, fuzzy, c-format
+ msgid "%c: invalid pattern modifier"
+ msgstr "%c:無效的指令"
+
+-#: pattern.c:1564
++#: pattern.c:1603
+ #, c-format
+ msgid "%c: not supported in this mode"
+ msgstr "%c:在這個模式不支援"
+
+-#: pattern.c:1576
++#: pattern.c:1618
+ msgid "missing parameter"
+ msgstr "錯失參數"
+
+-#: pattern.c:1626
++#: pattern.c:1668
+ msgid "empty pattern"
+ msgstr "空的格式"
+
+-#: pattern.c:2080 pattern.c:2083
++#: pattern.c:2202 pattern.c:2205
+ msgid "error: server custom search only supported with IMAP"
+ msgstr ""
+
+-#: pattern.c:2274
++#: pattern.c:2398
+ #, c-format
+ msgid "error: unknown op %d (report this error)"
+ msgstr "錯誤:不明的 op %d (請回報這個錯誤)"
+
+-#: pattern.c:2448 pattern.c:2604
++#: pattern.c:2572 pattern.c:2728
+ msgid "Compiling search pattern..."
+ msgstr "編譯搜尋樣式中…"
+
+-#: pattern.c:2468
++#: pattern.c:2592
+ msgid "Executing command on matching messages..."
+ msgstr "正在對符合的郵件執行命令…"
+
+-#: pattern.c:2537
++#: pattern.c:2661
+ msgid "No messages matched criteria"
+ msgstr "沒有郵件符合要求"
+
+-#: pattern.c:2641
++#: pattern.c:2765
+ #, fuzzy
+ msgid "Searching..."
+ msgstr "儲存中…"
+
+-#: pattern.c:2655
++#: pattern.c:2779
+ msgid "Search hit bottom without finding match"
+ msgstr "已搜尋至結尾,並沒有發現任何符合"
+
+-#: pattern.c:2666
++#: pattern.c:2790
+ msgid "Search hit top without finding match"
+ msgstr "已搜尋至開頭,並沒有發現任何符合"
+
+-#: pattern.c:2700
++#: pattern.c:2824
+ msgid "Search interrupted"
+ msgstr "搜尋已被中斷"
+
+-#: pop/pop.c:216 pop/pop_lib.c:234
++#: pop/pop.c:216 pop/pop_lib.c:259
+ msgid "Command TOP is not supported by server"
+ msgstr "伺服器不支援 TOP 指令"
+
+@@ -6424,7 +6504,7 @@ msgstr "伺服器不支援 TOP 指令"
+ msgid "Can't write header to temporary file"
+ msgstr "無法把標頭寫到暫存檔"
+
+-#: pop/pop.c:420 pop/pop_lib.c:236
++#: pop/pop.c:420 pop/pop_lib.c:261
+ msgid "Command UIDL is not supported by server"
+ msgstr "伺服器不支援 UIDL 指令"
+
+@@ -6438,7 +6518,7 @@ msgstr[0] "信件的索引不正確。請再重新開啟信箱"
+ msgid "POP host is not defined"
+ msgstr "POP 主機沒有被定義"
+
+-#: pop/pop.c:596 pop/pop.c:825
++#: pop/pop.c:596 pop/pop.c:790 pop/pop.c:820
+ #, c-format
+ msgid "%s is an invalid POP path"
+ msgstr ""
+@@ -6469,156 +6549,156 @@ msgid "%s [%d of %d message read]"
+ msgid_plural "%s [%d of %d messages read]"
+ msgstr[0] "%s [已閱讀 %2d 封信件中的 %1d 封]"
+
+-#: pop/pop.c:876
++#: pop/pop.c:871
+ msgid "Fetching list of messages..."
+ msgstr "正在拿取信件…"
+
+-#: pop/pop.c:959
++#: pop/pop.c:954
+ #, fuzzy
+ msgid "Marking messages deleted..."
+ msgstr "標簽了的 %d 封信件刪去了…"
+
+-#: pop/pop.c:1150
++#: pop/pop.c:1145
+ msgid "Can't write message to temporary file"
+ msgstr "無法把信件寫到暫存檔"
+
+-#: pop/pop_auth.c:103
++#: pop/pop_auth.c:104
+ msgid "Authenticating (SASL)..."
+ msgstr "驗證中 (SASL)…"
+
+-#: pop/pop_auth.c:245
++#: pop/pop_auth.c:246
+ msgid "POP timestamp is invalid"
+ msgstr ""
+
+-#: pop/pop_auth.c:249
++#: pop/pop_auth.c:250
+ msgid "Authenticating (APOP)..."
+ msgstr "驗證中 (APOP)…"
+
+-#: pop/pop_auth.c:269
++#: pop/pop_auth.c:270
+ msgid "APOP authentication failed"
+ msgstr "APOP 驗證失敗"
+
+-#: pop/pop_auth.c:309
++#: pop/pop_auth.c:310
+ msgid "Command USER is not supported by server"
+ msgstr "伺服器不支援 USER 指令"
+
+-#: pop/pop_auth.c:386
++#: pop/pop_auth.c:387
+ #, fuzzy
+ msgid "Authentication failed"
+ msgstr "SASL 驗證失敗"
+
+-#: pop/pop_lib.c:78
++#: pop/pop_lib.c:103
+ #, fuzzy, c-format
+ msgid "Invalid POP URL: %s"
+ msgstr "無效的月份:%s"
+
+-#: pop/pop_lib.c:232
++#: pop/pop_lib.c:257
+ msgid "Unable to leave messages on server"
+ msgstr "無法把信件留在伺服器上"
+
+-#: pop/pop_lib.c:274
++#: pop/pop_lib.c:300
+ #, c-format
+ msgid "Error connecting to server: %s"
+ msgstr "連線到 %s 時失敗"
+
+-#: pop/pop_lib.c:414
++#: pop/pop_lib.c:440
+ msgid "Closing connection to POP server..."
+ msgstr "正在關閉與 POP 伺服器的連線…"
+
+-#: pop/pop_lib.c:605
++#: pop/pop_lib.c:631
+ msgid "Verifying message indexes..."
+ msgstr "正在檢查信件的指引 …"
+
+-#: pop/pop_lib.c:628
++#: pop/pop_lib.c:654
+ msgid "Connection lost. Reconnect to POP server?"
+ msgstr "連線中斷。再與 POP 伺服器連線嗎?"
+
+-#: postpone.c:229
++#: postpone.c:260
+ msgid "Postponed Messages"
+ msgstr "信件已經被延遲寄出"
+
+-#: postpone.c:314 postpone.c:326
++#: postpone.c:348 postpone.c:372
+ msgid "No postponed messages"
+ msgstr "沒有被延遲寄出的信件"
+
+-#: postpone.c:480
++#: postpone.c:526
+ #, fuzzy
+ msgid "Illegal S/MIME header"
+ msgstr "不合規定的 S/MIME 標頭"
+
+-#: postpone.c:510 postpone.c:551 postpone.c:560
++#: postpone.c:556 postpone.c:597 postpone.c:606
+ #, fuzzy
+ msgid "Illegal crypto header"
+ msgstr "不合規定的 PGP 標頭"
+
+-#: postpone.c:644 postpone.c:752 postpone.c:780
++#: postpone.c:690 postpone.c:798 postpone.c:826
+ #, fuzzy
+ msgid "Decrypting message..."
+ msgstr "拿取信件中…"
+
+-#: query.c:82
++#: query.c:80
+ msgid "New Query"
+ msgstr "新的查詢"
+
+-#: query.c:83
++#: query.c:81
+ msgid "Make Alias"
+ msgstr "製作別名"
+
+-#: query.c:180
++#: query.c:178
+ msgid "Waiting for response..."
+ msgstr "等待回應中…"
+
+-#: query.c:362 query.c:400
++#: query.c:365 query.c:434
+ msgid "Query: "
+ msgstr "查詢:"
+
+-#: query.c:370 query.c:407
++#: query.c:374 query.c:442
+ #, c-format
+ msgid "Query '%s'"
+ msgstr "查詢 '%s'"
+
+-#: query.c:620 query.c:657
++#: query.c:661 query.c:698
+ msgid "Query command not defined"
+ msgstr "查詢指令尚未定義"
+
+-#: recvattach.c:93
++#: recvattach.c:91
+ msgid "Pipe"
+ msgstr "管線"
+
+-#: recvattach.c:94
++#: recvattach.c:92
+ msgid "Print"
+ msgstr "顯示"
+
+-#: recvattach.c:569
++#: recvattach.c:571
+ msgid "Saving..."
+ msgstr "儲存中…"
+
+-#: recvattach.c:573 recvattach.c:744 recvattach.c:748
++#: recvattach.c:575 recvattach.c:746 recvattach.c:750
+ #, fuzzy, c-format
+ msgid "Attachment saved"
+ msgid_plural "%d attachments saved"
+ msgstr[0] "附件已被儲存"
+
+-#: recvattach.c:772
++#: recvattach.c:774
+ #, c-format
+ msgid "WARNING! You are about to overwrite %s, continue?"
+ msgstr "警告! 您正在覆蓋 %s, 是否要繼續?"
+
+-#: recvattach.c:790
++#: recvattach.c:792
+ msgid "Attachment filtered"
+ msgstr "附件被過濾掉"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Filter through: "
+ msgstr "經過過濾:"
+
+-#: recvattach.c:886
++#: recvattach.c:888
+ msgid "Pipe to: "
+ msgstr "導引至:"
+
+ #. L10N: s gets replaced by a MIME type, e.g. "text/plain" or
+ #. application/octet-stream.
+-#: recvattach.c:935
++#: recvattach.c:937
+ #, fuzzy, c-format
+ msgid "I don't know how to print %s attachments"
+ msgstr "我不知道要怎麼列印 %s 附件"
+@@ -6626,58 +6706,58 @@ msgstr "我不知道要怎麼列印 %s 附件"
+ #. L10N: Although we now the precise number of tagged messages, we
+ #. do not show it to the user. So feel free to use a "generic
+ #. plural" as plural translation if your language has one.
+-#: recvattach.c:1038
++#: recvattach.c:1040
+ #, fuzzy, c-format
+ msgid "Print tagged attachment?"
+ msgid_plural "Print %d tagged attachments?"
+ msgstr[0] "是否要列印標記起來的附件?"
+
+-#: recvattach.c:1039
++#: recvattach.c:1041
+ #, c-format
+ msgid "Print attachment?"
+ msgstr "是否要列印附件?"
+
+-#: recvattach.c:1123
++#: recvattach.c:1125
+ msgid "Structural changes to decrypted attachments are not supported"
+ msgstr ""
+
+-#: recvattach.c:1291
++#: recvattach.c:1293
+ #, fuzzy
+ msgid "Can't decrypt encrypted message"
+ msgstr "找不到已標記的訊息"
+
+-#: recvattach.c:1425
++#: recvattach.c:1457
+ msgid "Attachments"
+ msgstr "附件"
+
+-#: recvattach.c:1465
++#: recvattach.c:1497
+ msgid "There are no subparts to show"
+ msgstr "沒有部件"
+
+-#: recvattach.c:1520
++#: recvattach.c:1552
+ msgid "Can't delete attachment from POP server"
+ msgstr "無法從 POP 伺服器刪除附件"
+
+-#: recvattach.c:1529
++#: recvattach.c:1561
+ #, fuzzy
+ msgid "Can't delete attachment from news server"
+ msgstr "無法從 POP 伺服器刪除附件"
+
+-#: recvattach.c:1536
++#: recvattach.c:1568
+ #, fuzzy
+ msgid "Deletion of attachments from encrypted messages is unsupported"
+ msgstr "未支援刪除 PGP 信件所附帶的附件"
+
+-#: recvattach.c:1542
++#: recvattach.c:1574
+ #, fuzzy
+ msgid "Deletion of attachments from signed messages may invalidate the signature"
+ msgstr "未支援刪除 PGP 信件所附帶的附件"
+
+-#: recvattach.c:1561 recvattach.c:1578
++#: recvattach.c:1593 recvattach.c:1610
+ msgid "Only deletion of multipart attachments is supported"
+ msgstr "只支援刪除多重附件"
+
+-#: recvcmd.c:79
++#: recvcmd.c:78
+ msgid "You may only bounce message/rfc822 parts"
+ msgstr "您只能直接傳送 message/rfc822 的部分"
+
+@@ -6713,7 +6793,7 @@ msgstr "無法建立 %s"
+ msgid "Can't find any tagged messages"
+ msgstr "找不到已標記的訊息"
+
+-#: recvcmd.c:848 send.c:1073
++#: recvcmd.c:848 send.c:1072
+ msgid "No mailing lists found"
+ msgstr "沒有找到郵寄論壇"
+
+@@ -6728,67 +6808,67 @@ msgstr "未能把所有已標簽的附件解碼。要用 MIME 包封其它的嗎
+ msgid "You may only compose to sender with message/rfc822 parts"
+ msgstr "您只能直接傳送 message/rfc822 的部分"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Append"
+ msgstr "加上"
+
+-#: remailer.c:76
++#: remailer.c:74
+ msgid "Insert"
+ msgstr "加入"
+
+-#: remailer.c:78
++#: remailer.c:76
+ msgid "OK"
+ msgstr "OK"
+
+-#: remailer.c:210
++#: remailer.c:207
+ msgid "<random>"
+ msgstr ""
+
+-#: remailer.c:586
++#: remailer.c:617
+ msgid "Can't get mixmaster's type2.list"
+ msgstr "拿不到 mixmaster 的 type2.list"
+
+-#: remailer.c:612
++#: remailer.c:673
+ msgid "Select a remailer chain"
+ msgstr "選擇一個郵件轉接器的鏈結"
+
+-#: remailer.c:674
++#: remailer.c:735
+ #, c-format
+ msgid "Error: %s can't be used as the final remailer of a chain"
+ msgstr "錯誤:%s 不能用作鏈結的最後一個郵件轉接器"
+
+ #. L10N The '%d' here hard-coded to 19
+-#: remailer.c:706
++#: remailer.c:767
+ #, c-format
+ msgid "Mixmaster chains are limited to %d elements"
+ msgstr "Mixmaster 鏈結最多為 %d 個元件"
+
+-#: remailer.c:729
++#: remailer.c:790
+ msgid "The remailer chain is already empty"
+ msgstr "郵件轉接器的鏈結已沒有東西了"
+
+-#: remailer.c:739
++#: remailer.c:800
+ msgid "You already have the first chain element selected"
+ msgstr "你已經選擇了鏈結的第一個元件"
+
+-#: remailer.c:749
++#: remailer.c:810
+ msgid "You already have the last chain element selected"
+ msgstr "你已經選擇了鏈結的最後一個元件"
+
+-#: remailer.c:792
++#: remailer.c:856
+ msgid "Mixmaster doesn't accept Cc or Bcc headers"
+ msgstr "Mixmaster 不接受 Cc 和 Bcc 的標頭"
+
+-#: remailer.c:817
++#: remailer.c:881
+ msgid "Please set the hostname variable to a proper value when using mixmaster"
+ msgstr "使用 mixmaster 時請先設定好 hostname 變數"
+
+-#: remailer.c:860
++#: remailer.c:924
+ #, c-format
+ msgid "Error sending message, child exited %d.\n"
+ msgstr "寄送訊息時出現錯誤,子程序結束 %d。\n"
+
+-#: remailer.c:864
++#: remailer.c:928
+ msgid "Error sending message"
+ msgstr "寄信途中發生錯誤"
+
+@@ -6819,42 +6899,42 @@ msgstr "利用附件形式來轉寄?"
+
+ #. L10N: Asks whether the user respects the reply-to header.
+ #. If she says no, neomutt will reply to the from header's address instead.
+-#: send.c:793
++#: send.c:792
+ #, c-format
+ msgid "Reply to %s%s?"
+ msgstr "要回覆給 %s%s?"
+
+-#: send.c:838
++#: send.c:837
+ #, c-format
+ msgid "Follow-up to %s%s?"
+ msgstr "以後的回覆都寄至 %s%s?"
+
+-#: send.c:1122
++#: send.c:1121
+ msgid "Include message in reply?"
+ msgstr "回信時是否要包含原本的信件內容?"
+
+-#: send.c:1128
++#: send.c:1127
+ msgid "Including quoted message..."
+ msgstr "正引入引言部分…"
+
+-#: send.c:1137
++#: send.c:1136
+ msgid "Could not include all requested messages"
+ msgstr "無法包含所有要求的信件"
+
+-#: send.c:1148
++#: send.c:1147
+ msgid "Forward as attachment?"
+ msgstr "利用附件形式來轉寄?"
+
+-#: send.c:1153
++#: send.c:1152
+ msgid "Preparing forwarded message..."
+ msgstr "準備轉寄信件…"
+
+-#: send.c:1632
++#: send.c:1631
+ #, fuzzy
+ msgid "Fcc to an IMAP mailbox is not supported in batch mode"
+ msgstr "%c:在這個模式不支援"
+
+-#: send.c:1664 send.c:1690
++#: send.c:1665 send.c:1675 send.c:1701
+ #, fuzzy
+ msgid "Save attachments in Fcc?"
+ msgstr "用文字方式顯示附件內容"
+@@ -6863,197 +6943,197 @@ msgstr "用文字方式顯示附件內容"
+ #. (r)etry tries the same mailbox again.
+ #. alternate (m)ailbox prompts for a different mailbox to try.
+ #. (s)kip aborts saving.
+-#: send.c:1712
++#: send.c:1723
+ msgid "Fcc failed. (r)etry, alternate (m)ailbox, or (s)kip?"
+ msgstr ""
+
+ #. L10N: These correspond to the "Fcc failed" multi-choice prompt
+ #. (r)etry, alternate (m)ailbox, or (s)kip.
+ #. Any similarity to famous leaders of the FSF is coincidental.
+-#: send.c:1716
++#: send.c:1727
+ msgid "rms"
+ msgstr ""
+
+ #. L10N: This is the prompt to enter an "alternate (m)ailbox" when the
+ #. initial Fcc fails.
+-#: send.c:1722
++#: send.c:1733
+ #, fuzzy
+ msgid "Fcc mailbox"
+ msgstr "沒有信箱。\n"
+
+-#: send.c:1788
++#: send.c:1799
+ msgid "Can't postpone. $postponed is unset"
+ msgstr ""
+
+-#: send.c:1923
++#: send.c:1934
+ msgid "Recall postponed message?"
+ msgstr "要叫出被延遲的信件?"
+
+-#: send.c:2228
++#: send.c:2239
+ #, fuzzy
+ msgid "Edit forwarded message?"
+ msgstr "準備轉寄信件…"
+
+-#: send.c:2266
++#: send.c:2277
+ msgid "Abort unmodified message?"
+ msgstr "是否要中斷未修改過的信件?"
+
+-#: send.c:2268
++#: send.c:2279
+ msgid "Aborted unmodified message"
+ msgstr "中斷沒有修改過的信件"
+
+-#: send.c:2388
++#: send.c:2399
+ msgid "No crypto backend configured. Disabling message security setting."
+ msgstr ""
+
+-#: send.c:2427
++#: send.c:2438
+ #, fuzzy
+ msgid "Article not posted"
+ msgstr "信件沒有寄出"
+
+-#: send.c:2437
++#: send.c:2448
+ msgid "Message postponed"
+ msgstr "信件被延遲寄出"
+
+-#: send.c:2470
++#: send.c:2481
+ msgid "No subject, abort sending?"
+ msgstr "沒有信件標題,要中斷寄信的工作?"
+
+-#: send.c:2474 send.c:2480
++#: send.c:2485 send.c:2491
+ msgid "No subject specified"
+ msgstr "沒有指定標題"
+
+-#: send.c:2486
++#: send.c:2497
+ #, fuzzy
+ msgid "No newsgroup specified"
+ msgstr "沒有指定標題"
+
+-#: send.c:2496
++#: send.c:2507
+ #, fuzzy
+ msgid "No attachments, cancel sending?"
+ msgstr "編輯附件的傳輸編碼"
+
+-#: send.c:2501
++#: send.c:2512
+ msgid "Message contains text matching \"$abort_noattach_regex\". Not sending."
+ msgstr ""
+
+-#: send.c:2559 smtp.c:227
++#: send.c:2570 smtp.c:230
+ msgid "Sending message..."
+ msgstr "正在寄出信件…"
+
+-#: send.c:2598
++#: send.c:2609
+ msgid "Could not send the message"
+ msgstr "無法寄出信件"
+
+-#: send.c:2608
++#: send.c:2619
+ msgid "Sending in background"
+ msgstr "正在背景作業中傳送"
+
+-#: send.c:2609
++#: send.c:2620
+ msgid "Article posted"
+ msgstr ""
+
+-#: send.c:2610
++#: send.c:2621
+ msgid "Mail sent"
+ msgstr "信件已經寄出"
+
+-#: sendlib.c:567
++#: sendlib.c:566
+ msgid "No boundary parameter found [report this error]"
+ msgstr "沒有發現分界變數![回報錯誤]"
+
+-#: sendlib.c:598
++#: sendlib.c:597
+ #, c-format
+ msgid "%s no longer exists"
+ msgstr "%s 已經不存在"
+
+-#: sendlib.c:1056
++#: sendlib.c:1055
+ #, fuzzy, c-format
+ msgid "%s isn't a regular file"
+ msgstr "%s 不是信箱"
+
+-#: sendlib.c:1223
++#: sendlib.c:1222
+ #, fuzzy
+ msgid "Could not find any mime.types file."
+ msgstr "無法寄出信件"
+
+-#: sendlib.c:1314
++#: sendlib.c:1313
+ #, c-format
+ msgid "Could not open %s"
+ msgstr "無法開啟 %s"
+
+-#: sendlib.c:2864
++#: sendlib.c:2855
+ msgid "$sendmail must be set in order to send mail"
+ msgstr ""
+
+-#: sendlib.c:2971
++#: sendlib.c:2962
+ #, c-format
+ msgid "Error sending message, child exited %d (%s)"
+ msgstr "寄送訊息出現錯誤,子程序已結束 %d (%s)"
+
+-#: sendlib.c:2977
++#: sendlib.c:2969
+ msgid "Output of the delivery process"
+ msgstr "Delivery process 的輸出"
+
+-#: sendlib.c:3157
++#: sendlib.c:3154
+ #, c-format
+ msgid "Bad IDN %s while preparing resent-from"
+ msgstr ""
+
+-#: smtp.c:165
++#: smtp.c:168
+ #, fuzzy, c-format
+ msgid "SMTP session failed: %s"
+ msgstr "登入失敗: %s"
+
+-#: smtp.c:222
++#: smtp.c:225
+ #, fuzzy, c-format
+ msgid "SMTP session failed: unable to open %s"
+ msgstr "登入失敗: %s"
+
+-#: smtp.c:339
++#: smtp.c:364
+ #, fuzzy, c-format
+ msgid "Invalid SMTP URL: %s"
+ msgstr "無效的月份:%s"
+
+-#: smtp.c:618
++#: smtp.c:643
+ #, c-format
+ msgid "SMTP authentication method %s requires SASL"
+ msgstr ""
+
+-#: smtp.c:625
++#: smtp.c:650
+ #, fuzzy, c-format
+ msgid "%s authentication failed, trying next method"
+ msgstr "SASL 驗證失敗"
+
+-#: smtp.c:636
++#: smtp.c:661
+ #, fuzzy
+ msgid "SMTP authentication requires SASL"
+ msgstr "GSSAPI 驗證失敗"
+
+-#: smtp.c:717
++#: smtp.c:742
+ msgid "SMTP server does not support authentication"
+ msgstr ""
+
+-#: smtp.c:756
++#: smtp.c:781
+ msgid "No from address given"
+ msgstr ""
+
+-#: smtp.c:821
++#: smtp.c:846
+ msgid "SMTP session failed: read error"
+ msgstr ""
+
+-#: smtp.c:823
++#: smtp.c:848
+ msgid "SMTP session failed: write error"
+ msgstr ""
+
+-#: smtp.c:825
++#: smtp.c:850
+ msgid "Invalid server response"
+ msgstr ""
+
+-#: sort.c:385
++#: sort.c:387
+ msgid "Sorting mailbox..."
+ msgstr "信箱排序中…"
+
+-#: sort.c:427
++#: sort.c:429
+ msgid "Could not find sorting function [report this bug]"
+ msgstr "找不到排序的功能![請回報這個問題]"
+
+@@ -7105,11 +7185,11 @@ msgstr ""
+ "NeoMutt 是一個自由軟體, 歡迎您在某些特定的條件上,重新將它分發。\n"
+ "若需要更詳細的資料, 請鍵入 'neomutt -vv'\n"
+
+-#: version.c:446
++#: version.c:451
+ #, fuzzy
+ msgid "Default options:"
+ msgstr "編譯選項:"
+
+-#: version.c:449
++#: version.c:454
+ msgid "Compile options:"
+ msgstr "編譯選項:"
+diff --git a/pop/pop.h b/pop/lib.h
+similarity index 89%
+rename from pop/pop.h
+rename to pop/lib.h
+index 1453fbbf5..7af36dd6f 100644
+--- a/pop/pop.h
++++ b/pop/lib.h
+@@ -20,13 +20,14 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MUTT_POP_POP_H
+-#define MUTT_POP_POP_H
++#ifndef MUTT_POP_LIB_H
++#define MUTT_POP_LIB_H
+
+ #include <stdbool.h>
+ #include "core/lib.h"
+ #include "mx.h"
+
++struct Slist;
+ struct stat;
+
+ /**
+@@ -46,6 +47,9 @@ extern short C_PopCheckinterval;
+ extern unsigned char C_PopDelete;
+ extern char * C_PopHost;
+ extern bool C_PopLast;
++extern char * C_PopOauthRefreshCommand;
++extern char * C_PopPass;
++extern char * C_PopUser;
+
+ /* These Config Variables are only used in pop/pop_auth.c */
+ extern struct Slist *C_PopAuthenticators;
+@@ -59,4 +63,4 @@ extern struct MxOps MxPopOps;
+ void pop_fetch_mail(void);
+ enum MailboxType pop_path_probe(const char *path, const struct stat *st);
+
+-#endif /* MUTT_POP_POP_H */
++#endif /* MUTT_POP_LIB_H */
+diff --git a/pop/pop.c b/pop/pop.c
+index 58eb20cc1..614a197f7 100644
+--- a/pop/pop.c
++++ b/pop/pop.c
+@@ -37,33 +37,34 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include "pop_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
+-#include "mutt.h"
+-#include "pop.h"
++#include "conn/lib.h"
++#include "lib.h"
+ #include "bcache.h"
+ #include "context.h"
+ #include "globals.h"
+ #include "hook.h"
++#include "init.h"
+ #include "mutt_account.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "progress.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+ #ifdef USE_HCACHE
+-#include "hcache/hcache.h"
++#include "hcache/lib.h"
+ #endif
+
+ struct BodyCache;
++struct stat;
+
+ /* These Config Variables are only used in pop/pop.c */
+ short C_PopCheckinterval; ///< Config: (pop) Interval between checks for new mail
+@@ -358,7 +359,7 @@ static header_cache_t *pop_hcache_open(struct PopAccountData *adata, const char
+ if (!adata || !adata->conn)
+ return mutt_hcache_open(C_HeaderCache, path, NULL);
+
+- struct Url url;
++ struct Url url = { 0 };
+ char p[1024];
+
+ mutt_account_tourl(&adata->conn->account, &url);
+@@ -578,7 +579,7 @@ void pop_fetch_mail(void)
+ char buf[1024];
+ char msgbuf[128];
+ int last = 0, msgs, bytes, rset = 0, ret;
+- struct ConnAccount acct;
++ struct ConnAccount cac = { { 0 } };
+
+ char *p = mutt_mem_calloc(strlen(C_PopHost) + 7, sizeof(char));
+ char *url = p;
+@@ -589,7 +590,7 @@ void pop_fetch_mail(void)
+ }
+ strcpy(p, C_PopHost);
+
+- ret = pop_parse_path(url, &acct);
++ ret = pop_parse_path(url, &cac);
+ FREE(&url);
+ if (ret)
+ {
+@@ -597,7 +598,7 @@ void pop_fetch_mail(void)
+ return;
+ }
+
+- struct Connection *conn = mutt_conn_find(NULL, &acct);
++ struct Connection *conn = mutt_conn_find(&cac);
+ if (!conn)
+ return;
+
+@@ -757,10 +758,10 @@ static struct Account *pop_ac_find(struct Account *a, const char *path)
+ return NULL;
+
+ struct PopAccountData *adata = a->adata;
+- struct ConnAccount *ac = &adata->conn_account;
++ struct ConnAccount *cac = &adata->conn->account;
+
+- if ((mutt_str_strcasecmp(url->host, ac->host) != 0) ||
+- (mutt_str_strcasecmp(url->user, ac->user) != 0))
++ if ((mutt_str_strcasecmp(url->host, cac->host) != 0) ||
++ (mutt_str_strcasecmp(url->user, cac->user) != 0))
+ {
+ a = NULL;
+ }
+@@ -780,28 +781,23 @@ static int pop_ac_add(struct Account *a, struct Mailbox *m)
+ if (a->adata)
+ return 0;
+
++ struct ConnAccount cac = { { 0 } };
+ struct PopAccountData *adata = pop_adata_new();
+ a->adata = adata;
+ a->free_adata = pop_adata_free;
+
+- struct Url *url = url_parse(mailbox_path(m));
+- if (!url)
+- return 0;
++ if (pop_parse_path(mailbox_path(m), &cac))
++ {
++ mutt_error(_("%s is an invalid POP path"), mailbox_path(m));
++ return -1;
++ }
+
+- mutt_str_strfcpy(adata->conn_account.user, url->user,
+- sizeof(adata->conn_account.user));
+- mutt_str_strfcpy(adata->conn_account.pass, url->pass,
+- sizeof(adata->conn_account.pass));
+- mutt_str_strfcpy(adata->conn_account.host, url->host,
+- sizeof(adata->conn_account.host));
+- adata->conn_account.port = url->port;
+- adata->conn_account.type = MUTT_ACCT_TYPE_POP;
+-
+- if (adata->conn_account.user[0] != '\0')
+- adata->conn_account.flags |= MUTT_ACCT_USER;
+- if (adata->conn_account.pass[0] != '\0')
+- adata->conn_account.flags |= MUTT_ACCT_PASS;
+- url_free(&url);
++ adata->conn = mutt_conn_new(&cac);
++ if (!adata->conn)
++ {
++ pop_adata_free((void **) &adata);
++ return -1;
++ }
+
+ return 0;
+ }
+@@ -817,16 +813,16 @@ static int pop_mbox_open(struct Mailbox *m)
+ return -1;
+
+ char buf[PATH_MAX];
+- struct ConnAccount acct = { { 0 } };
+- struct Url url;
++ struct ConnAccount cac = { { 0 } };
++ struct Url url = { 0 };
+
+- if (pop_parse_path(mailbox_path(m), &acct))
++ if (pop_parse_path(mailbox_path(m), &cac))
+ {
+ mutt_error(_("%s is an invalid POP path"), mailbox_path(m));
+ return -1;
+ }
+
+- mutt_account_tourl(&acct, &url);
++ mutt_account_tourl(&cac, &url);
+ url.path = NULL;
+ url_tostring(&url, buf, sizeof(buf), 0);
+
+@@ -844,7 +840,7 @@ static int pop_mbox_open(struct Mailbox *m)
+ struct Connection *conn = adata->conn;
+ if (!conn)
+ {
+- adata->conn = mutt_conn_new(&acct);
++ adata->conn = mutt_conn_new(&cac);
+ conn = adata->conn;
+ if (!conn)
+ return -1;
+@@ -856,7 +852,7 @@ static int pop_mbox_open(struct Mailbox *m)
+ if (pop_open_connection(adata) < 0)
+ return -1;
+
+- adata->bcache = mutt_bcache_open(&acct, NULL);
++ adata->bcache = mutt_bcache_open(&cac, NULL);
+
+ /* init (hard-coded) ACL rights */
+ m->rights = MUTT_ACL_SEEN | MUTT_ACL_DELETE;
+@@ -913,7 +909,7 @@ static int pop_mbox_check(struct Mailbox *m, int *index_hint)
+ int rc = pop_fetch_headers(m);
+ pop_clear_cache(adata);
+ if (m->msg_count > old_msg_count)
+- mailbox_changed(m, MBN_INVALID);
++ mailbox_changed(m, NT_MAILBOX_INVALID);
+
+ if (rc < 0)
+ return -1;
+@@ -1284,11 +1280,13 @@ static int pop_path_parent(char *buf, size_t buflen)
+ struct MxOps MxPopOps = {
+ .magic = MUTT_POP,
+ .name = "pop",
++ .is_local = false,
+ .ac_find = pop_ac_find,
+ .ac_add = pop_ac_add,
+ .mbox_open = pop_mbox_open,
+ .mbox_open_append = NULL,
+ .mbox_check = pop_mbox_check,
++ .mbox_check_stats = NULL,
+ .mbox_sync = pop_mbox_sync,
+ .mbox_close = pop_mbox_close,
+ .msg_open = pop_msg_open,
+diff --git a/pop/pop_auth.c b/pop/pop_auth.c
+index de3837f67..206d82ec6 100644
+--- a/pop/pop_auth.c
++++ b/pop/pop_auth.c
+@@ -32,10 +32,10 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "pop_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+-#include "conn/conn.h"
+-#include "mutt_account.h"
++#include "conn/lib.h"
++#include "lib.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+ #ifdef USE_SASL
+@@ -407,12 +407,12 @@ static const struct PopAuth pop_authenticators[] = {
+ */
+ int pop_authenticate(struct PopAccountData *adata)
+ {
+- struct ConnAccount *acct = &adata->conn->account;
++ struct ConnAccount *cac = &adata->conn->account;
+ const struct PopAuth *authenticator = NULL;
+ int attempts = 0;
+ int ret = POP_A_UNAVAIL;
+
+- if ((mutt_account_getuser(acct) < 0) || (acct->user[0] == '\0'))
++ if ((mutt_account_getuser(cac) < 0) || (cac->user[0] == '\0'))
+ {
+ return -3;
+ }
+diff --git a/pop/pop_lib.c b/pop/pop_lib.c
+index 00237c9f5..2f922de43 100644
+--- a/pop/pop_lib.c
++++ b/pop/pop_lib.c
+@@ -36,12 +36,12 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include "pop_private.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+-#include "conn/conn.h"
+-#include "mutt.h"
++#include "conn/lib.h"
++#include "init.h"
+ #include "mutt_account.h"
+ #include "mutt_logging.h"
+ #include "mutt_socket.h"
+@@ -51,28 +51,53 @@
+ #endif
+
+ /* These Config Variables are only used in pop/pop_lib.c */
++char *C_PopOauthRefreshCommand; ///< Config: (pop) External command to generate OAUTH refresh token
++char *C_PopPass; ///< Config: (pop) Password of the POP server
+ unsigned char C_PopReconnect; ///< Config: (pop) Reconnect to the server is the connection is lost
++char *C_PopUser; ///< Config: (pop) Username of the POP server
++
++/**
++ * pop_get_field - Get connection login credentials - Implements ConnAccount::get_field()
++ */
++const char *pop_get_field(enum ConnAccountField field)
++{
++ switch (field)
++ {
++ case MUTT_CA_LOGIN:
++ case MUTT_CA_USER:
++ return C_PopUser;
++ case MUTT_CA_PASS:
++ return C_PopPass;
++ case MUTT_CA_OAUTH_CMD:
++ return C_PopOauthRefreshCommand;
++ case MUTT_CA_HOST:
++ default:
++ return NULL;
++ }
++}
+
+ /**
+ * pop_parse_path - Parse a POP mailbox name
+ * @param path Path to parse
+- * @param acct Account to store details
++ * @param cac Account to store details
+ * @retval 0 success
+ * @retval -1 error
+ *
+ * Split a POP path into host, port, username and password
+ */
+-int pop_parse_path(const char *path, struct ConnAccount *acct)
++int pop_parse_path(const char *path, struct ConnAccount *cac)
+ {
+ /* Defaults */
+- acct->flags = 0;
+- acct->type = MUTT_ACCT_TYPE_POP;
+- acct->port = 0;
++ cac->flags = 0;
++ cac->type = MUTT_ACCT_TYPE_POP;
++ cac->port = 0;
++ cac->service = "pop";
++ cac->get_field = pop_get_field;
+
+ struct Url *url = url_parse(path);
+
+ if (!url || ((url->scheme != U_POP) && (url->scheme != U_POPS)) ||
+- !url->host || (mutt_account_fromurl(acct, url) < 0))
++ !url->host || (mutt_account_fromurl(cac, url) < 0))
+ {
+ url_free(&url);
+ mutt_error(_("Invalid POP URL: %s"), path);
+@@ -80,16 +105,16 @@ int pop_parse_path(const char *path, struct ConnAccount *acct)
+ }
+
+ if (url->scheme == U_POPS)
+- acct->flags |= MUTT_ACCT_SSL;
++ cac->flags |= MUTT_ACCT_SSL;
+
+ struct servent *service =
+ getservbyname((url->scheme == U_POP) ? "pop3" : "pop3s", "tcp");
+- if (acct->port == 0)
++ if (cac->port == 0)
+ {
+ if (service)
+- acct->port = ntohs(service->s_port);
++ cac->port = ntohs(service->s_port);
+ else
+- acct->port = (url->scheme == U_POP) ? POP_PORT : POP_SSL_PORT;
++ cac->port = (url->scheme == U_POP) ? POP_PORT : POP_SSL_PORT;
+ }
+
+ url_free(&url);
+@@ -247,6 +272,7 @@ static int pop_capabilities(struct PopAccountData *adata, int mode)
+
+ /**
+ * pop_edata_get - Get the private data for this Email
++ * @param e Email
+ * @retval ptr Private Email data
+ */
+ struct PopEmailData *pop_edata_get(struct Email *e)
+diff --git a/pop/pop_private.h b/pop/pop_private.h
+index 77cf0edbe..2ba41879a 100644
+--- a/pop/pop_private.h
++++ b/pop/pop_private.h
+@@ -26,8 +26,8 @@
+
+ #include <stdbool.h>
+ #include <time.h>
+-#include "conn/conn.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "conn/lib.h"
+
+ struct Email;
+ struct Mailbox;
+@@ -78,7 +78,6 @@ struct PopCache
+ struct PopAccountData
+ {
+ struct Connection *conn;
+- struct ConnAccount conn_account;
+ unsigned int status : 2;
+ bool capabilities : 1;
+ unsigned int use_stls : 2;
+@@ -114,11 +113,16 @@ struct PopEmailData
+ */
+ struct PopAuth
+ {
+- /* do authentication, using named method or any available if method is NULL */
+- enum PopAuthRes (*authenticate)(struct PopAccountData *, const char *);
+- /* name of authentication method supported, NULL means variable. If this
+- * is not null, authenticate may ignore the second parameter. */
+- const char *method;
++ /**
++ * authenticate - Authenticate a POP connection
++ * @param adata Pop Account data
++ * @param method Use this named method, or any available method if NULL
++ * @retval #ImapAuthRes Result, e.g. #IMAP_AUTH_SUCCESS
++ */
++ enum PopAuthRes (*authenticate)(struct PopAccountData *adata, const char *method);
++
++ const char *method; ///< Name of authentication method supported, NULL means variable.
++ ///< If this is not null, authenticate may ignore the second parameter.
+ };
+
+ /* pop_auth.c */
+@@ -146,5 +150,6 @@ int pop_reconnect(struct Mailbox *m);
+ void pop_logout(struct Mailbox *m);
+ struct PopAccountData *pop_adata_get(struct Mailbox *m);
+ struct PopEmailData *pop_edata_get(struct Email *e);
++const char *pop_get_field(enum ConnAccountField field);
+
+ #endif /* MUTT_POP_POP_PRIVATE_H */
+diff --git a/postpone.c b/postpone.c
+index 4e274b5bc..95c2cef05 100644
+--- a/postpone.c
++++ b/postpone.c
+@@ -34,10 +34,11 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "context.h"
+ #include "format_flags.h"
+@@ -48,10 +49,8 @@
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+ #include "mutt_thread.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "protos.h"
+@@ -60,8 +59,9 @@
+ #include "sendlib.h"
+ #include "sort.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+
+ static const struct Mapping PostponeHelp[] = {
+@@ -202,19 +202,20 @@ void mutt_update_num_postponed(void)
+ }
+
+ /**
+- * post_make_entry - Format a menu item for the email list - Implements Menu::menu_make_entry()
++ * post_make_entry - Format a menu item for the email list - Implements Menu::make_entry()
+ */
+ static void post_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+ struct Context *ctx = menu->data;
+
+- mutt_make_string_flags(buf, buflen, menu->indexwin->cols,
++ mutt_make_string_flags(buf, buflen, menu->win_index->state.cols,
+ NONULL(C_IndexFormat), ctx, ctx->mailbox,
+ ctx->mailbox->emails[line], MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+ * select_msg - Create a Menu to select a postponed message
++ * @param ctx Context
+ * @retval ptr Email
+ */
+ static struct Email *select_msg(struct Context *ctx)
+@@ -223,8 +224,41 @@ static struct Email *select_msg(struct Context *ctx)
+ bool done = false;
+ char helpstr[1024];
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "postpone";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ struct Menu *menu = mutt_menu_new(MENU_POSTPONE);
+- menu->menu_make_entry = post_make_entry;
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ menu->make_entry = post_make_entry;
+ menu->max = ctx->mailbox->msg_count;
+ menu->title = _("Postponed Messages");
+ menu->data = ctx;
+@@ -278,6 +312,9 @@ static struct Email *select_msg(struct Context *ctx)
+ C_Sort = orig_sort;
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
++
+ return (r > -1) ? ctx->mailbox->emails[r] : NULL;
+ }
+
+@@ -316,6 +353,18 @@ int mutt_get_postponed(struct Context *ctx, struct Email *hdr,
+ return -1;
+ }
+
++ /* TODO:
++ * mx_mbox_open() for IMAP leaves IMAP_REOPEN_ALLOW set. For the
++ * index this is papered-over because it calls mx_check_mailbox()
++ * every event loop(which resets that flag).
++ *
++ * For a stable-branch fix, I'm doing the same here, to prevent
++ * context changes from occuring behind the scenes and causing
++ * segvs, but probably the flag needs to be reset after downloading
++ * headers in imap_open_mailbox().
++ */
++ mx_mbox_check(ctx_post->mailbox, NULL);
++
+ if (ctx_post->mailbox->msg_count == 0)
+ {
+ PostCount = 0;
+@@ -564,7 +613,16 @@ SecurityFlags mutt_parse_crypt_hdr(const char *p, bool set_empty_signas, Securit
+
+ /* the cryptalg field must not be empty */
+ if (((WithCrypto & APPLICATION_SMIME) != 0) && *smime_cryptalg)
+- mutt_str_replace(&C_SmimeEncryptWith, smime_cryptalg);
++ {
++ struct Buffer errmsg = mutt_buffer_make(0);
++ int rc = cs_subset_str_string_set(NeoMutt->sub, "smime_encrypt_with",
++ smime_cryptalg, &errmsg);
++
++ if ((CSR_RESULT(rc) != CSR_SUCCESS) && !mutt_buffer_is_empty(&errmsg))
++ mutt_error("%s", mutt_b2s(&errmsg));
++
++ mutt_buffer_dealloc(&errmsg);
++ }
+
+ /* Set {Smime,Pgp}SignAs, if desired. */
+
+diff --git a/progress.c b/progress.c
+index c05ca957f..5ea1c0e8a 100644
+--- a/progress.c
++++ b/progress.c
+@@ -31,14 +31,11 @@
+ #include <stdarg.h>
+ #include <stdbool.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #include "progress.h"
+-#include "color.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "mutt_curses.h"
+ #include "mutt_logging.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "options.h"
+
+@@ -61,7 +58,7 @@ static void message_bar(int percent, const char *fmt, ...)
+
+ va_list ap;
+ char buf[256], buf2[256];
+- int w = (percent * MuttMessageWindow->cols) / 100;
++ int w = (percent * MuttMessageWindow->state.cols) / 100;
+ size_t l;
+
+ va_start(ap, fmt);
+@@ -69,7 +66,7 @@ static void message_bar(int percent, const char *fmt, ...)
+ l = mutt_strwidth(buf);
+ va_end(ap);
+
+- mutt_simple_format(buf2, sizeof(buf2), 0, MuttMessageWindow->cols - 2,
++ mutt_simple_format(buf2, sizeof(buf2), 0, MuttMessageWindow->state.cols - 2,
+ JUSTIFY_LEFT, 0, buf, sizeof(buf), false);
+
+ mutt_window_move(MuttMessageWindow, 0, 0);
+diff --git a/protos.h b/protos.h
+index 4f657b662..c24898ab3 100644
+--- a/protos.h
++++ b/protos.h
+@@ -31,7 +31,7 @@
+ #include <stdio.h>
+ #include "mutt.h"
+ #include "keymap.h"
+-#include "ncrypt/ncrypt.h"
++#include "ncrypt/lib.h"
+
+ struct Buffer;
+ struct Context;
+diff --git a/query.c b/query.c
+index 11db4fee8..fd71ec5a4 100644
+--- a/query.c
++++ b/query.c
+@@ -33,20 +33,18 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/types.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "query.h"
+ #include "alias.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "keymap.h"
+ #include "mutt_logging.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+ #include "send.h"
+@@ -167,7 +165,7 @@ static struct Query *run_query(char *s, int quiet)
+
+ mutt_buffer_file_expand_fmt_quote(cmd, C_QueryCommand, s);
+
+- pid = mutt_create_filter(mutt_b2s(cmd), NULL, &fp, NULL);
++ pid = filter_create(mutt_b2s(cmd), NULL, &fp, NULL);
+ if (pid < 0)
+ {
+ mutt_debug(LL_DEBUG1, "unable to fork command: %s\n", mutt_b2s(cmd));
+@@ -211,7 +209,7 @@ static struct Query *run_query(char *s, int quiet)
+ }
+ FREE(&buf);
+ mutt_file_fclose(&fp);
+- if (mutt_wait_filter(pid))
++ if (filter_wait(pid))
+ {
+ mutt_debug(LL_DEBUG1, "Error: %s\n", msg);
+ if (!quiet)
+@@ -228,7 +226,7 @@ static struct Query *run_query(char *s, int quiet)
+ }
+
+ /**
+- * query_search - Search a Address menu item - Implements Menu::menu_search()
++ * query_search - Search a Address menu item - Implements Menu::search()
+ *
+ * Try to match various Address fields.
+ */
+@@ -282,7 +280,7 @@ static const char *query_format_str(char *buf, size_t buflen, size_t col, int co
+ switch (op)
+ {
+ case 'a':
+- mutt_addrlist_write(tmp, sizeof(tmp), &query->addr, true);
++ mutt_addrlist_write(&query->addr, tmp, sizeof(tmp), true);
+ mutt_format_s(buf, buflen, prec, tmp);
+ break;
+ case 'c':
+@@ -309,29 +307,34 @@ static const char *query_format_str(char *buf, size_t buflen, size_t col, int co
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, query_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, query_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+
+ return src;
+ }
+
+ /**
+- * query_make_entry - Format a menu item for the query list - Implements Menu::menu_make_entry()
++ * query_make_entry - Format a menu item for the query list - Implements Menu::make_entry()
+ */
+ static void query_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+ struct QueryEntry *entry = &((struct QueryEntry *) menu->data)[line];
+
+ entry->data->num = line;
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, NONULL(C_QueryFormat),
+- query_format_str, (unsigned long) entry, MUTT_FORMAT_ARROWCURSOR);
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
++ NONULL(C_QueryFormat), query_format_str,
++ (unsigned long) entry, MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+- * query_tag - Tag an entry in the Query Menu - Implements Menu::menu_tag()
++ * query_tag - Tag an entry in the Query Menu - Implements Menu::tag()
+ */
+ static int query_tag(struct Menu *menu, int sel, int act)
+ {
+@@ -359,252 +362,293 @@ static void query_menu(char *buf, size_t buflen, struct Query *results, bool ret
+ if (!results)
+ {
+ /* Prompt for Query */
+- if ((mutt_get_field(_("Query: "), buf, buflen, 0) == 0) && (buf[0] != '\0'))
++ if ((mutt_get_field(_("Query: "), buf, buflen, MUTT_COMP_NO_FLAGS) == 0) &&
++ (buf[0] != '\0'))
+ {
+ results = run_query(buf, 0);
++ if (!results)
++ return;
+ }
+ }
+
+- if (results)
++ snprintf(title, sizeof(title), _("Query '%s'"), buf);
++
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "query";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
++ menu = mutt_menu_new(MENU_QUERY);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
++ menu->make_entry = query_make_entry;
++ menu->search = query_search;
++ menu->tag = query_tag;
++ menu->title = title;
++ char helpstr[1024];
++ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_QUERY, QueryHelp);
++ mutt_menu_push_current(menu);
++
++ /* count the number of results */
++ for (queryp = results; queryp; queryp = queryp->next)
++ menu->max++;
++
++ query_table = mutt_mem_calloc(menu->max, sizeof(struct QueryEntry));
++ menu->data = query_table;
++
++ queryp = results;
++ for (int i = 0; queryp; queryp = queryp->next, i++)
++ query_table[i].data = queryp;
++
++ int done = 0;
++ while (done == 0)
+ {
+- snprintf(title, sizeof(title), _("Query '%s'"), buf);
+-
+- menu = mutt_menu_new(MENU_QUERY);
+- menu->menu_make_entry = query_make_entry;
+- menu->menu_search = query_search;
+- menu->menu_tag = query_tag;
+- menu->title = title;
+- char helpstr[1024];
+- menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_QUERY, QueryHelp);
+- mutt_menu_push_current(menu);
+-
+- /* count the number of results */
+- for (queryp = results; queryp; queryp = queryp->next)
+- menu->max++;
+-
+- query_table = mutt_mem_calloc(menu->max, sizeof(struct QueryEntry));
+- menu->data = query_table;
+-
+- queryp = results;
+- for (int i = 0; queryp; queryp = queryp->next, i++)
+- query_table[i].data = queryp;
+-
+- int done = 0;
+- while (done == 0)
++ const int op = mutt_menu_loop(menu);
++ switch (op)
+ {
+- const int op = mutt_menu_loop(menu);
+- switch (op)
+- {
+- case OP_QUERY_APPEND:
+- case OP_QUERY:
+- if ((mutt_get_field(_("Query: "), buf, buflen, 0) == 0) && (buf[0] != '\0'))
++ case OP_QUERY_APPEND:
++ case OP_QUERY:
++ if ((mutt_get_field(_("Query: "), buf, buflen, MUTT_COMP_NO_FLAGS) == 0) &&
++ (buf[0] != '\0'))
++ {
++ struct Query *newresults = run_query(buf, 0);
++
++ menu->redraw = REDRAW_FULL;
++ if (newresults)
+ {
+- struct Query *newresults = run_query(buf, 0);
++ snprintf(title, sizeof(title), _("Query '%s'"), buf);
+
+- menu->redraw = REDRAW_FULL;
+- if (newresults)
++ if (op == OP_QUERY)
+ {
+- snprintf(title, sizeof(title), _("Query '%s'"), buf);
+-
+- if (op == OP_QUERY)
+- {
+- query_free(&results);
+- results = newresults;
+- FREE(&query_table);
+- }
+- else
+- {
+- /* append */
+- for (queryp = results; queryp->next; queryp = queryp->next)
+- ;
++ query_free(&results);
++ results = newresults;
++ FREE(&query_table);
++ }
++ else
++ {
++ /* append */
++ for (queryp = results; queryp->next; queryp = queryp->next)
++ ;
+
+- queryp->next = newresults;
+- }
++ queryp->next = newresults;
++ }
+
+- menu->current = 0;
+- mutt_menu_pop_current(menu);
+- mutt_menu_free(&menu);
+- menu = mutt_menu_new(MENU_QUERY);
+- menu->menu_make_entry = query_make_entry;
+- menu->menu_search = query_search;
+- menu->menu_tag = query_tag;
+- menu->title = title;
+- menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_QUERY, QueryHelp);
+- mutt_menu_push_current(menu);
+-
+- /* count the number of results */
+- for (queryp = results; queryp; queryp = queryp->next)
+- menu->max++;
+-
+- if (op == OP_QUERY)
+- {
+- menu->data = query_table =
+- mutt_mem_calloc(menu->max, sizeof(struct QueryEntry));
++ menu->current = 0;
++ mutt_menu_pop_current(menu);
++ mutt_menu_free(&menu);
++ menu = mutt_menu_new(MENU_QUERY);
+
+- queryp = results;
+- for (int i = 0; queryp; queryp = queryp->next, i++)
+- query_table[i].data = queryp;
+- }
+- else
+- {
+- bool clear = false;
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
+
+- /* append */
+- mutt_mem_realloc(&query_table, menu->max * sizeof(struct QueryEntry));
++ menu->make_entry = query_make_entry;
++ menu->search = query_search;
++ menu->tag = query_tag;
++ menu->title = title;
++ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_QUERY, QueryHelp);
++ mutt_menu_push_current(menu);
+
+- menu->data = query_table;
++ /* count the number of results */
++ for (queryp = results; queryp; queryp = queryp->next)
++ menu->max++;
+
+- queryp = results;
+- for (int i = 0; queryp; queryp = queryp->next, i++)
+- {
+- /* once we hit new entries, clear/init the tag */
+- if (queryp == newresults)
+- clear = true;
++ if (op == OP_QUERY)
++ {
++ menu->data = query_table =
++ mutt_mem_calloc(menu->max, sizeof(struct QueryEntry));
+
+- query_table[i].data = queryp;
+- if (clear)
+- query_table[i].tagged = false;
+- }
+- }
++ queryp = results;
++ for (int i = 0; queryp; queryp = queryp->next, i++)
++ query_table[i].data = queryp;
+ }
+- }
+- break;
++ else
++ {
++ bool clear = false;
+
+- case OP_CREATE_ALIAS:
+- if (menu->tagprefix)
+- {
+- struct AddressList naddr = TAILQ_HEAD_INITIALIZER(naddr);
++ /* append */
++ mutt_mem_realloc(&query_table, menu->max * sizeof(struct QueryEntry));
+
+- for (int i = 0; i < menu->max; i++)
+- {
+- if (query_table[i].tagged)
++ menu->data = query_table;
++
++ queryp = results;
++ for (int i = 0; queryp; queryp = queryp->next, i++)
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[i].data))
+- {
+- mutt_addrlist_copy(&naddr, &al, false);
+- mutt_addrlist_clear(&al);
+- }
++ /* once we hit new entries, clear/init the tag */
++ if (queryp == newresults)
++ clear = true;
++
++ query_table[i].data = queryp;
++ if (clear)
++ query_table[i].tagged = false;
+ }
+ }
+-
+- mutt_alias_create(NULL, &naddr);
+- mutt_addrlist_clear(&naddr);
+ }
+- else
++ }
++ break;
++
++ case OP_CREATE_ALIAS:
++ if (menu->tagprefix)
++ {
++ struct AddressList naddr = TAILQ_HEAD_INITIALIZER(naddr);
++
++ for (int i = 0; i < menu->max; i++)
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[menu->current].data))
++ if (query_table[i].tagged)
+ {
+- mutt_alias_create(NULL, &al);
+- mutt_addrlist_clear(&al);
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[i].data))
++ {
++ mutt_addrlist_copy(&naddr, &al, false);
++ mutt_addrlist_clear(&al);
++ }
+ }
+ }
+- break;
+
+- case OP_GENERIC_SELECT_ENTRY:
+- if (retbuf)
++ mutt_alias_create(NULL, &naddr);
++ mutt_addrlist_clear(&naddr);
++ }
++ else
++ {
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[menu->current].data))
+ {
+- done = 2;
+- break;
++ mutt_alias_create(NULL, &al);
++ mutt_addrlist_clear(&al);
+ }
+- /* fallthrough */
+- case OP_MAIL:
++ }
++ break;
++
++ case OP_GENERIC_SELECT_ENTRY:
++ if (retbuf)
+ {
+- struct Email *e = email_new();
+- e->env = mutt_env_new();
+- if (!menu->tagprefix)
++ done = 2;
++ break;
++ }
++ /* fallthrough */
++ case OP_MAIL:
++ {
++ struct Email *e = email_new();
++ e->env = mutt_env_new();
++ if (!menu->tagprefix)
++ {
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[menu->current].data))
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[menu->current].data))
+- {
+- mutt_addrlist_copy(&e->env->to, &al, false);
+- mutt_addrlist_clear(&al);
+- }
++ mutt_addrlist_copy(&e->env->to, &al, false);
++ mutt_addrlist_clear(&al);
+ }
+- else
++ }
++ else
++ {
++ for (int i = 0; i < menu->max; i++)
+ {
+- for (int i = 0; i < menu->max; i++)
++ if (query_table[i].tagged)
+ {
+- if (query_table[i].tagged)
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[i].data))
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[i].data))
+- {
+- mutt_addrlist_copy(&e->env->to, &al, false);
+- mutt_addrlist_clear(&al);
+- }
++ mutt_addrlist_copy(&e->env->to, &al, false);
++ mutt_addrlist_clear(&al);
+ }
+ }
+ }
+- ci_send_message(SEND_NO_FLAGS, e, NULL, Context, NULL);
+- menu->redraw = REDRAW_FULL;
+- break;
+ }
+-
+- case OP_EXIT:
+- done = 1;
+- break;
++ ci_send_message(SEND_NO_FLAGS, e, NULL, Context, NULL);
++ menu->redraw = REDRAW_FULL;
++ break;
+ }
++
++ case OP_EXIT:
++ done = 1;
++ break;
+ }
++ }
+
+- /* if we need to return the selected entries */
+- if (retbuf && (done == 2))
+- {
+- bool tagged = false;
+- size_t curpos = 0;
++ /* if we need to return the selected entries */
++ if (retbuf && (done == 2))
++ {
++ bool tagged = false;
++ size_t curpos = 0;
+
+- memset(buf, 0, buflen);
++ memset(buf, 0, buflen);
+
+- /* check for tagged entries */
+- for (int i = 0; i < menu->max; i++)
++ /* check for tagged entries */
++ for (int i = 0; i < menu->max; i++)
++ {
++ if (query_table[i].tagged)
+ {
+- if (query_table[i].tagged)
++ if (curpos == 0)
+ {
+- if (curpos == 0)
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[i].data))
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[i].data))
+- {
+- mutt_addrlist_to_local(&al);
+- tagged = true;
+- mutt_addrlist_write(buf, buflen, &al, false);
+- curpos = mutt_str_strlen(buf);
+- mutt_addrlist_clear(&al);
+- }
++ mutt_addrlist_to_local(&al);
++ tagged = true;
++ mutt_addrlist_write(&al, buf, buflen, false);
++ curpos = mutt_str_strlen(buf);
++ mutt_addrlist_clear(&al);
+ }
+- else if (curpos + 2 < buflen)
++ }
++ else if (curpos + 2 < buflen)
++ {
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[i].data))
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[i].data))
+- {
+- mutt_addrlist_to_local(&al);
+- strcat(buf, ", ");
+- mutt_addrlist_write(buf + curpos + 1, buflen - curpos - 1, &al, false);
+- curpos = mutt_str_strlen(buf);
+- mutt_addrlist_clear(&al);
+- }
++ mutt_addrlist_to_local(&al);
++ strcat(buf, ", ");
++ mutt_addrlist_write(&al, buf + curpos + 1, buflen - curpos - 1, false);
++ curpos = mutt_str_strlen(buf);
++ mutt_addrlist_clear(&al);
+ }
+ }
+ }
+- /* then enter current message */
+- if (!tagged)
++ }
++ /* then enter current message */
++ if (!tagged)
++ {
++ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
++ if (result_to_addr(&al, query_table[menu->current].data))
+ {
+- struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- if (result_to_addr(&al, query_table[menu->current].data))
+- {
+- mutt_addrlist_to_local(&al);
+- mutt_addrlist_write(buf, buflen, &al, false);
+- mutt_addrlist_clear(&al);
+- }
++ mutt_addrlist_to_local(&al);
++ mutt_addrlist_write(&al, buf, buflen, false);
++ mutt_addrlist_clear(&al);
+ }
+ }
+-
+- query_free(&results);
+- FREE(&query_table);
+- mutt_menu_pop_current(menu);
+- mutt_menu_free(&menu);
+ }
++
++ query_free(&results);
++ FREE(&query_table);
++ mutt_menu_pop_current(menu);
++ mutt_menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
+ }
+
+ /**
+@@ -632,7 +676,7 @@ int mutt_query_complete(char *buf, size_t buflen)
+ {
+ mutt_addrlist_to_local(&al);
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, buflen, &al, false);
++ mutt_addrlist_write(&al, buf, buflen, false);
+ mutt_addrlist_clear(&al);
+ query_free(&results);
+ mutt_clear_error();
+diff --git a/recvattach.c b/recvattach.c
+index 4f0eb5752..2c78ed792 100644
+--- a/recvattach.c
++++ b/recvattach.c
+@@ -33,36 +33,35 @@
+ #include <stdio.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "recvattach.h"
+ #include "commands.h"
+ #include "context.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hdrline.h"
+ #include "hook.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mailcap.h"
+ #include "mutt_attach.h"
+ #include "mutt_menu.h"
+ #include "mutt_parse.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "opcodes.h"
+ #include "options.h"
+ #include "recvcmd.h"
+ #include "send.h"
+ #include "sendlib.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+ #endif
+@@ -421,28 +420,32 @@ const char *attach_format_str(char *buf, size_t buflen, size_t col, int cols,
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, attach_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, attach_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+ return src;
+ }
+
+ /**
+- * attach_make_entry - Format a menu item for the attachment list - Implements Menu::menu_make_entry()
++ * attach_make_entry - Format a menu item for the attachment list - Implements Menu::make_entry()
+ */
+ static void attach_make_entry(char *buf, size_t buflen, struct Menu *menu, int line)
+ {
+ struct AttachCtx *actx = menu->data;
+
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols, NONULL(C_AttachFormat),
+- attach_format_str, (unsigned long) (actx->idx[actx->v2r[line]]),
+- MUTT_FORMAT_ARROWCURSOR);
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
++ NONULL(C_AttachFormat), attach_format_str,
++ (unsigned long) (actx->idx[actx->v2r[line]]), MUTT_FORMAT_ARROWCURSOR);
+ }
+
+ /**
+- * attach_tag - Tag an attachment - Implements Menu::menu_tag()
++ * attach_tag - Tag an attachment - Implements Menu::tag()
+ */
+ int attach_tag(struct Menu *menu, int sel, int act)
+ {
+@@ -895,10 +898,10 @@ void mutt_pipe_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
+ if (!filter && !C_AttachSplit)
+ {
+ mutt_endwin();
+- pid_t pid = mutt_create_filter(buf, &state.fp_out, NULL, NULL);
++ pid_t pid = filter_create(buf, &state.fp_out, NULL, NULL);
+ pipe_attachment_list(buf, actx, fp, tag, top, filter, &state);
+ mutt_file_fclose(&state.fp_out);
+- if ((mutt_wait_filter(pid) != 0) || C_WaitKey)
++ if ((filter_wait(pid) != 0) || C_WaitKey)
+ mutt_any_key_to_continue(NULL);
+ }
+ else
+@@ -1050,10 +1053,10 @@ void mutt_print_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag, stru
+ if (!can_print(actx, top, tag))
+ return;
+ mutt_endwin();
+- pid_t pid = mutt_create_filter(NONULL(C_PrintCommand), &state.fp_out, NULL, NULL);
++ pid_t pid = filter_create(NONULL(C_PrintCommand), &state.fp_out, NULL, NULL);
+ print_attachment_list(actx, fp, tag, top, &state);
+ mutt_file_fclose(&state.fp_out);
+- if ((mutt_wait_filter(pid) != 0) || C_WaitKey)
++ if ((filter_wait(pid) != 0) || C_WaitKey)
+ mutt_any_key_to_continue(NULL);
+ }
+ }
+@@ -1147,12 +1150,12 @@ int mutt_attach_display_loop(struct Menu *menu, int op, struct Email *e,
+ switch (op)
+ {
+ case OP_DISPLAY_HEADERS:
+- bool_str_toggle(Config, "weed", NULL);
++ bool_str_toggle(NeoMutt->sub, "weed", NULL);
+ /* fallthrough */
+
+ case OP_VIEW_ATTACH:
+ op = mutt_view_attachment(CUR_ATTACH->fp, CUR_ATTACH->content,
+- MUTT_VA_REGULAR, e, actx, menu->indexwin);
++ MUTT_VA_REGULAR, e, actx, menu->win_index);
+ break;
+
+ case OP_NEXT_ENTRY:
+@@ -1421,10 +1424,43 @@ void mutt_view_attachments(struct Email *e)
+ if (!msg)
+ return;
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "attach";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ dialog_push(dlg);
++
+ struct Menu *menu = mutt_menu_new(MENU_ATTACH);
++
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->title = _("Attachments");
+- menu->menu_make_entry = attach_make_entry;
+- menu->menu_tag = attach_tag;
++ menu->make_entry = attach_make_entry;
++ menu->tag = attach_tag;
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_ATTACH, AttachHelp);
+ mutt_menu_push_current(menu);
+
+@@ -1443,13 +1479,13 @@ void mutt_view_attachments(struct Email *e)
+ {
+ case OP_ATTACH_VIEW_MAILCAP:
+ mutt_view_attachment(CUR_ATTACH->fp, CUR_ATTACH->content,
+- MUTT_VA_MAILCAP, e, actx, menu->indexwin);
++ MUTT_VA_MAILCAP, e, actx, menu->win_index);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+ case OP_ATTACH_VIEW_TEXT:
+ mutt_view_attachment(CUR_ATTACH->fp, CUR_ATTACH->content,
+- MUTT_VA_AS_TEXT, e, actx, menu->indexwin);
++ MUTT_VA_AS_TEXT, e, actx, menu->win_index);
+ menu->redraw = REDRAW_FULL;
+ break;
+
+@@ -1705,6 +1741,8 @@ void mutt_view_attachments(struct Email *e)
+
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ mutt_window_free(&dlg);
+ return;
+ }
+
+diff --git a/recvcmd.c b/recvcmd.c
+index 9b05e7b73..5278a7a39 100644
+--- a/recvcmd.c
++++ b/recvcmd.c
+@@ -31,22 +31,22 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "recvcmd.h"
+ #include "alias.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hdrline.h"
++#include "init.h"
+ #include "mutt_body.h"
+ #include "mutt_logging.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "options.h"
+ #include "protos.h"
+@@ -235,16 +235,17 @@ void mutt_attach_bounce(struct Mailbox *m, FILE *fp, struct AttachCtx *actx, str
+ }
+
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &al, true);
++ mutt_addrlist_write(&al, buf, sizeof(buf), true);
+
+ #define EXTRA_SPACE (15 + 7 + 2)
+ /* See commands.c. */
+ snprintf(prompt, sizeof(prompt) - 4,
+ ngettext("Bounce message to %s?", "Bounce messages to %s?", p), buf);
+
+- if (mutt_strwidth(prompt) > MuttMessageWindow->cols - EXTRA_SPACE)
++ if (mutt_strwidth(prompt) > MuttMessageWindow->state.cols - EXTRA_SPACE)
+ {
+- mutt_simple_format(prompt, sizeof(prompt) - 4, 0, MuttMessageWindow->cols - EXTRA_SPACE,
++ mutt_simple_format(prompt, sizeof(prompt) - 4, 0,
++ MuttMessageWindow->state.cols - EXTRA_SPACE,
+ JUSTIFY_LEFT, 0, prompt, sizeof(prompt), false);
+ mutt_str_strcat(prompt, sizeof(prompt), "...?");
+ }
+diff --git a/remailer.c b/remailer.c
+index 70314b524..0d77d9b3d 100644
+--- a/remailer.c
++++ b/remailer.c
+@@ -33,18 +33,17 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
++#include "config/lib.h"
+ #include "email/lib.h"
++#include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+-#include "color.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
++#include "globals.h"
+ #include "keymap.h"
+-#include "mutt_curses.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+ #include "options.h"
+@@ -60,8 +59,8 @@ char *C_MixEntryFormat; ///< Config: (mixmaster) printf-like format string for t
+ char *C_Mixmaster; ///< Config: (mixmaster) External command to route a mixmaster message
+
+ #define MIX_HOFFSET 2
+-#define MIX_VOFFSET (win->rows - 4)
+-#define MIX_MAXROW (win->rows - 1)
++#define MIX_VOFFSET (win->state.rows - 4)
++#define MIX_MAXROW (win->state.rows - 1)
+
+ /**
+ * struct Coord - Screen coordinates
+@@ -193,8 +192,7 @@ static struct Remailer **mix_type2_list(size_t *l)
+ struct Buffer *cmd = mutt_buffer_pool_get();
+ mutt_buffer_printf(cmd, "%s -T", C_Mixmaster);
+
+- pid_t mm_pid =
+- mutt_create_filter_fd(mutt_b2s(cmd), NULL, &fp, NULL, fd_null, -1, fd_null);
++ pid_t mm_pid = filter_create_fd(mutt_b2s(cmd), NULL, &fp, NULL, fd_null, -1, fd_null);
+ if (mm_pid == -1)
+ {
+ mutt_buffer_pool_release(&cmd);
+@@ -252,7 +250,7 @@ static struct Remailer **mix_type2_list(size_t *l)
+ *l = used;
+
+ mix_add_entry(&type2_list, NULL, &slots, &used);
+- mutt_wait_filter(mm_pid);
++ filter_wait(mm_pid);
+
+ close(fd_null);
+
+@@ -309,7 +307,7 @@ static void mix_screen_coordinates(struct MuttWindow *win, struct Remailer **typ
+ short oc = c;
+ c += strlen(type2_list[chain->ch[i]]->shortname) + 2;
+
+- if (c >= win->cols)
++ if (c >= win->state.cols)
+ {
+ oc = MIX_HOFFSET;
+ c = MIX_HOFFSET;
+@@ -497,25 +495,29 @@ static const char *mix_format_str(char *buf, size_t buflen, size_t col, int cols
+ }
+
+ if (optional)
++ {
+ mutt_expando_format(buf, buflen, col, cols, if_str, attach_format_str, data,
+ MUTT_FORMAT_NO_FLAGS);
++ }
+ else if (flags & MUTT_FORMAT_OPTIONAL)
++ {
+ mutt_expando_format(buf, buflen, col, cols, else_str, attach_format_str,
+ data, MUTT_FORMAT_NO_FLAGS);
++ }
+ return src;
+ }
+
+ /**
+- * mix_entry - Format a menu item for the mixmaster chain list
++ * mix_make_entry - Format a menu item for the mixmaster chain list - Implements Menu::make_entry()
+ * @param[out] buf Buffer in which to save string
+ * @param[in] buflen Buffer length
+ * @param[in] menu Menu containing aliases
+ * @param[in] num Index into the menu
+ */
+-static void mix_entry(char *buf, size_t buflen, struct Menu *menu, int num)
++static void mix_make_entry(char *buf, size_t buflen, struct Menu *menu, int num)
+ {
+ struct Remailer **type2_list = menu->data;
+- mutt_expando_format(buf, buflen, 0, menu->indexwin->cols,
++ mutt_expando_format(buf, buflen, 0, menu->win_index->state.cols,
+ NONULL(C_MixEntryFormat), mix_format_str,
+ (unsigned long) type2_list[num], MUTT_FORMAT_ARROWCURSOR);
+ }
+@@ -558,6 +560,36 @@ static int mix_chain_add(struct MixChain *chain, const char *s, struct Remailer
+ return 0;
+ }
+
++/**
++ * mutt_dlg_mixmaster_observer - Listen for config changes affecting the Mixmaster menu - Implements ::observer_t
++ */
++static int mutt_dlg_mixmaster_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct EventConfig *ec = nc->event_data;
++ struct MuttWindow *dlg = nc->global_data;
++
++ if (mutt_str_strcmp(ec->name, "status_on_top") != 0)
++ return 0;
++
++ struct MuttWindow *win_first = TAILQ_FIRST(&dlg->children);
++
++ if ((C_StatusOnTop && (win_first->type == WT_INDEX)) ||
++ (!C_StatusOnTop && (win_first->type != WT_INDEX)))
++ {
++ // Swap the Index and the IndexBar Windows
++ TAILQ_REMOVE(&dlg->children, win_first, entries);
++ TAILQ_INSERT_TAIL(&dlg->children, win_first, entries);
++ }
++
++ mutt_window_reflow(dlg);
++ return 0;
++}
++
+ /**
+ * mix_make_chain - Create a Mixmaster chain
+ * @param win Window
+@@ -605,10 +637,43 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+
+ mix_screen_coordinates(win, type2_list, &coords, chain, 0);
+
++ struct MuttWindow *dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++#ifdef USE_DEBUG_WINDOW
++ dlg->name = "remailer";
++#endif
++ dlg->type = WT_DIALOG;
++ struct MuttWindow *index =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ index->type = WT_INDEX;
++ struct MuttWindow *ibar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++ ibar->type = WT_INDEX_BAR;
++
++ if (C_StatusOnTop)
++ {
++ mutt_window_add_child(dlg, ibar);
++ mutt_window_add_child(dlg, index);
++ }
++ else
++ {
++ mutt_window_add_child(dlg, index);
++ mutt_window_add_child(dlg, ibar);
++ }
++
++ notify_observer_add(NeoMutt->notify, mutt_dlg_mixmaster_observer, dlg);
++ dialog_push(dlg);
++
+ menu = mutt_menu_new(MENU_MIX);
++ menu->pagelen = index->state.rows;
++ menu->win_index = index;
++ menu->win_ibar = ibar;
++
+ menu->max = ttll;
+- menu->menu_make_entry = mix_entry;
+- menu->menu_tag = NULL;
++ menu->make_entry = mix_make_entry;
++ menu->tag = NULL;
+ menu->title = _("Select a remailer chain");
+ menu->data = type2_list;
+ menu->help = mutt_compile_help(helpstr, sizeof(helpstr), MENU_MIX, RemailerHelp);
+@@ -625,14 +690,14 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+
+ if (c_redraw)
+ {
+- mix_redraw_head(menu->indexwin, chain);
+- mix_redraw_chain(menu->indexwin, type2_list, coords, chain, c_cur);
++ mix_redraw_head(menu->win_index, chain);
++ mix_redraw_chain(menu->win_index, type2_list, coords, chain, c_cur);
+ c_redraw = false;
+ }
+ else if (c_cur != c_old)
+ {
+- mix_redraw_ce(menu->indexwin, type2_list, coords, chain, c_old, false);
+- mix_redraw_ce(menu->indexwin, type2_list, coords, chain, c_cur, true);
++ mix_redraw_ce(menu->win_index, type2_list, coords, chain, c_old, false);
++ mix_redraw_ce(menu->win_index, type2_list, coords, chain, c_cur, true);
+ }
+
+ c_old = c_cur;
+@@ -643,9 +708,9 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+ case OP_REDRAW:
+ {
+ menu_redraw_status(menu);
+- mix_redraw_head(menu->indexwin, chain);
+- mix_screen_coordinates(menu->indexwin, type2_list, &coords, chain, 0);
+- mix_redraw_chain(menu->indexwin, type2_list, coords, chain, c_cur);
++ mix_redraw_head(menu->win_index, chain);
++ mix_screen_coordinates(menu->win_index, type2_list, &coords, chain, 0);
++ mix_redraw_chain(menu->win_index, type2_list, coords, chain, c_cur);
+ menu->pagelen = MIX_VOFFSET - 1;
+ break;
+ }
+@@ -663,7 +728,7 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+ {
+ chain->cl++;
+ chain->ch[0] = menu->current;
+- mix_screen_coordinates(menu->indexwin, type2_list, &coords, chain, c_cur);
++ mix_screen_coordinates(menu->win_index, type2_list, &coords, chain, c_cur);
+ c_redraw = true;
+ }
+
+@@ -697,7 +762,7 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+ chain->ch[i] = chain->ch[i - 1];
+
+ chain->ch[c_cur] = menu->current;
+- mix_screen_coordinates(menu->indexwin, type2_list, &coords, chain, c_cur);
++ mix_screen_coordinates(menu->win_index, type2_list, &coords, chain, c_cur);
+ c_redraw = true;
+ }
+ else
+@@ -721,7 +786,7 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+ if ((c_cur == chain->cl) && c_cur)
+ c_cur--;
+
+- mix_screen_coordinates(menu->indexwin, type2_list, &coords, chain, c_cur);
++ mix_screen_coordinates(menu->win_index, type2_list, &coords, chain, c_cur);
+ c_redraw = true;
+ }
+ else
+@@ -755,6 +820,9 @@ void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols
+
+ mutt_menu_pop_current(menu);
+ mutt_menu_free(&menu);
++ dialog_pop();
++ notify_observer_remove(NeoMutt->notify, mutt_dlg_mixmaster_observer, dlg);
++ mutt_window_free(&dlg);
+
+ /* construct the remailer list */
+
+diff --git a/resize.c b/resize.c
+index 8e6118f1f..1f8208d89 100644
+--- a/resize.c
++++ b/resize.c
+@@ -28,11 +28,11 @@
+ */
+
+ #include "config.h"
++#include <stddef.h>
+ #include <fcntl.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
+-#include "mutt_curses.h"
+-#include "mutt_window.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #ifdef USE_SLANG_CURSES
+ #include <stdbool.h>
+ #endif
+@@ -91,7 +91,8 @@ void mutt_resize_screen(void)
+ SLsmg_init_smg();
+ stdscr = newwin(0, 0, 0, 0);
+ keypad(stdscr, true);
+- mutt_window_reflow();
++ mutt_window_set_root(w.ws_row, w.ws_col);
++ mutt_window_reflow(NULL);
+ }
+ #else
+ /**
+@@ -119,6 +120,7 @@ void mutt_resize_screen(void)
+ }
+
+ resizeterm(screenrows, screencols);
+- mutt_window_reflow();
++ mutt_window_set_root(w.ws_row, w.ws_col);
++ mutt_window_reflow(NULL);
+ }
+ #endif
+diff --git a/rfc3676.c b/rfc3676.c
+index 1b4e2d6a6..0d91cd969 100644
+--- a/rfc3676.c
++++ b/rfc3676.c
+@@ -34,12 +34,11 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
++#include "gui/lib.h"
+ #include "rfc3676.h"
+-#include "curs_lib.h"
+ #include "globals.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "state.h"
+
+@@ -444,12 +443,8 @@ static void rfc3676_space_stuff(struct Email *e, bool unstuff)
+ }
+
+ mutt_file_copy_stream(fp_in, fp_out);
+- mutt_file_fclose(&fp_in);
+- mutt_file_fclose(&fp_out);
+ mutt_file_set_mtime(mutt_b2s(tmpfile), e->content->filename);
+ unlink(mutt_b2s(tmpfile));
+- mutt_buffer_pool_release(&tmpfile);
+- return;
+
+ bail:
+ mutt_file_fclose(&fp_in);
+diff --git a/score.c b/score.c
+index 452fc69c5..cb2278ae2 100644
+--- a/score.c
++++ b/score.c
+@@ -29,13 +29,14 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+ #include "mutt.h"
+ #include "score.h"
+ #include "globals.h"
++#include "init.h"
+ #include "keymap.h"
+ #include "mutt_commands.h"
+ #include "mutt_menu.h"
+@@ -96,7 +97,7 @@ void mutt_check_rescore(struct Mailbox *m)
+ }
+
+ /**
+- * mutt_parse_score - Parse the 'score' command - Implements ::command_t
++ * mutt_parse_score - Parse the 'score' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_score(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+@@ -200,7 +201,7 @@ void mutt_score_message(struct Mailbox *m, struct Email *e, bool upd_mbox)
+ }
+
+ /**
+- * mutt_parse_unscore - Parse the 'unscore' command - Implements ::command_t
++ * mutt_parse_unscore - Parse the 'unscore' command - Implements Command::parse()
+ */
+ enum CommandResult mutt_parse_unscore(struct Buffer *buf, struct Buffer *s,
+ unsigned long data, struct Buffer *err)
+diff --git a/send.c b/send.c
+index f824cd5a9..76572a531 100644
+--- a/send.c
++++ b/send.c
+@@ -36,31 +36,30 @@
+ #include <sys/stat.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "send.h"
+ #include "alias.h"
+ #include "compose.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+ #include "edit.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "handler.h"
+ #include "hdrline.h"
+ #include "hook.h"
++#include "init.h"
+ #include "mutt_attach.h"
+ #include "mutt_body.h"
+ #include "mutt_header.h"
+ #include "mutt_logging.h"
+ #include "mutt_parse.h"
+ #include "muttlib.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "pattern.h"
+ #include "protos.h"
+@@ -69,21 +68,22 @@
+ #include "sendlib.h"
+ #include "smtp.h"
+ #include "sort.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_NNTP
+ #include "mx.h"
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef MIXMASTER
+ #include "remailer.h"
+ #endif
+ #ifdef USE_NOTMUCH
+-#include "notmuch/mutt_notmuch.h"
++#include "notmuch/lib.h"
+ #endif
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in send.c */
+@@ -149,7 +149,7 @@ static void append_signature(FILE *fp)
+ mutt_file_copy_stream(fp_tmp, fp);
+ mutt_file_fclose(&fp_tmp);
+ if (pid != -1)
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ }
+ }
+
+@@ -215,7 +215,7 @@ int mutt_edit_address(struct AddressList *al, const char *field, bool expand_ali
+ {
+ buf[0] = '\0';
+ mutt_addrlist_to_local(al);
+- mutt_addrlist_write(buf, sizeof(buf), al, false);
++ mutt_addrlist_write(al, buf, sizeof(buf), false);
+ if (mutt_get_field(field, buf, sizeof(buf), MUTT_ALIAS) != 0)
+ return -1;
+ mutt_addrlist_clear(al);
+@@ -250,7 +250,7 @@ static int edit_envelope(struct Envelope *en, SendFlags flags)
+ mutt_str_strfcpy(buf, en->newsgroups, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (mutt_get_field("Newsgroups: ", buf, sizeof(buf), 0) != 0)
++ if (mutt_get_field("Newsgroups: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0)
+ return -1;
+ FREE(&en->newsgroups);
+ en->newsgroups = mutt_str_strdup(buf);
+@@ -259,7 +259,8 @@ static int edit_envelope(struct Envelope *en, SendFlags flags)
+ mutt_str_strfcpy(buf, en->followup_to, sizeof(buf));
+ else
+ buf[0] = '\0';
+- if (C_AskFollowUp && (mutt_get_field("Followup-To: ", buf, sizeof(buf), 0) != 0))
++ if (C_AskFollowUp &&
++ (mutt_get_field("Followup-To: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0))
+ {
+ return -1;
+ }
+@@ -271,7 +272,7 @@ static int edit_envelope(struct Envelope *en, SendFlags flags)
+ else
+ buf[0] = '\0';
+ if (C_XCommentTo && C_AskXCommentTo &&
+- (mutt_get_field("X-Comment-To: ", buf, sizeof(buf), 0) != 0))
++ (mutt_get_field("X-Comment-To: ", buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0))
+ {
+ return -1;
+ }
+@@ -317,7 +318,7 @@ static int edit_envelope(struct Envelope *en, SendFlags flags)
+ }
+ }
+
+- if ((mutt_get_field(_("Subject: "), buf, sizeof(buf), 0) != 0) ||
++ if ((mutt_get_field(_("Subject: "), buf, sizeof(buf), MUTT_COMP_NO_FLAGS) != 0) ||
+ (!buf[0] &&
+ (query_quadoption(C_AbortNosubject, _("No subject, abort?")) != MUTT_NO)))
+ {
+@@ -771,8 +772,7 @@ static int default_to(struct AddressList *to, struct Envelope *env, SendFlags fl
+ reply_to && TAILQ_NEXT(TAILQ_FIRST(&env->reply_to), entries);
+ if ((from_is_reply_to && !multiple_reply_to && !reply_to->personal) ||
+ (C_IgnoreListReplyTo && mutt_is_mail_list(reply_to) &&
+- (mutt_addrlist_search(reply_to, &env->to) ||
+- mutt_addrlist_search(reply_to, &env->cc))))
++ (mutt_addrlist_search(&env->to, reply_to) || mutt_addrlist_search(&env->cc, reply_to))))
+ {
+ /* If the Reply-To: address is a mailing list, assume that it was
+ * put there by the mailing list, and use the From: address
+@@ -1654,7 +1654,19 @@ static int save_fcc(struct Email *e, struct Buffer *fcc, struct Body *clear_cont
+ }
+
+ /* check to see if the user wants copies of all attachments */
++ bool save_atts = true;
+ if (e->content->type == TYPE_MULTIPART)
++ {
++ /* In batch mode, save attachments if the quadoption is yes or ask-yes */
++ if (flags & SEND_BATCH)
++ {
++ if ((C_FccAttach == MUTT_NO) || (C_FccAttach == MUTT_ASKNO))
++ save_atts = false;
++ }
++ else if (query_quadoption(C_FccAttach, _("Save attachments in Fcc?")) != MUTT_YES)
++ save_atts = false;
++ }
++ if (!save_atts)
+ {
+ if ((WithCrypto != 0) && (e->security & (SEC_ENCRYPT | SEC_SIGN | SEC_AUTOCRYPT)) &&
+ ((mutt_str_strcmp(e->content->subtype, "encrypted") == 0) ||
+@@ -1811,6 +1823,7 @@ static int postpone_message(struct Email *e_post, struct Email *e_cur,
+ {
+ e_post->content = mutt_remove_multipart(e_post->content);
+ decode_descriptions(e_post->content);
++ mutt_error(_("Error encrypting message. Check your crypt settings."));
+ return -1;
+ }
+ encrypt_as = AutocryptDefaultKey;
+@@ -1826,6 +1839,7 @@ static int postpone_message(struct Email *e_post, struct Email *e_cur,
+ FREE(&pgpkeylist);
+ e_post->content = mutt_remove_multipart(e_post->content);
+ decode_descriptions(e_post->content);
++ mutt_error(_("Error encrypting message. Check your crypt settings."));
+ return -1;
+ }
+
+diff --git a/sendlib.c b/sendlib.c
+index e8265c9c0..38420689c 100644
+--- a/sendlib.c
++++ b/sendlib.c
+@@ -42,16 +42,15 @@
+ #include <sys/wait.h>
+ #include <time.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "mutt.h"
+ #include "sendlib.h"
+ #include "context.h"
+ #include "copy.h"
+-#include "curs_lib.h"
+-#include "filter.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "handler.h"
+@@ -59,14 +58,14 @@
+ #include "mutt_parse.h"
+ #include "muttlib.h"
+ #include "mx.h"
+-#include "ncrypt/ncrypt.h"
+ #include "options.h"
+ #include "pager.h"
+ #include "send.h"
+ #include "smtp.h"
+ #include "state.h"
++#include "ncrypt/lib.h"
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+ #ifdef HAVE_SYSEXITS_H
+ #include <sysexits.h>
+@@ -74,7 +73,7 @@
+ #define EX_OK 0
+ #endif
+ #ifdef USE_AUTOCRYPT
+-#include "autocrypt/autocrypt.h"
++#include "autocrypt/lib.h"
+ #endif
+
+ /* These Config Variables are only used in sendlib.c */
+@@ -609,7 +608,7 @@ int mutt_write_mime_body(struct Body *a, FILE *fp)
+ else
+ fc = mutt_ch_fgetconv_open(fp_in, 0, 0, 0);
+
+- mutt_sig_allow_interrupt(1);
++ mutt_sig_allow_interrupt(true);
+ if (a->encoding == ENC_QUOTED_PRINTABLE)
+ encode_quoted(fc, fp, write_as_text_part(a));
+ else if (a->encoding == ENC_BASE64)
+@@ -618,7 +617,7 @@ int mutt_write_mime_body(struct Body *a, FILE *fp)
+ encode_8bit(fc, fp);
+ else
+ mutt_file_copy_stream(fp_in, fp);
+- mutt_sig_allow_interrupt(0);
++ mutt_sig_allow_interrupt(false);
+
+ mutt_ch_fgetconv_close(&fc);
+ mutt_file_fclose(&fp_in);
+@@ -1619,7 +1618,7 @@ static void run_mime_type_query(struct Body *att)
+
+ mutt_buffer_file_expand_fmt_quote(cmd, C_MimeTypeQueryCommand, att->filename);
+
+- pid = mutt_create_filter(mutt_b2s(cmd), NULL, &fp, &fp_err);
++ pid = filter_create(mutt_b2s(cmd), NULL, &fp, &fp_err);
+ if (pid < 0)
+ {
+ mutt_error(_("Error running \"%s\""), mutt_b2s(cmd));
+@@ -1638,7 +1637,7 @@ static void run_mime_type_query(struct Body *att)
+
+ mutt_file_fclose(&fp);
+ mutt_file_fclose(&fp_err);
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+ }
+
+ /**
+@@ -1784,7 +1783,7 @@ struct Body *mutt_remove_multipart(struct Body *b)
+ }
+
+ /**
+- * mutt_write_addrlist - wrapper around mutt_write_address()
++ * mutt_write_addrlist - Wrapper for mutt_write_address()
+ * @param al Address list
+ * @param fp File to write to
+ * @param linelen Line length to use
+@@ -1922,22 +1921,26 @@ static int print_val(FILE *fp, const char *pfx, const char *value,
+ * @param fp File to write to
+ * @param tag Header key, e.g. "From"
+ * @param value Header value
++ * @param vlen Length of the header value string
+ * @param pfx Prefix for header
+ * @param wraplen Column to wrap at
+ * @param chflags Flags, see #CopyHeaderFlags
+ * @retval 0 Success
+ * @retval -1 Failure
+ */
+-static int fold_one_header(FILE *fp, const char *tag, const char *value,
++static int fold_one_header(FILE *fp, const char *tag, const char *value, size_t vlen,
+ const char *pfx, int wraplen, CopyHeaderFlags chflags)
+ {
++ if (!value || !*value || !vlen)
++ return 0;
++
+ const char *p = value;
+ char buf[8192] = { 0 };
+ int first = 1, col = 0, l = 0;
+ const bool display = (chflags & CH_DISPLAY);
+
+- mutt_debug(LL_DEBUG5, "pfx=[%s], tag=[%s], flags=%d value=[%s]\n", pfx, tag,
+- chflags, NONULL(value));
++ mutt_debug(LL_DEBUG5, "pfx=[%s], tag=[%s], flags=%d value=[%.*s]\n", pfx, tag,
++ chflags, ((value[vlen - 1] == '\n') ? vlen - 1 : vlen), value);
+
+ if (tag && *tag && (fprintf(fp, "%s%s: ", NONULL(pfx), tag) < 0))
+ return -1;
+@@ -1959,7 +1962,8 @@ static int fold_one_header(FILE *fp, const char *tag, const char *value,
+ const int w = mutt_mb_width(buf, col, display);
+ const int enc = mutt_str_startswith(buf, "=?", CASE_MATCH);
+
+- mutt_debug(LL_DEBUG5, "word=[%s], col=%d, w=%d, next=[0x0%x]\n", buf, col, w, *next);
++ mutt_debug(LL_DEBUG5, "word=[%s], col=%d, w=%d, next=[0x0%x]\n",
++ (buf[0] == '\n' ? "\\n" : buf), col, w, *next);
+
+ /* insert a folding \n before the current word's lwsp except for
+ * header name, first word on a line (word longer than wrap width)
+@@ -2003,6 +2007,8 @@ static int fold_one_header(FILE *fp, const char *tag, const char *value,
+ sp++;
+ if (sp[0] == '\n')
+ {
++ if (sp[1] == '\0')
++ break;
+ next = sp;
+ col = 0;
+ }
+@@ -2072,53 +2078,43 @@ static char *unfold_header(char *s)
+ static int write_one_header(FILE *fp, int pfxw, int max, int wraplen, const char *pfx,
+ const char *start, const char *end, CopyHeaderFlags chflags)
+ {
+- char *tagbuf = NULL, *valbuf = NULL, *t = NULL;
+- bool is_from = ((end - start) > 5) && mutt_str_startswith(start, "from ", CASE_IGNORE);
++ const char *t = strchr(start, ':');
++ if (!t || (t > end))
++ {
++ mutt_debug(LL_DEBUG1, "#2 warning: header not in 'key: value' format!\n");
++ return 0;
++ }
++
++ const size_t vallen = end - start;
++ const bool short_enough = (pfxw + max <= wraplen);
++
++ mutt_debug((short_enough ? LL_DEBUG2 : LL_DEBUG5), "buf[%s%.*s] %s, max width = %d %s %d\n",
++ NONULL(pfx), vallen - 1 /* skip newline */, start,
++ (short_enough ? "short enough" : "too long"), max,
++ (short_enough ? "<=" : ">"), wraplen);
++
++ int rc = 0;
++ const char *valbuf = NULL, *tagbuf = NULL;
++ const bool is_from = (vallen > 5) && mutt_str_startswith(start, "from ", CASE_IGNORE);
+
+ /* only pass through folding machinery if necessary for sending,
+ * never wrap From_ headers on sending */
+- if (!(chflags & CH_DISPLAY) && ((pfxw + max <= wraplen) || is_from))
++ if (!(chflags & CH_DISPLAY) && (short_enough || is_from))
+ {
+- valbuf = mutt_str_substr_dup(start, end);
+- mutt_debug(LL_DEBUG5, "buf[%s%s] short enough, max width = %d <= %d\n",
+- NONULL(pfx), valbuf, max, wraplen);
+ if (pfx && *pfx)
+ {
+ if (fputs(pfx, fp) == EOF)
+ {
+- FREE(&valbuf);
+ return -1;
+ }
+ }
+
+- t = strchr(valbuf, ':');
+- if (!t)
+- {
+- mutt_debug(LL_DEBUG1, "#1 warning: header not in 'key: value' format!\n");
+- FREE(&valbuf);
+- return 0;
+- }
+- if (print_val(fp, pfx, valbuf, chflags, mutt_str_strlen(pfx)) < 0)
+- {
+- FREE(&valbuf);
+- return -1;
+- }
+- FREE(&valbuf);
++ valbuf = mutt_str_substr_dup(start, end);
++ rc = print_val(fp, pfx, valbuf, chflags, mutt_str_strlen(pfx));
+ }
+ else
+ {
+- t = strchr(start, ':');
+- if (!t || (t > end))
+- {
+- mutt_debug(LL_DEBUG1, "#2 warning: header not in 'key: value' format!\n");
+- return 0;
+- }
+- if (is_from)
+- {
+- tagbuf = NULL;
+- valbuf = mutt_str_substr_dup(start, end);
+- }
+- else
++ if (!is_from)
+ {
+ tagbuf = mutt_str_substr_dup(start, t);
+ /* skip over the colon separating the header field name and value */
+@@ -2129,21 +2125,15 @@ static int write_one_header(FILE *fp, int pfxw, int max, int wraplen, const char
+ * See tickets 3609 and 3716. */
+ while ((*t == ' ') || (*t == '\t'))
+ t++;
+-
+- valbuf = mutt_str_substr_dup(t, end);
+ }
+- mutt_debug(LL_DEBUG2, "buf[%s%s] too long, max width = %d > %d\n",
+- NONULL(pfx), NONULL(valbuf), max, wraplen);
+- if (fold_one_header(fp, tagbuf, valbuf, pfx, wraplen, chflags) < 0)
+- {
+- FREE(&valbuf);
+- FREE(&tagbuf);
+- return -1;
+- }
+- FREE(&tagbuf);
+- FREE(&valbuf);
++ valbuf = mutt_str_substr_dup(is_from ? start : t, end);
++ rc = fold_one_header(fp, tagbuf, valbuf, end - (is_from ? start : t), pfx,
++ wraplen, chflags);
+ }
+- return 0;
++
++ FREE(&tagbuf);
++ FREE(&valbuf);
++ return rc;
+ }
+
+ /**
+@@ -2183,10 +2173,11 @@ int mutt_write_one_header(FILE *fp, const char *tag, const char *value,
+ else if (wraplen <= 0)
+ wraplen = 78;
+
++ const size_t vlen = mutt_str_strlen(v);
+ if (tag)
+ {
+ /* if header is short enough, simply print it */
+- if (!display && (mutt_strwidth(tag) + 2 + pfxw + mutt_strwidth(v) <= wraplen))
++ if (!display && (mutt_strwidth(tag) + 2 + pfxw + mutt_strnwidth(v, vlen) <= wraplen))
+ {
+ mutt_debug(LL_DEBUG5, "buf[%s%s: %s] is short enough\n", NONULL(pfx), tag, v);
+ if (fprintf(fp, "%s%s: %s\n", NONULL(pfx), tag, v) <= 0)
+@@ -2196,7 +2187,7 @@ int mutt_write_one_header(FILE *fp, const char *tag, const char *value,
+ }
+ else
+ {
+- rc = fold_one_header(fp, tag, v, pfx, wraplen, chflags);
++ rc = fold_one_header(fp, tag, v, vlen, pfx, wraplen, chflags);
+ goto out;
+ }
+ }
+@@ -2344,14 +2335,14 @@ int mutt_rfc822_write_header(FILE *fp, struct Envelope *env,
+ if (!TAILQ_EMPTY(&env->from) && !privacy)
+ {
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &env->from, false);
++ mutt_addrlist_write(&env->from, buf, sizeof(buf), false);
+ fprintf(fp, "From: %s\n", buf);
+ }
+
+ if (!TAILQ_EMPTY(&env->sender) && !privacy)
+ {
+ buf[0] = '\0';
+- mutt_addrlist_write(buf, sizeof(buf), &env->sender, false);
++ mutt_addrlist_write(&env->sender, buf, sizeof(buf), false);
+ fprintf(fp, "Sender: %s\n", buf);
+ }
+
+@@ -2974,8 +2965,10 @@ int mutt_invoke_sendmail(struct AddressList *from, struct AddressList *to,
+ struct stat st;
+
+ if ((stat(childout, &st) == 0) && (st.st_size > 0))
++ {
+ mutt_do_pager(_("Output of the delivery process"), childout,
+ MUTT_PAGER_NO_FLAGS, NULL);
++ }
+ }
+ }
+ }
+@@ -3107,12 +3100,16 @@ static int bounce_message(FILE *fp, struct Email *e, struct AddressList *to,
+ }
+ #ifdef USE_SMTP
+ if (C_SmtpUrl)
++ {
+ rc = mutt_smtp_send(env_from, to, NULL, NULL, mutt_b2s(tempfile),
+ e->content->encoding == ENC_8BIT);
++ }
+ else
+ #endif
++ {
+ rc = mutt_invoke_sendmail(env_from, to, NULL, NULL, mutt_b2s(tempfile),
+ e->content->encoding == ENC_8BIT);
++ }
+ }
+
+ mutt_buffer_pool_release(&tempfile);
+@@ -3159,7 +3156,7 @@ int mutt_bounce_message(FILE *fp, struct Email *e, struct AddressList *to)
+ mutt_addrlist_clear(&from_list);
+ return -1;
+ }
+- mutt_addrlist_write(resent_from, sizeof(resent_from), &from_list, false);
++ mutt_addrlist_write(&from_list, resent_from, sizeof(resent_from), false);
+
+ #ifdef USE_NNTP
+ OptNewsSend = false;
+diff --git a/sidebar.c b/sidebar.c
+index f00de76c8..199fa7df0 100644
+--- a/sidebar.c
++++ b/sidebar.c
+@@ -34,18 +34,15 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "sidebar.h"
+-#include "color.h"
+ #include "context.h"
+-#include "curs_lib.h"
+ #include "format_flags.h"
+ #include "globals.h"
+-#include "mutt_curses.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "opcodes.h"
+
+@@ -59,8 +56,11 @@ char *C_SidebarIndentString; ///< Config: (sidebar) Indent nested folders using
+ bool C_SidebarNewMailOnly; ///< Config: (sidebar) Only show folders with new/flagged mail
+ bool C_SidebarNonEmptyMailboxOnly; ///< Config: (sidebar) Only show folders with a non-zero number of mail
+ bool C_SidebarNextNewWrap; ///< Config: (sidebar) Wrap around when searching for the next mailbox with new mail
++bool C_SidebarOnRight; ///< Config: (sidebar) Display the sidebar on the right
+ bool C_SidebarShortPath; ///< Config: (sidebar) Abbreviate the paths using the #C_Folder variable
+ short C_SidebarSortMethod; ///< Config: (sidebar) Method to sort the sidebar
++bool C_SidebarVisible; ///< Config: (sidebar) Show the sidebar
++short C_SidebarWidth; ///< Config: (sidebar) Width of the sidebar
+
+ /* Previous values for some sidebar config */
+ static short PreviousSort = SORT_ORDER; /* sidebar_sort_method */
+@@ -105,10 +105,13 @@ enum DivType
+ * | \%d | Number of deleted messages
+ * | \%F | Number of Flagged messages in the mailbox
+ * | \%L | Number of messages after limiting
+- * | \%n | N if mailbox has new mail, blank otherwise
++ * | \%n | 'N' if mailbox has new mail, ' ' (space) otherwise
+ * | \%N | Number of unread messages in the mailbox
++ * | \%o | Number of old unread messages in the mailbox
++ * | \%r | Number of read messages in the mailbox
+ * | \%S | Size of mailbox (total number of messages)
+ * | \%t | Number of tagged messages
++ * | \%Z | Number of new unseen messages in the mailbox
+ */
+ static const char *sidebar_format_str(char *buf, size_t buflen, size_t col, int cols,
+ char op, const char *src, const char *prec,
+@@ -195,6 +198,26 @@ static const char *sidebar_format_str(char *buf, size_t buflen, size_t col, int
+ optional = false;
+ break;
+
++ case 'o':
++ if (!optional)
++ {
++ snprintf(fmt, sizeof(fmt), "%%%sd", prec);
++ snprintf(buf, buflen, fmt, m->msg_unread - m->msg_new);
++ }
++ else if ((c && (Context->mailbox->msg_unread - Context->mailbox->msg_new) == 0) || !c)
++ optional = false;
++ break;
++
++ case 'r':
++ if (!optional)
++ {
++ snprintf(fmt, sizeof(fmt), "%%%sd", prec);
++ snprintf(buf, buflen, fmt, m->msg_count - m->msg_unread);
++ }
++ else if ((c && (Context->mailbox->msg_count - Context->mailbox->msg_unread) == 0) || !c)
++ optional = false;
++ break;
++
+ case 'S':
+ if (!optional)
+ {
+@@ -215,6 +238,16 @@ static const char *sidebar_format_str(char *buf, size_t buflen, size_t col, int
+ optional = false;
+ break;
+
++ case 'Z':
++ if (!optional)
++ {
++ snprintf(fmt, sizeof(fmt), "%%%sd", prec);
++ snprintf(buf, buflen, fmt, m->msg_new);
++ }
++ else if ((c && (Context->mailbox->msg_new) == 0) || !c)
++ optional = false;
++ break;
++
+ case '!':
+ if (m->msg_flagged == 0)
+ mutt_format_s(buf, buflen, prec, "");
+@@ -685,6 +718,7 @@ static bool prepare_sidebar(int page_size)
+
+ /**
+ * draw_divider - Draw a line between the sidebar and the rest of neomutt
++ * @param win Window to draw on
+ * @param num_rows Height of the Sidebar
+ * @param num_cols Width of the Sidebar
+ * @retval 0 Empty string
+@@ -697,7 +731,7 @@ static bool prepare_sidebar(int page_size)
+ * If the user hasn't set $sidebar_divider_char we pick a character for them,
+ * respecting the value of $ascii_chars.
+ */
+-static int draw_divider(int num_rows, int num_cols)
++static int draw_divider(struct MuttWindow *win, int num_rows, int num_cols)
+ {
+ if ((num_rows < 1) || (num_cols < 1))
+ return 0;
+@@ -753,7 +787,7 @@ static int draw_divider(int num_rows, int num_cols)
+
+ for (int i = 0; i < num_rows; i++)
+ {
+- mutt_window_move(MuttSidebarWindow, i, col);
++ mutt_window_move(win, i, col);
+
+ switch (altchar)
+ {
+@@ -774,6 +808,7 @@ static int draw_divider(int num_rows, int num_cols)
+
+ /**
+ * fill_empty_space - Wipe the remaining Sidebar space
++ * @param win Window to draw on
+ * @param first_row Window line to start (0-based)
+ * @param num_rows Number of rows to fill
+ * @param div_width Width in screen characters taken by the divider
+@@ -781,7 +816,8 @@ static int draw_divider(int num_rows, int num_cols)
+ *
+ * Write spaces over the area the sidebar isn't using.
+ */
+-static void fill_empty_space(int first_row, int num_rows, int div_width, int num_cols)
++static void fill_empty_space(struct MuttWindow *win, int first_row,
++ int num_rows, int div_width, int num_cols)
+ {
+ /* Fill the remaining rows with blank space */
+ mutt_curses_set_color(MT_COLOR_NORMAL);
+@@ -790,7 +826,7 @@ static void fill_empty_space(int first_row, int num_rows, int div_width, int num
+ div_width = 0;
+ for (int r = 0; r < num_rows; r++)
+ {
+- mutt_window_move(MuttSidebarWindow, first_row + r, div_width);
++ mutt_window_move(win, first_row + r, div_width);
+
+ for (int i = 0; i < num_cols; i++)
+ mutt_window_addch(' ');
+@@ -799,6 +835,7 @@ static void fill_empty_space(int first_row, int num_rows, int div_width, int num
+
+ /**
+ * draw_sidebar - Write out a list of mailboxes, in a panel
++ * @param win Window to draw on
+ * @param num_rows Height of the Sidebar
+ * @param num_cols Width of the Sidebar
+ * @param div_width Width in screen characters taken by the divider
+@@ -817,7 +854,7 @@ static void fill_empty_space(int first_row, int num_rows, int div_width, int num
+ * "sidebar_indent_string" and sorted: "sidebar_sort_method". Finally, they're
+ * trimmed to fit the available space.
+ */
+-static void draw_sidebar(int num_rows, int num_cols, int div_width)
++static void draw_sidebar(struct MuttWindow *win, int num_rows, int num_cols, int div_width)
+ {
+ struct SbEntry *entry = NULL;
+ struct Mailbox *m = NULL;
+@@ -865,7 +902,7 @@ static void draw_sidebar(int num_rows, int num_cols, int div_width)
+ if (C_SidebarOnRight)
+ col = div_width;
+
+- mutt_window_move(MuttSidebarWindow, row, col);
++ mutt_window_move(win, row, col);
+ if (Context && Context->mailbox && (Context->mailbox->realpath[0] != '\0') &&
+ (mutt_str_strcmp(m->realpath, Context->mailbox->realpath) == 0))
+ {
+@@ -956,27 +993,31 @@ static void draw_sidebar(int num_rows, int num_cols, int div_width)
+ row++;
+ }
+
+- fill_empty_space(row, num_rows - row, div_width, w);
++ fill_empty_space(win, row, num_rows - row, div_width, w);
+ }
+
+ /**
+ * mutt_sb_draw - Completely redraw the sidebar
++ * @param win Window to draw on
+ *
+ * Completely refresh the sidebar region. First draw the divider; then, for
+ * each Mailbox, call make_sidebar_entry; finally blank out any remaining space.
+ */
+-void mutt_sb_draw(void)
++void mutt_sb_draw(struct MuttWindow *win)
+ {
+- if (!C_SidebarVisible)
++ if (!C_SidebarVisible || !win)
++ return;
++
++ if (!mutt_window_is_visible(win))
+ return;
+
+ int row = 0, col = 0;
+- mutt_window_get_coords(MuttSidebarWindow, &row, &col);
++ mutt_window_get_coords(win, &row, &col);
+
+- int num_rows = MuttSidebarWindow->rows;
+- int num_cols = MuttSidebarWindow->cols;
++ int num_rows = win->state.rows;
++ int num_cols = win->state.cols;
+
+- int div_width = draw_divider(num_rows, num_cols);
++ int div_width = draw_divider(win, num_rows, num_cols);
+
+ if (!Entries)
+ {
+@@ -991,12 +1032,12 @@ void mutt_sb_draw(void)
+
+ if (!prepare_sidebar(num_rows))
+ {
+- fill_empty_space(0, num_rows, div_width, num_cols - div_width);
++ fill_empty_space(win, 0, num_rows, div_width, num_cols - div_width);
+ return;
+ }
+
+- draw_sidebar(num_rows, num_cols, div_width);
+- mutt_window_move(MuttSidebarWindow, row, col);
++ draw_sidebar(win, num_rows, num_cols, div_width);
++ mutt_window_move(win, row, col);
+ }
+
+ /**
+@@ -1160,3 +1201,56 @@ void mutt_sb_notify_mailbox(struct Mailbox *m, bool created)
+
+ mutt_menu_set_current_redraw(REDRAW_SIDEBAR);
+ }
++
++/**
++ * mutt_sb_observer - Listen for config changes affecting the sidebar - Implements ::observer_t
++ * @param nc Notification data
++ * @retval bool True, if successful
++ */
++int mutt_sb_observer(struct NotifyCallback *nc)
++{
++ if (!nc->event_data || !nc->global_data)
++ return -1;
++ if (nc->event_type != NT_CONFIG)
++ return 0;
++
++ struct MuttWindow *win = nc->global_data;
++ struct EventConfig *ec = nc->event_data;
++
++ if (mutt_str_strncmp(ec->name, "sidebar_", 8) != 0)
++ return 0;
++
++ bool repaint = false;
++
++ if (win->state.visible == !C_SidebarVisible)
++ {
++ win->state.visible = C_SidebarVisible;
++ repaint = true;
++ }
++
++ if (win->req_cols != C_SidebarWidth)
++ {
++ win->req_cols = C_SidebarWidth;
++ repaint = true;
++ }
++
++ struct MuttWindow *parent = win->parent;
++ struct MuttWindow *first = TAILQ_FIRST(&parent->children);
++
++ if ((C_SidebarOnRight && (first == win)) || (!C_SidebarOnRight && (first != win)))
++ {
++ // Swap the Sidebar and the Container of the Index/Pager
++ TAILQ_REMOVE(&parent->children, first, entries);
++ TAILQ_INSERT_TAIL(&parent->children, first, entries);
++ repaint = true;
++ }
++
++ if (repaint)
++ {
++ mutt_debug(LL_NOTIFY, "repaint sidebar\n");
++ mutt_window_reflow(MuttDialogWindow);
++ mutt_menu_set_current_redraw_full();
++ }
++
++ return 0;
++}
+diff --git a/sidebar.h b/sidebar.h
+index 2a7242d5e..49a6293f8 100644
+--- a/sidebar.h
++++ b/sidebar.h
+@@ -28,6 +28,8 @@
+ #include <stdbool.h>
+
+ struct Mailbox;
++struct MuttWindow;
++struct NotifyCallback;
+
+ /* These Config Variables are only used in sidebar.c */
+ extern short C_SidebarComponentDepth;
+@@ -39,13 +41,17 @@ extern char *C_SidebarIndentString;
+ extern bool C_SidebarNewMailOnly;
+ extern bool C_SidebarNonEmptyMailboxOnly;
+ extern bool C_SidebarNextNewWrap;
++extern bool C_SidebarOnRight;
+ extern bool C_SidebarShortPath;
+ extern short C_SidebarSortMethod;
++extern bool C_SidebarVisible;
++extern short C_SidebarWidth;
+
+-void mutt_sb_change_mailbox(int op);
+-void mutt_sb_draw(void);
+-struct Mailbox *mutt_sb_get_highlight(void);
+-void mutt_sb_notify_mailbox(struct Mailbox *m, bool created);
+-void mutt_sb_set_open_mailbox(struct Mailbox *m);
++void mutt_sb_change_mailbox (int op);
++void mutt_sb_draw (struct MuttWindow *win);
++struct Mailbox *mutt_sb_get_highlight (void);
++void mutt_sb_notify_mailbox (struct Mailbox *m, bool created);
++int mutt_sb_observer (struct NotifyCallback *nc);
++void mutt_sb_set_open_mailbox(struct Mailbox *m);
+
+ #endif /* MUTT_SIDEBAR_H */
+diff --git a/smtp.c b/smtp.c
+index 90b7bf3d7..498a2a3fa 100644
+--- a/smtp.c
++++ b/smtp.c
+@@ -39,19 +39,19 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+-#include "conn/conn.h"
++#include "conn/lib.h"
+ #include "smtp.h"
+ #include "globals.h"
++#include "init.h"
+ #include "mutt_account.h"
+ #include "mutt_socket.h"
+ #include "progress.h"
+ #include "sendlib.h"
+ #ifdef USE_SSL
+ #include "config/lib.h"
+-#include "mutt.h"
+ #endif
+ #ifdef USE_SASL
+ #include <sasl/sasl.h>
+@@ -61,6 +61,9 @@
+
+ /* These Config Variables are only used in smtp.c */
+ struct Slist *C_SmtpAuthenticators; ///< Config: (smtp) List of allowed authentication methods
++char *C_SmtpOauthRefreshCommand; ///< Config: (smtp) External command to generate OAUTH refresh token
++char *C_SmtpPass; ///< Config: (smtp) Password for the SMTP server
++char *C_SmtpUser; ///< Config: (smtp) Username for the SMTP server
+
+ #define smtp_success(x) ((x) / 100 == 2)
+ #define SMTP_READY 334
+@@ -319,21 +322,43 @@ static bool addresses_use_unicode(const struct AddressList *al)
+ return false;
+ }
+
++/**
++ * smtp_get_field - Get connection login credentials - Implements ConnAccount::get_field()
++ */
++static const char *smtp_get_field(enum ConnAccountField field)
++{
++ switch (field)
++ {
++ case MUTT_CA_LOGIN:
++ case MUTT_CA_USER:
++ return C_SmtpUser;
++ case MUTT_CA_PASS:
++ return C_SmtpPass;
++ case MUTT_CA_OAUTH_CMD:
++ return C_SmtpOauthRefreshCommand;
++ case MUTT_CA_HOST:
++ default:
++ return NULL;
++ }
++}
++
+ /**
+ * smtp_fill_account - Create ConnAccount object from SMTP Url
+- * @param account ConnAccount to populate
++ * @param cac ConnAccount to populate
+ * @retval 0 Success
+ * @retval -1 Error
+ */
+-static int smtp_fill_account(struct ConnAccount *account)
++static int smtp_fill_account(struct ConnAccount *cac)
+ {
+- account->flags = 0;
+- account->port = 0;
+- account->type = MUTT_ACCT_TYPE_SMTP;
++ cac->flags = 0;
++ cac->port = 0;
++ cac->type = MUTT_ACCT_TYPE_SMTP;
++ cac->service = "smtp";
++ cac->get_field = smtp_get_field;
+
+ struct Url *url = url_parse(C_SmtpUrl);
+ if (!url || ((url->scheme != U_SMTP) && (url->scheme != U_SMTPS)) ||
+- !url->host || (mutt_account_fromurl(account, url) < 0))
++ !url->host || (mutt_account_fromurl(cac, url) < 0))
+ {
+ url_free(&url);
+ mutt_error(_("Invalid SMTP URL: %s"), C_SmtpUrl);
+@@ -341,12 +366,12 @@ static int smtp_fill_account(struct ConnAccount *account)
+ }
+
+ if (url->scheme == U_SMTPS)
+- account->flags |= MUTT_ACCT_SSL;
++ cac->flags |= MUTT_ACCT_SSL;
+
+- if (account->port == 0)
++ if (cac->port == 0)
+ {
+- if (account->flags & MUTT_ACCT_SSL)
+- account->port = SMTPS_PORT;
++ if (cac->flags & MUTT_ACCT_SSL)
++ cac->port = SMTPS_PORT;
+ else
+ {
+ static unsigned short SmtpPort = 0;
+@@ -359,7 +384,7 @@ static int smtp_fill_account(struct ConnAccount *account)
+ SmtpPort = SMTP_PORT;
+ mutt_debug(LL_DEBUG3, "Using default SMTP port %d\n", SmtpPort);
+ }
+- account->port = SmtpPort;
++ cac->port = SmtpPort;
+ }
+ }
+
+@@ -740,7 +765,7 @@ int mutt_smtp_send(const struct AddressList *from, const struct AddressList *to,
+ const char *msgfile, bool eightbit)
+ {
+ struct Connection *conn = NULL;
+- struct ConnAccount account;
++ struct ConnAccount cac = { { 0 } };
+ const char *envfrom = NULL;
+ char buf[1024];
+ int rc = -1;
+@@ -757,10 +782,10 @@ int mutt_smtp_send(const struct AddressList *from, const struct AddressList *to,
+ return -1;
+ }
+
+- if (smtp_fill_account(&account) < 0)
++ if (smtp_fill_account(&cac) < 0)
+ return rc;
+
+- conn = mutt_conn_find(NULL, &account);
++ conn = mutt_conn_find(&cac);
+ if (!conn)
+ return -1;
+
+diff --git a/smtp.h b/smtp.h
+index 6f75db415..e8d0fffbe 100644
+--- a/smtp.h
++++ b/smtp.h
+@@ -29,6 +29,9 @@
+
+ /* These Config Variables are only used in smtp.c */
+ extern struct Slist *C_SmtpAuthenticators;
++extern char *C_SmtpOauthRefreshCommand;
++extern char *C_SmtpPass;
++extern char *C_SmtpUser;
+
+ #ifdef USE_SMTP
+ struct AddressList;
+diff --git a/sort.c b/sort.c
+index 9c19cf47b..f45bf0f99 100644
+--- a/sort.c
++++ b/sort.c
+@@ -31,7 +31,7 @@
+ #include <stdbool.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "core/lib.h"
+@@ -44,7 +44,7 @@
+ #include "options.h"
+ #include "score.h"
+ #ifdef USE_NNTP
+-#include "nntp/nntp.h"
++#include "nntp/lib.h"
+ #endif
+
+ /* These Config Variables are only used in sort.c */
+@@ -77,8 +77,10 @@ int perform_auxsort(int retval, const void *a, const void *b)
+ /* If the items still match, use their index positions
+ * to maintain a stable sort order */
+ if (retval == 0)
++ {
+ retval = (*((struct Email const *const *) a))->index -
+ (*((struct Email const *const *) b))->index;
++ }
+ return retval;
+ }
+
+diff --git a/state.c b/state.c
+index 62789fb4e..f820925d0 100644
+--- a/state.c
++++ b/state.c
+@@ -30,7 +30,7 @@
+ #include <limits.h>
+ #include <stdarg.h>
+ #include <wchar.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "state.h"
+ #include "globals.h"
+
+diff --git a/status.c b/status.c
+index eaeda5754..c7c491bcc 100644
+--- a/status.c
++++ b/status.c
+@@ -29,16 +29,16 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
++#include "gui/lib.h"
+ #include "status.h"
+ #include "context.h"
+ #include "format_flags.h"
+ #include "globals.h"
+ #include "mutt_mailbox.h"
+ #include "mutt_menu.h"
+-#include "mutt_window.h"
+ #include "muttlib.h"
+ #include "options.h"
+ #include "protos.h"
+@@ -408,6 +408,6 @@ static const char *status_format_str(char *buf, size_t buflen, size_t col, int c
+ */
+ void menu_status_line(char *buf, size_t buflen, struct Menu *menu, const char *p)
+ {
+- mutt_expando_format(buf, buflen, 0, menu ? menu->statuswin->cols : buflen, p,
++ mutt_expando_format(buf, buflen, 0, menu ? menu->win_ibar->state.cols : buflen, p,
+ status_format_str, (unsigned long) menu, MUTT_FORMAT_NO_FLAGS);
+ }
+diff --git a/system.c b/system.c
+index 10f90993b..dc719d2c4 100644
+--- a/system.c
++++ b/system.c
+@@ -32,11 +32,10 @@
+ #include <stdlib.h>
+ #include <sys/wait.h> // IWYU pragma: keep
+ #include <unistd.h>
+-#include "mutt/mutt.h"
+-#include "mutt.h"
++#include "mutt/lib.h"
+ #include "protos.h" // IWYU pragma: keep
+ #ifdef USE_IMAP
+-#include "imap/imap.h"
++#include "imap/lib.h"
+ #endif
+
+ /**
+diff --git a/test/Makefile.autosetup b/test/Makefile.autosetup
+index 70842f413..3fc21c167 100644
+--- a/test/Makefile.autosetup
++++ b/test/Makefile.autosetup
+@@ -87,12 +87,14 @@ CONFIG_OBJS = test/config/account.o \
+ test/config/long.o \
+ test/config/mbtable.o \
+ test/config/number.o \
++ test/config/path.o \
+ test/config/quad.o \
+ test/config/regex.o \
+ test/config/set.o \
+ test/config/slist.o \
+ test/config/sort.o \
+ test/config/string.o \
++ test/config/subset.o \
+ test/config/synonym.o
+
+ DATE_OBJS = test/date/mutt_date_add_timeout.o \
+@@ -185,6 +187,8 @@ GROUP_OBJS = test/group/mutt_group_match.o \
+ test/group/mutt_grouplist_remove_regex.o \
+ test/group/mutt_pattern_group.o
+
++GUI_OBJS = test/gui/reflow.o
++
+ HASH_OBJS = test/hash/mutt_hash_delete.o \
+ test/hash/mutt_hash_find.o \
+ test/hash/mutt_hash_find_bucket.o \
+@@ -425,7 +429,7 @@ BUILD_DIRS = $(PWD)/test/address $(PWD)/test/attach $(PWD)/test/base64 \
+ $(PWD)/test/body $(PWD)/test/buffer $(PWD)/test/charset \
+ $(PWD)/test/config $(PWD)/test/date $(PWD)/test/email \
+ $(PWD)/test/envelope $(PWD)/test/envlist $(PWD)/test/file \
+- $(PWD)/test/from $(PWD)/test/group $(PWD)/test/hash \
++ $(PWD)/test/from $(PWD)/test/group $(PWD)/test/gui $(PWD)/test/hash \
+ $(PWD)/test/history $(PWD)/test/idna $(PWD)/test/list \
+ $(PWD)/test/logging $(PWD)/test/mapping $(PWD)/test/mbyte \
+ $(PWD)/test/md5 $(PWD)/test/memory $(PWD)/test/parameter \
+@@ -449,6 +453,7 @@ TEST_OBJS = test/main.o \
+ $(FILE_OBJS) \
+ $(FROM_OBJS) \
+ $(GROUP_OBJS) \
++ $(GUI_OBJS) \
+ $(HASH_OBJS) \
+ $(HISTORY_OBJS) \
+ $(IDNA_OBJS) \
+diff --git a/test/acutest.h b/test/acutest.h
+index 448d8fdd6..4038a42af 100644
+--- a/test/acutest.h
++++ b/test/acutest.h
+@@ -2,7 +2,8 @@
+ * Acutest -- Another C/C++ Unit Test facility
+ * <http://github.com/mity/acutest>
+ *
+- * Copyright (c) 2013-2019 Martin Mitas
++ * Copyright 2013-2020 Martin Mitas
++ * Copyright 2019 Garrett D'Amore
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+@@ -23,8 +24,8 @@
+ * IN THE SOFTWARE.
+ */
+
+-#ifndef ACUTEST_H__
+-#define ACUTEST_H__
++#ifndef ACUTEST_H
++#define ACUTEST_H
+
+
+ /************************
+@@ -56,7 +57,7 @@
+ *
+ * void test_func(void);
+ */
+-#define TEST_LIST const struct test__ test_list__[]
++#define TEST_LIST const struct test_ test_list_[]
+
+
+ /* Macros for testing whether an unit test succeeds or fails. These macros
+@@ -78,8 +79,36 @@
+ * TEST_CHECK(ptr->member2 > 200);
+ * }
+ */
+-#define TEST_CHECK_(cond,...) test_check__((cond), __FILE__, __LINE__, __VA_ARGS__)
+-#define TEST_CHECK(cond) test_check__((cond), __FILE__, __LINE__, "%s", #cond)
++#define TEST_CHECK_(cond,...) test_check_((cond), __FILE__, __LINE__, __VA_ARGS__)
++#define TEST_CHECK(cond) test_check_((cond), __FILE__, __LINE__, "%s", #cond)
++
++
++/* These macros are the same as TEST_CHECK_ and TEST_CHECK except that if the
++ * condition fails, the currently executed unit test is immediately aborted.
++ *
++ * That is done either by calling abort() if the unit test is executed as a
++ * child process; or via longjmp() if the unit test is executed within the
++ * main Acutest process.
++ *
++ * As a side effect of such abortion, your unit tests may cause memory leaks,
++ * unflushed file descriptors, and other fenomena caused by the abortion.
++ *
++ * Therefore you should not use these as a general replacement for TEST_CHECK.
++ * Use it with some caution, especially if your test causes some other side
++ * effects to the outside world (e.g. communicating with some server, inserting
++ * into a database etc.).
++ */
++#define TEST_ASSERT_(cond,...) \
++ do { \
++ if(!test_check_((cond), __FILE__, __LINE__, __VA_ARGS__)) \
++ test_abort_(); \
++ } while(0)
++#define TEST_ASSERT(cond) \
++ do { \
++ if(!test_check_((cond), __FILE__, __LINE__, "%s", #cond)) \
++ test_abort_(); \
++ } while(0)
++
+
+ #ifdef __cplusplus
+ /* Macros to verify that the code (the 1st argument) throws exception of given
+@@ -98,35 +127,35 @@
+ */
+ #define TEST_EXCEPTION(code, exctype) \
+ do { \
+- bool exc_ok__ = false; \
+- const char *msg__ = NULL; \
++ bool exc_ok_ = false; \
++ const char *msg_ = NULL; \
+ try { \
+ code; \
+- msg__ = "No exception thrown."; \
++ msg_ = "No exception thrown."; \
+ } catch(exctype const&) { \
+- exc_ok__= true; \
++ exc_ok_= true; \
+ } catch(...) { \
+- msg__ = "Unexpected exception thrown."; \
++ msg_ = "Unexpected exception thrown."; \
+ } \
+- test_check__(exc_ok__, __FILE__, __LINE__, #code " throws " #exctype); \
+- if(msg__ != NULL) \
+- test_message__("%s", msg__); \
++ test_check_(exc_ok_, __FILE__, __LINE__, #code " throws " #exctype); \
++ if(msg_ != NULL) \
++ test_message_("%s", msg_); \
+ } while(0)
+ #define TEST_EXCEPTION_(code, exctype, ...) \
+ do { \
+- bool exc_ok__ = false; \
+- const char *msg__ = NULL; \
++ bool exc_ok_ = false; \
++ const char *msg_ = NULL; \
+ try { \
+ code; \
+- msg__ = "No exception thrown."; \
++ msg_ = "No exception thrown."; \
+ } catch(exctype const&) { \
+- exc_ok__= true; \
++ exc_ok_= true; \
+ } catch(...) { \
+- msg__ = "Unexpected exception thrown."; \
++ msg_ = "Unexpected exception thrown."; \
+ } \
+- test_check__(exc_ok__, __FILE__, __LINE__, __VA_ARGS__); \
+- if(msg__ != NULL) \
+- test_message__("%s", msg__); \
++ test_check_(exc_ok_, __FILE__, __LINE__, __VA_ARGS__); \
++ if(msg_ != NULL) \
++ test_message_("%s", msg_); \
+ } while(0)
+ #endif /* #ifdef __cplusplus */
+
+@@ -149,8 +178,8 @@
+ * implicitly the previous one. To end the test case explicitly (e.g. to end
+ * the last test case after exiting the loop), you may use TEST_CASE(NULL).
+ */
+-#define TEST_CASE_(...) test_case__(__VA_ARGS__)
+-#define TEST_CASE(name) test_case__("%s", name);
++#define TEST_CASE_(...) test_case_(__VA_ARGS__)
++#define TEST_CASE(name) test_case_("%s", name)
+
+
+ /* printf-like macro for outputting an extra information about a failure.
+@@ -174,7 +203,7 @@
+ * The macro can deal with multi-line output fairly well. It also automatically
+ * adds a final new-line if there is none present.
+ */
+-#define TEST_MSG(...) test_message__(__VA_ARGS__)
++#define TEST_MSG(...) test_message_(__VA_ARGS__)
+
+
+ /* Maximal output per TEST_MSG call. Longer messages are cut.
+@@ -191,11 +220,12 @@
+ * generating any printf-like message, this is for dumping raw block of a
+ * memory in a hexadecimal form:
+ *
+- * TEST_CHECK(size_produced == size_expected && memcmp(addr_produced, addr_expected, size_produced) == 0);
++ * TEST_CHECK(size_produced == size_expected &&
++ * memcmp(addr_produced, addr_expected, size_produced) == 0);
+ * TEST_DUMP("Expected:", addr_expected, size_expected);
+ * TEST_DUMP("Produced:", addr_produced, size_produced);
+ */
+-#define TEST_DUMP(title, addr, size) test_dump__(title, addr, size)
++#define TEST_DUMP(title, addr, size) test_dump_(title, addr, size)
+
+ /* Maximal output per TEST_DUMP call (in bytes to dump). Longer blocks are cut.
+ * You may define another limit prior including "acutest.h"
+@@ -216,9 +246,10 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <setjmp.h>
+
+ #if defined(unix) || defined(__unix__) || defined(__unix) || defined(__APPLE__)
+- #define ACUTEST_UNIX__ 1
++ #define ACUTEST_UNIX_ 1
+ #include <errno.h>
+ #include <libgen.h>
+ #include <unistd.h>
+@@ -228,18 +259,18 @@
+ #include <time.h>
+
+ #if defined CLOCK_PROCESS_CPUTIME_ID && defined CLOCK_MONOTONIC
+- #define ACUTEST_HAS_POSIX_TIMER__ 1
++ #define ACUTEST_HAS_POSIX_TIMER_ 1
+ #endif
+ #endif
+
+-#if defined(__gnu_linux__)
+- #define ACUTEST_LINUX__ 1
++#if defined(_gnu_linux_)
++ #define ACUTEST_LINUX_ 1
+ #include <fcntl.h>
+ #include <sys/stat.h>
+ #endif
+
+ #if defined(_WIN32) || defined(__WIN32__) || defined(__WINDOWS__)
+- #define ACUTEST_WIN__ 1
++ #define ACUTEST_WIN_ 1
+ #include <windows.h>
+ #include <io.h>
+ #endif
+@@ -248,8 +279,21 @@
+ #include <exception>
+ #endif
+
++/* Load valgrind.h, if available. This allows to detect valgrind's presence via RUNNING_ON_VALGRIND. */
++#ifdef __has_include
++ #if __has_include(<valgrind.h>)
++ #include <valgrind.h>
++ #endif
++#endif
++
++/* Enable the use of the non-standard keyword __attribute__ to silence warnings under some compilers */
++#if defined(__GNUC__) || defined(__clang__)
++ #define TEST_ATTRIBUTE_(_x) __attribute__((_x))
++#else
++ #define TEST_ATTRIBUTE_(_x)
++#endif
+
+-/* Note our global private identifiers end with '__' to mitigate risk of clash
++/* Note our global private identifiers end with '_' to mitigate risk of clash
+ * with the unit tests implementation. */
+
+
+@@ -258,166 +302,175 @@
+ #endif
+
+
+-struct test__ {
++struct test_ {
+ const char* name;
+ void (*func)(void);
+ };
+
+-struct test_detail__ {
++struct test_detail_ {
+ unsigned char flags;
+ double duration;
+ };
+
+ enum {
+- TEST_FLAG_RUN__ = 1 << 0,
+- TEST_FLAG_SUCCESS__ = 1 << 1,
+- TEST_FLAG_FAILURE__ = 1 << 2,
++ TEST_FLAG_RUN_ = 1 << 0,
++ TEST_FLAG_SUCCESS_ = 1 << 1,
++ TEST_FLAG_FAILURE_ = 1 << 2,
+ };
+
+-extern const struct test__ test_list__[];
++extern const struct test_ test_list_[];
+
+-int test_check__(int cond, const char* file, int line, const char* fmt, ...);
+-void test_case__(const char* fmt, ...);
+-void test_message__(const char* fmt, ...);
+-void test_dump__(const char* title, const void* addr, size_t size);
++int test_check_(int cond, const char* file, int line, const char* fmt, ...);
++void test_case_(const char* fmt, ...);
++void test_message_(const char* fmt, ...);
++void test_dump_(const char* title, const void* addr, size_t size);
++void test_abort_(void) TEST_ATTRIBUTE_(noreturn);
+
+
+ #ifndef TEST_NO_MAIN
+
+-static char* test_argv0__ = NULL;
+-static size_t test_list_size__ = 0;
+-static struct test_detail__ *test_details__ = NULL;
+-static size_t test_count__ = 0;
+-static int test_no_exec__ = -1;
+-static int test_no_summary__ = 0;
+-static int test_tap__ = 0;
+-static int test_skip_mode__ = 0;
+-static int test_worker__ = 0;
+-static int test_worker_index__ = 0;
+-static int test_cond_failed__ = 0;
+-static FILE *test_xml_output__ = NULL;
+-
+-static int test_stat_failed_units__ = 0;
+-static int test_stat_run_units__ = 0;
+-
+-static const struct test__* test_current_unit__ = NULL;
+-static int test_current_index__ = 0;
+-static char test_case_name__[64] = "";
+-static int test_current_already_logged__ = 0;
+-static int test_case_current_already_logged__ = 0;
+-static int test_verbose_level__ = 2;
+-static int test_current_failures__ = 0;
+-static int test_colorize__ = 0;
+-static int test_timer__ = 0;
+-
+-#if defined ACUTEST_WIN__
+- typedef LARGE_INTEGER test_timer_type__;
+- static LARGE_INTEGER test_timer_freq__;
+- static test_timer_type__ test_timer_start__;
+- static test_timer_type__ test_timer_end__;
++static char* test_argv0_ = NULL;
++static size_t test_list_size_ = 0;
++static struct test_detail_ *test_details_ = NULL;
++static size_t test_count_ = 0;
++static int test_no_exec_ = -1;
++static int test_no_summary_ = 0;
++static int test_tap_ = 0;
++static int test_skip_mode_ = 0;
++static int test_worker_ = 0;
++static int test_worker_index_ = 0;
++static int test_cond_failed_ = 0;
++static int test_was_aborted_ = 0;
++static FILE *test_xml_output_ = NULL;
++
++static int test_stat_failed_units_ = 0;
++static int test_stat_run_units_ = 0;
++
++static const struct test_* test_current_unit_ = NULL;
++static int test_current_index_ = 0;
++static char test_case_name_[64] = "";
++static int test_current_already_logged_ = 0;
++static int test_case_current_already_logged_ = 0;
++static int test_verbose_level_ = 2;
++static int test_current_failures_ = 0;
++static int test_colorize_ = 0;
++static int test_timer_ = 0;
++
++static int test_abort_has_jmp_buf_ = 0;
++static jmp_buf test_abort_jmp_buf_;
++
++#if defined ACUTEST_WIN_
++ typedef LARGE_INTEGER test_timer_type_;
++ static LARGE_INTEGER test_timer_freq_;
++ static test_timer_type_ test_timer_start_;
++ static test_timer_type_ test_timer_end_;
+
+ static void
+- test_timer_init__(void)
++ test_timer_init_(void)
+ {
+- QueryPerformanceFrequency(&test_timer_freq__);
++ QueryPerformanceFrequency(&test_timer_freq_);
+ }
+
+ static void
+- test_timer_get_time__(LARGE_INTEGER* ts)
++ test_timer_get_time_(LARGE_INTEGER* ts)
+ {
+ QueryPerformanceCounter(ts);
+ }
+
+ static double
+- test_timer_diff__(LARGE_INTEGER start, LARGE_INTEGER end)
++ test_timer_diff_(LARGE_INTEGER start, LARGE_INTEGER end)
+ {
+- double duration = end.QuadPart - start.QuadPart;
+- duration /= test_timer_freq__.QuadPart;
++ double duration = (double)(end.QuadPart - start.QuadPart);
++ duration /= (double)test_timer_freq_.QuadPart;
+ return duration;
+ }
+
+ static void
+- test_timer_print_diff__(void)
++ test_timer_print_diff_(void)
+ {
+- printf("%.6lf secs", test_timer_diff__(test_timer_start__, test_timer_end__));
++ printf("%.6lf secs", test_timer_diff_(test_timer_start_, test_timer_end_));
+ }
+-#elif defined ACUTEST_HAS_POSIX_TIMER__
+- static clockid_t test_timer_id__;
+- typedef struct timespec test_timer_type__;
+- static test_timer_type__ test_timer_start__;
+- static test_timer_type__ test_timer_end__;
++#elif defined ACUTEST_HAS_POSIX_TIMER_
++ static clockid_t test_timer_id_;
++ typedef struct timespec test_timer_type_;
++ static test_timer_type_ test_timer_start_;
++ static test_timer_type_ test_timer_end_;
+
+ static void
+- test_timer_init__(void)
++ test_timer_init_(void)
+ {
+- if(test_timer__ == 1)
+- #ifdef CLOCK_MONOTONIC_RAW
+- /* linux specific; not subject of NTP adjustments or adjtime() */
+- test_timer_id__ = CLOCK_MONOTONIC_RAW;
+- #else
+- test_timer_id__ = CLOCK_MONOTONIC;
+- #endif
+- else if(test_timer__ == 2)
+- test_timer_id__ = CLOCK_PROCESS_CPUTIME_ID;
++ if(test_timer_ == 1)
++ test_timer_id_ = CLOCK_MONOTONIC;
++ else if(test_timer_ == 2)
++ test_timer_id_ = CLOCK_PROCESS_CPUTIME_ID;
+ }
+
+ static void
+- test_timer_get_time__(struct timespec* ts)
++ test_timer_get_time_(struct timespec* ts)
+ {
+- clock_gettime(test_timer_id__, ts);
++ clock_gettime(test_timer_id_, ts);
+ }
+
+ static double
+- test_timer_diff__(struct timespec start, struct timespec end)
++ test_timer_diff_(struct timespec start, struct timespec end)
+ {
+- return ((double) end.tv_sec +
+- (double) end.tv_nsec * 10e-9)
+- -
+- ((double) start.tv_sec +
+- (double) start.tv_nsec * 10e-9);
++ double endns;
++ double startns;
++
++ endns = end.tv_sec;
++ endns *= 1e9;
++ endns += end.tv_nsec;
++
++ startns = start.tv_sec;
++ startns *= 1e9;
++ startns += start.tv_nsec;
++
++ return ((endns - startns)/ 1e9);
+ }
+
+ static void
+- test_timer_print_diff__(void)
++ test_timer_print_diff_(void)
+ {
+ printf("%.6lf secs",
+- test_timer_diff__(test_timer_start__, test_timer_end__));
++ test_timer_diff_(test_timer_start_, test_timer_end_));
+ }
+ #else
+- typedef int test_timer_type__;
+- static test_timer_type__ test_timer_start__;
+- static test_timer_type__ test_timer_end__;
++ typedef int test_timer_type_;
++ static test_timer_type_ test_timer_start_;
++ static test_timer_type_ test_timer_end_;
+
+ void
+- test_timer_init__(void)
++ test_timer_init_(void)
+ {}
+
+ static void
+- test_timer_get_time__(int* ts)
++ test_timer_get_time_(int* ts)
+ {
+ (void) ts;
+ }
+
+ static double
+- test_timer_diff__(int start, int end)
++ test_timer_diff_(int start, int end)
+ {
++ (void) start;
++ (void) end;
+ return 0.0;
+ }
+
+ static void
+- test_timer_print_diff__(void)
++ test_timer_print_diff_(void)
+ {}
+ #endif
+
+-#define TEST_COLOR_DEFAULT__ 0
+-#define TEST_COLOR_GREEN__ 1
+-#define TEST_COLOR_RED__ 2
+-#define TEST_COLOR_DEFAULT_INTENSIVE__ 3
+-#define TEST_COLOR_GREEN_INTENSIVE__ 4
+-#define TEST_COLOR_RED_INTENSIVE__ 5
++#define TEST_COLOR_DEFAULT_ 0
++#define TEST_COLOR_GREEN_ 1
++#define TEST_COLOR_RED_ 2
++#define TEST_COLOR_DEFAULT_INTENSIVE_ 3
++#define TEST_COLOR_GREEN_INTENSIVE_ 4
++#define TEST_COLOR_RED_INTENSIVE_ 5
+
+-static int
+-test_print_in_color__(int color, const char* fmt, ...)
++static int TEST_ATTRIBUTE_(format (printf, 2, 3))
++test_print_in_color_(int color, const char* fmt, ...)
+ {
+ va_list args;
+ char buffer[256];
+@@ -428,27 +481,27 @@ test_print_in_color__(int color, const char* fmt, ...)
+ va_end(args);
+ buffer[sizeof(buffer)-1] = '\0';
+
+- if(!test_colorize__) {
++ if(!test_colorize_) {
+ return printf("%s", buffer);
+ }
+
+-#if defined ACUTEST_UNIX__
++#if defined ACUTEST_UNIX_
+ {
+ const char* col_str;
+ switch(color) {
+- case TEST_COLOR_GREEN__: col_str = "\033[0;32m"; break;
+- case TEST_COLOR_RED__: col_str = "\033[0;31m"; break;
+- case TEST_COLOR_GREEN_INTENSIVE__: col_str = "\033[1;32m"; break;
+- case TEST_COLOR_RED_INTENSIVE__: col_str = "\033[1;31m"; break;
+- case TEST_COLOR_DEFAULT_INTENSIVE__: col_str = "\033[1m"; break;
+- default: col_str = "\033[0m"; break;
++ case TEST_COLOR_GREEN_: col_str = "\033[0;32m"; break;
++ case TEST_COLOR_RED_: col_str = "\033[0;31m"; break;
++ case TEST_COLOR_GREEN_INTENSIVE_: col_str = "\033[1;32m"; break;
++ case TEST_COLOR_RED_INTENSIVE_: col_str = "\033[1;31m"; break;
++ case TEST_COLOR_DEFAULT_INTENSIVE_: col_str = "\033[1m"; break;
++ default: col_str = "\033[0m"; break;
+ }
+ printf("%s", col_str);
+ n = printf("%s", buffer);
+ printf("\033[0m");
+ return n;
+ }
+-#elif defined ACUTEST_WIN__
++#elif defined ACUTEST_WIN_
+ {
+ HANDLE h;
+ CONSOLE_SCREEN_BUFFER_INFO info;
+@@ -458,12 +511,12 @@ test_print_in_color__(int color, const char* fmt, ...)
+ GetConsoleScreenBufferInfo(h, &info);
+
+ switch(color) {
+- case TEST_COLOR_GREEN__: attr = FOREGROUND_GREEN; break;
+- case TEST_COLOR_RED__: attr = FOREGROUND_RED; break;
+- case TEST_COLOR_GREEN_INTENSIVE__: attr = FOREGROUND_GREEN | FOREGROUND_INTENSITY; break;
+- case TEST_COLOR_RED_INTENSIVE__: attr = FOREGROUND_RED | FOREGROUND_INTENSITY; break;
+- case TEST_COLOR_DEFAULT_INTENSIVE__: attr = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; break;
+- default: attr = 0; break;
++ case TEST_COLOR_GREEN_: attr = FOREGROUND_GREEN; break;
++ case TEST_COLOR_RED_: attr = FOREGROUND_RED; break;
++ case TEST_COLOR_GREEN_INTENSIVE_: attr = FOREGROUND_GREEN | FOREGROUND_INTENSITY; break;
++ case TEST_COLOR_RED_INTENSIVE_: attr = FOREGROUND_RED | FOREGROUND_INTENSITY; break;
++ case TEST_COLOR_DEFAULT_INTENSIVE_: attr = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_INTENSITY; break;
++ default: attr = 0; break;
+ }
+ if(attr != 0)
+ SetConsoleTextAttribute(h, attr);
+@@ -478,49 +531,49 @@ test_print_in_color__(int color, const char* fmt, ...)
+ }
+
+ static void
+-test_begin_test_line__(const struct test__* test)
++test_begin_test_line_(const struct test_* test)
+ {
+- if(!test_tap__) {
+- if(test_verbose_level__ >= 3) {
+- test_print_in_color__(TEST_COLOR_DEFAULT_INTENSIVE__, "Test %s:\n", test->name);
+- test_current_already_logged__++;
+- } else if(test_verbose_level__ >= 1) {
++ if(!test_tap_) {
++ if(test_verbose_level_ >= 3) {
++ test_print_in_color_(TEST_COLOR_DEFAULT_INTENSIVE_, "Test %s:\n", test->name);
++ test_current_already_logged_++;
++ } else if(test_verbose_level_ >= 1) {
+ int n;
+ char spaces[48];
+
+- n = test_print_in_color__(TEST_COLOR_DEFAULT_INTENSIVE__, "Test %s... ", test->name);
++ n = test_print_in_color_(TEST_COLOR_DEFAULT_INTENSIVE_, "Test %s... ", test->name);
+ memset(spaces, ' ', sizeof(spaces));
+ if(n < (int) sizeof(spaces))
+ printf("%.*s", (int) sizeof(spaces) - n, spaces);
+ } else {
+- test_current_already_logged__ = 1;
++ test_current_already_logged_ = 1;
+ }
+ }
+ }
+
+ static void
+-test_finish_test_line__(int result)
++test_finish_test_line_(int result)
+ {
+- if(test_tap__) {
++ if(test_tap_) {
+ const char* str = (result == 0) ? "ok" : "not ok";
+
+- printf("%s %u - %s\n", str, test_current_index__ + 1, test_current_unit__->name);
++ printf("%s %u - %s\n", str, test_current_index_ + 1, test_current_unit_->name);
+
+- if(result == 0 && test_timer__) {
++ if(result == 0 && test_timer_) {
+ printf("# Duration: ");
+- test_timer_print_diff__();
++ test_timer_print_diff_();
+ printf("\n");
+ }
+ } else {
+- int color = (result == 0) ? TEST_COLOR_GREEN_INTENSIVE__ : TEST_COLOR_RED_INTENSIVE__;
++ int color = (result == 0) ? TEST_COLOR_GREEN_INTENSIVE_ : TEST_COLOR_RED_INTENSIVE_;
+ const char* str = (result == 0) ? "OK" : "FAILED";
+ printf("[ ");
+- test_print_in_color__(color, str);
++ test_print_in_color_(color, "%s", str);
+ printf(" ]");
+
+- if(result == 0 && test_timer__) {
++ if(result == 0 && test_timer_) {
+ printf(" ");
+- test_timer_print_diff__();
++ test_timer_print_diff_();
+ }
+
+ printf("\n");
+@@ -528,12 +581,12 @@ test_finish_test_line__(int result)
+ }
+
+ static void
+-test_line_indent__(int level)
++test_line_indent_(int level)
+ {
+ static const char spaces[] = " ";
+ int n = level * 2;
+
+- if(test_tap__ && n > 0) {
++ if(test_tap_ && n > 0) {
+ n--;
+ printf("#");
+ }
+@@ -545,8 +598,8 @@ test_line_indent__(int level)
+ printf("%.*s", n, spaces);
+ }
+
+-int
+-test_check__(int cond, const char* file, int line, const char* fmt, ...)
++int TEST_ATTRIBUTE_(format (printf, 4, 5))
++test_check_(int cond, const char* file, int line, const char* fmt, ...)
+ {
+ const char *result_str;
+ int result_color;
+@@ -554,46 +607,44 @@ test_check__(int cond, const char* file, int line, const char* fmt, ...)
+
+ if(cond) {
+ result_str = "ok";
+- result_color = TEST_COLOR_GREEN__;
++ result_color = TEST_COLOR_GREEN_;
+ verbose_level = 3;
+ } else {
+- if(!test_current_already_logged__ && test_current_unit__ != NULL)
+- test_finish_test_line__(-1);
++ if(!test_current_already_logged_ && test_current_unit_ != NULL)
++ test_finish_test_line_(-1);
+
+ result_str = "failed";
+- result_color = TEST_COLOR_RED__;
++ result_color = TEST_COLOR_RED_;
+ verbose_level = 2;
+- test_current_failures__++;
+- test_current_already_logged__++;
++ test_current_failures_++;
++ test_current_already_logged_++;
+ }
+
+- if(test_verbose_level__ >= verbose_level) {
++ if(test_verbose_level_ >= verbose_level) {
+ va_list args;
+
+- if(!test_case_current_already_logged__ && test_case_name__[0]) {
+- test_line_indent__(1);
+- test_print_in_color__(TEST_COLOR_DEFAULT_INTENSIVE__, "Case %s:\n", test_case_name__);
+- test_current_already_logged__++;
+- test_case_current_already_logged__++;
++ if(!test_case_current_already_logged_ && test_case_name_[0]) {
++ test_line_indent_(1);
++ test_print_in_color_(TEST_COLOR_DEFAULT_INTENSIVE_, "Case %s:\n", test_case_name_);
++ test_current_already_logged_++;
++ test_case_current_already_logged_++;
+ }
+
+- test_line_indent__(test_case_name__[0] ? 2 : 1);
++ test_line_indent_(test_case_name_[0] ? 2 : 1);
+ if(file != NULL) {
+- if(test_verbose_level__ < 3) {
+-#ifdef ACUTEST_WIN__
+- const char* lastsep1 = strrchr(file, '\\');
+- const char* lastsep2 = strrchr(file, '/');
+- if(lastsep1 == NULL)
+- lastsep1 = file-1;
+- if(lastsep2 == NULL)
+- lastsep2 = file-1;
+- file = (lastsep1 > lastsep2 ? lastsep1 : lastsep2) + 1;
++#ifdef ACUTEST_WIN_
++ const char* lastsep1 = strrchr(file, '\\');
++ const char* lastsep2 = strrchr(file, '/');
++ if(lastsep1 == NULL)
++ lastsep1 = file-1;
++ if(lastsep2 == NULL)
++ lastsep2 = file-1;
++ file = (lastsep1 > lastsep2 ? lastsep1 : lastsep2) + 1;
+ #else
+- const char* lastsep = strrchr(file, '/');
+- if(lastsep != NULL)
+- file = lastsep+1;
++ const char* lastsep = strrchr(file, '/');
++ if(lastsep != NULL)
++ file = lastsep+1;
+ #endif
+- }
+ printf("%s:%d: Check ", file, line);
+ }
+
+@@ -602,58 +653,58 @@ test_check__(int cond, const char* file, int line, const char* fmt, ...)
+ va_end(args);
+
+ printf("... ");
+- test_print_in_color__(result_color, result_str);
++ test_print_in_color_(result_color, "%s", result_str);
+ printf("\n");
+- test_current_already_logged__++;
++ test_current_already_logged_++;
+ }
+
+- test_cond_failed__ = (cond == 0);
+- return !test_cond_failed__;
++ test_cond_failed_ = (cond == 0);
++ return !test_cond_failed_;
+ }
+
+-void
+-test_case__(const char* fmt, ...)
++void TEST_ATTRIBUTE_(format (printf, 1, 2))
++test_case_(const char* fmt, ...)
+ {
+ va_list args;
+
+- if(test_verbose_level__ < 2)
++ if(test_verbose_level_ < 2)
+ return;
+
+- if(test_case_name__[0]) {
+- test_case_current_already_logged__ = 0;
+- test_case_name__[0] = '\0';
++ if(test_case_name_[0]) {
++ test_case_current_already_logged_ = 0;
++ test_case_name_[0] = '\0';
+ }
+
+ if(fmt == NULL)
+ return;
+
+ va_start(args, fmt);
+- vsnprintf(test_case_name__, sizeof(test_case_name__) - 1, fmt, args);
++ vsnprintf(test_case_name_, sizeof(test_case_name_) - 1, fmt, args);
+ va_end(args);
+- test_case_name__[sizeof(test_case_name__) - 1] = '\0';
++ test_case_name_[sizeof(test_case_name_) - 1] = '\0';
+
+- if(test_verbose_level__ >= 3) {
+- test_line_indent__(1);
+- test_print_in_color__(TEST_COLOR_DEFAULT_INTENSIVE__, "Case %s:\n", test_case_name__);
+- test_current_already_logged__++;
+- test_case_current_already_logged__++;
++ if(test_verbose_level_ >= 3) {
++ test_line_indent_(1);
++ test_print_in_color_(TEST_COLOR_DEFAULT_INTENSIVE_, "Case %s:\n", test_case_name_);
++ test_current_already_logged_++;
++ test_case_current_already_logged_++;
+ }
+ }
+
+-void
+-test_message__(const char* fmt, ...)
++void TEST_ATTRIBUTE_(format (printf, 1, 2))
++test_message_(const char* fmt, ...)
+ {
+ char buffer[TEST_MSG_MAXSIZE];
+ char* line_beg;
+ char* line_end;
+ va_list args;
+
+- if(test_verbose_level__ < 2)
++ if(test_verbose_level_ < 2)
+ return;
+
+ /* We allow extra message only when something is already wrong in the
+ * current test. */
+- if(test_current_unit__ == NULL || !test_cond_failed__)
++ if(test_current_unit_ == NULL || !test_cond_failed_)
+ return;
+
+ va_start(args, fmt);
+@@ -666,29 +717,29 @@ test_message__(const char* fmt, ...)
+ line_end = strchr(line_beg, '\n');
+ if(line_end == NULL)
+ break;
+- test_line_indent__(test_case_name__[0] ? 3 : 2);
++ test_line_indent_(test_case_name_[0] ? 3 : 2);
+ printf("%.*s\n", (int)(line_end - line_beg), line_beg);
+ line_beg = line_end + 1;
+ }
+ if(line_beg[0] != '\0') {
+- test_line_indent__(test_case_name__[0] ? 3 : 2);
++ test_line_indent_(test_case_name_[0] ? 3 : 2);
+ printf("%s\n", line_beg);
+ }
+ }
+
+ void
+-test_dump__(const char* title, const void* addr, size_t size)
++test_dump_(const char* title, const void* addr, size_t size)
+ {
+ static const size_t BYTES_PER_LINE = 16;
+ size_t line_beg;
+ size_t truncate = 0;
+
+- if(test_verbose_level__ < 2)
++ if(test_verbose_level_ < 2)
+ return;
+
+ /* We allow extra message only when something is already wrong in the
+ * current test. */
+- if(test_current_unit__ == NULL || !test_cond_failed__)
++ if(test_current_unit_ == NULL || !test_cond_failed_)
+ return;
+
+ if(size > TEST_DUMP_MAXSIZE) {
+@@ -696,25 +747,25 @@ test_dump__(const char* title, const void* addr, size_t size)
+ size = TEST_DUMP_MAXSIZE;
+ }
+
+- test_line_indent__(test_case_name__[0] ? 3 : 2);
++ test_line_indent_(test_case_name_[0] ? 3 : 2);
+ printf((title[strlen(title)-1] == ':') ? "%s\n" : "%s:\n", title);
+
+ for(line_beg = 0; line_beg < size; line_beg += BYTES_PER_LINE) {
+ size_t line_end = line_beg + BYTES_PER_LINE;
+ size_t off;
+
+- test_line_indent__(test_case_name__[0] ? 4 : 3);
++ test_line_indent_(test_case_name_[0] ? 4 : 3);
+ printf("%08lx: ", (unsigned long)line_beg);
+ for(off = line_beg; off < line_end; off++) {
+ if(off < size)
+- printf(" %02x", ((unsigned char*)addr)[off]);
++ printf(" %02x", ((const unsigned char*)addr)[off]);
+ else
+ printf(" ");
+ }
+
+ printf(" ");
+ for(off = line_beg; off < line_end; off++) {
+- unsigned char byte = ((unsigned char*)addr)[off];
++ unsigned char byte = ((const unsigned char*)addr)[off];
+ if(off < size)
+ printf("%c", (iscntrl(byte) ? '.' : byte));
+ else
+@@ -725,45 +776,54 @@ test_dump__(const char* title, const void* addr, size_t size)
+ }
+
+ if(truncate > 0) {
+- test_line_indent__(test_case_name__[0] ? 4 : 3);
++ test_line_indent_(test_case_name_[0] ? 4 : 3);
+ printf(" ... (and more %u bytes)\n", (unsigned) truncate);
+ }
+ }
+
++void
++test_abort_(void)
++{
++ if(test_abort_has_jmp_buf_)
++ longjmp(test_abort_jmp_buf_, 1);
++ else
++ abort();
++}
++
+ static void
+-test_list_names__(void)
++test_list_names_(void)
+ {
+- const struct test__* test;
++ const struct test_* test;
+
+ printf("Unit tests:\n");
+- for(test = &test_list__[0]; test->func != NULL; test++)
++ for(test = &test_list_[0]; test->func != NULL; test++)
+ printf(" %s\n", test->name);
+ }
+
+ static void
+-test_remember__(int i)
++test_remember_(int i)
+ {
+- if(test_details__[i].flags & TEST_FLAG_RUN__)
++ if(test_details_[i].flags & TEST_FLAG_RUN_)
+ return;
+
+- test_details__[i].flags |= TEST_FLAG_RUN__;
+- test_count__++;
++ test_details_[i].flags |= TEST_FLAG_RUN_;
++ test_count_++;
+ }
+
+ static void
+-test_set_success__(int i, int success)
++test_set_success_(int i, int success)
+ {
+- test_details__[i].flags |= success ? TEST_FLAG_SUCCESS__ : TEST_FLAG_FAILURE__;
++ test_details_[i].flags |= success ? TEST_FLAG_SUCCESS_ : TEST_FLAG_FAILURE_;
+ }
+
+ static void
+-test_set_duration__(int i, double duration)
++test_set_duration_(int i, double duration)
+ {
+- test_details__[i].duration = duration;
++ test_details_[i].duration = duration;
+ }
+
+ static int
+-test_name_contains_word__(const char* name, const char* pattern)
++test_name_contains_word_(const char* name, const char* pattern)
+ {
+ static const char word_delim[] = " \t-_.";
+ const char* substr;
+@@ -788,15 +848,15 @@ test_name_contains_word__(const char* name, const char* pattern)
+ }
+
+ static int
+-test_lookup__(const char* pattern)
++test_lookup_(const char* pattern)
+ {
+ int i;
+ int n = 0;
+
+ /* Try exact match. */
+- for(i = 0; i < (int) test_list_size__; i++) {
+- if(strcmp(test_list__[i].name, pattern) == 0) {
+- test_remember__(i);
++ for(i = 0; i < (int) test_list_size_; i++) {
++ if(strcmp(test_list_[i].name, pattern) == 0) {
++ test_remember_(i);
+ n++;
+ break;
+ }
+@@ -805,9 +865,9 @@ test_lookup__(const char* pattern)
+ return n;
+
+ /* Try word match. */
+- for(i = 0; i < (int) test_list_size__; i++) {
+- if(test_name_contains_word__(test_list__[i].name, pattern)) {
+- test_remember__(i);
++ for(i = 0; i < (int) test_list_size_; i++) {
++ if(test_name_contains_word_(test_list_[i].name, pattern)) {
++ test_remember_(i);
+ n++;
+ }
+ }
+@@ -815,9 +875,9 @@ test_lookup__(const char* pattern)
+ return n;
+
+ /* Try relaxed match. */
+- for(i = 0; i < (int) test_list_size__; i++) {
+- if(strstr(test_list__[i].name, pattern) != NULL) {
+- test_remember__(i);
++ for(i = 0; i < (int) test_list_size_; i++) {
++ if(strstr(test_list_[i].name, pattern) != NULL) {
++ test_remember_(i);
+ n++;
+ }
+ }
+@@ -829,50 +889,41 @@ test_lookup__(const char* pattern)
+ /* Called if anything goes bad in Acutest, or if the unit test ends in other
+ * way then by normal returning from its function (e.g. exception or some
+ * abnormal child process termination). */
+-static void
+-test_error__(const char* fmt, ...)
++static void TEST_ATTRIBUTE_(format (printf, 1, 2))
++test_error_(const char* fmt, ...)
+ {
+ va_list args;
+
+- if(test_verbose_level__ == 0)
++ if(test_verbose_level_ == 0)
+ return;
+
+- if(test_verbose_level__ <= 2 && !test_current_already_logged__ && test_current_unit__ != NULL) {
+- if(test_tap__) {
+- test_finish_test_line__(-1);
+- } else {
+- printf("[ ");
+- test_print_in_color__(TEST_COLOR_RED_INTENSIVE__, "FAILED");
+- printf(" ]\n");
+- }
+- }
+-
+- if(test_verbose_level__ >= 2) {
+- test_line_indent__(1);
+- if(test_verbose_level__ >= 3)
+- test_print_in_color__(TEST_COLOR_RED_INTENSIVE__, "ERROR: ");
++ if(test_verbose_level_ >= 2) {
++ test_line_indent_(1);
++ if(test_verbose_level_ >= 3)
++ test_print_in_color_(TEST_COLOR_RED_INTENSIVE_, "ERROR: ");
+ va_start(args, fmt);
+ vprintf(fmt, args);
+ va_end(args);
+ printf("\n");
+ }
+
+- if(test_verbose_level__ >= 3) {
++ if(test_verbose_level_ >= 3) {
+ printf("\n");
+ }
+ }
+
+ /* Call directly the given test unit function. */
+ static int
+-test_do_run__(const struct test__* test, int index)
++test_do_run_(const struct test_* test, int index)
+ {
+- test_current_unit__ = test;
+- test_current_index__ = index;
+- test_current_failures__ = 0;
+- test_current_already_logged__ = 0;
+- test_cond_failed__ = 0;
++ test_was_aborted_ = 0;
++ test_current_unit_ = test;
++ test_current_index_ = index;
++ test_current_failures_ = 0;
++ test_current_already_logged_ = 0;
++ test_cond_failed_ = 0;
+
+- test_begin_test_line__(test);
++ test_begin_test_line_(test);
+
+ #ifdef __cplusplus
+ try {
+@@ -882,69 +933,96 @@ test_do_run__(const struct test__* test, int index)
+ fflush(stdout);
+ fflush(stderr);
+
+- test_timer_get_time__(&test_timer_start__);
+- test->func();
+- test_timer_get_time__(&test_timer_end__);
++ if(!test_worker_) {
++ test_abort_has_jmp_buf_ = 1;
++ if(setjmp(test_abort_jmp_buf_) != 0) {
++ test_was_aborted_ = 1;
++ goto aborted;
++ }
++ }
+
+- if(test_verbose_level__ >= 3) {
+- test_line_indent__(1);
+- if(test_current_failures__ == 0) {
+- test_print_in_color__(TEST_COLOR_GREEN_INTENSIVE__, "SUCCESS: ");
++ test_timer_get_time_(&test_timer_start_);
++ test->func();
++aborted:
++ test_abort_has_jmp_buf_ = 0;
++ test_timer_get_time_(&test_timer_end_);
++
++ if(test_verbose_level_ >= 3) {
++ test_line_indent_(1);
++ if(test_current_failures_ == 0) {
++ test_print_in_color_(TEST_COLOR_GREEN_INTENSIVE_, "SUCCESS: ");
+ printf("All conditions have passed.\n");
+
+- if(test_timer__) {
+- test_line_indent__(1);
++ if(test_timer_) {
++ test_line_indent_(1);
+ printf("Duration: ");
+- test_timer_print_diff__();
++ test_timer_print_diff_();
+ printf("\n");
+ }
+ } else {
+- test_print_in_color__(TEST_COLOR_RED_INTENSIVE__, "FAILED: ");
+- printf("%d condition%s %s failed.\n",
+- test_current_failures__,
+- (test_current_failures__ == 1) ? "" : "s",
+- (test_current_failures__ == 1) ? "has" : "have");
++ test_print_in_color_(TEST_COLOR_RED_INTENSIVE_, "FAILED: ");
++ if(!test_was_aborted_) {
++ printf("%d condition%s %s failed.\n",
++ test_current_failures_,
++ (test_current_failures_ == 1) ? "" : "s",
++ (test_current_failures_ == 1) ? "has" : "have");
++ } else {
++ printf("Aborted.\n");
++ }
+ }
+ printf("\n");
+- } else if(test_verbose_level__ >= 1 && test_current_failures__ == 0) {
+- test_finish_test_line__(0);
++ } else if(test_verbose_level_ >= 1 && test_current_failures_ == 0) {
++ test_finish_test_line_(0);
+ }
+
+- test_case__(NULL);
+- test_current_unit__ = NULL;
+- return (test_current_failures__ == 0) ? 0 : -1;
++ test_case_(NULL);
++ test_current_unit_ = NULL;
++ return (test_current_failures_ == 0) ? 0 : -1;
+
+ #ifdef __cplusplus
+ } catch(std::exception& e) {
+ const char* what = e.what();
++ test_check_(0, NULL, 0, "Threw std::exception");
+ if(what != NULL)
+- test_error__("Threw std::exception: %s", what);
+- else
+- test_error__("Threw std::exception");
++ test_message_("std::exception::what(): %s", what);
++
++ if(test_verbose_level_ >= 3) {
++ test_line_indent_(1);
++ test_print_in_color_(TEST_COLOR_RED_INTENSIVE_, "FAILED: ");
++ printf("C++ exception.\n\n");
++ }
++
+ return -1;
+ } catch(...) {
+- test_error__("Threw an exception");
++ test_check_(0, NULL, 0, "Threw an exception");
++
++ if(test_verbose_level_ >= 3) {
++ test_line_indent_(1);
++ test_print_in_color_(TEST_COLOR_RED_INTENSIVE_, "FAILED: ");
++ printf("C++ exception.\n\n");
++ }
++
+ return -1;
+ }
+ #endif
+ }
+
+ /* Trigger the unit test. If possible (and not suppressed) it starts a child
+- * process who calls test_do_run__(), otherwise it calls test_do_run__()
++ * process who calls test_do_run_(), otherwise it calls test_do_run_()
+ * directly. */
+ static void
+-test_run__(const struct test__* test, int index, int master_index)
++test_run_(const struct test_* test, int index, int master_index)
+ {
+ int failed = 1;
+- test_timer_type__ start, end;
++ test_timer_type_ start, end;
+
+- test_current_unit__ = test;
+- test_current_already_logged__ = 0;
+- test_timer_get_time__(&start);
++ test_current_unit_ = test;
++ test_current_already_logged_ = 0;
++ test_timer_get_time_(&start);
+
+- if(!test_no_exec__) {
++ if(!test_no_exec_) {
+
+-#if defined(ACUTEST_UNIX__)
++#if defined(ACUTEST_UNIX_)
+
+ pid_t pid;
+ int exit_code;
+@@ -955,11 +1033,12 @@ test_run__(const struct test__* test, int index, int master_index)
+
+ pid = fork();
+ if(pid == (pid_t)-1) {
+- test_error__("Cannot fork. %s [%d]", strerror(errno), errno);
++ test_error_("Cannot fork. %s [%d]", strerror(errno), errno);
+ failed = 1;
+ } else if(pid == 0) {
+ /* Child: Do the test. */
+- failed = (test_do_run__(test, index) != 0);
++ test_worker_ = 1;
++ failed = (test_do_run_(test, index) != 0);
+ exit(failed ? 1 : 0);
+ } else {
+ /* Parent: Wait until child terminates and analyze its exit code. */
+@@ -968,7 +1047,7 @@ test_run__(const struct test__* test, int index, int master_index)
+ switch(WEXITSTATUS(exit_code)) {
+ case 0: failed = 0; break; /* test has passed. */
+ case 1: /* noop */ break; /* "normal" failure. */
+- default: test_error__("Unexpected exit code [%d]", WEXITSTATUS(exit_code));
++ default: test_error_("Unexpected exit code [%d]", WEXITSTATUS(exit_code));
+ }
+ } else if(WIFSIGNALED(exit_code)) {
+ char tmp[32];
+@@ -984,13 +1063,13 @@ test_run__(const struct test__* test, int index, int master_index)
+ case SIGTERM: signame = "SIGTERM"; break;
+ default: sprintf(tmp, "signal %d", WTERMSIG(exit_code)); signame = tmp; break;
+ }
+- test_error__("Test interrupted by %s", signame);
++ test_error_("Test interrupted by %s.", signame);
+ } else {
+- test_error__("Test ended in an unexpected way [%d]", exit_code);
++ test_error_("Test ended in an unexpected way [%d].", exit_code);
+ }
+ }
+
+-#elif defined(ACUTEST_WIN__)
++#elif defined(ACUTEST_WIN_)
+
+ char buffer[512] = {0};
+ STARTUPINFOA startupInfo;
+@@ -1001,9 +1080,9 @@ test_run__(const struct test__* test, int index, int master_index)
+ * through a command line arguments. */
+ _snprintf(buffer, sizeof(buffer)-1,
+ "%s --worker=%d %s --no-exec --no-summary %s --verbose=%d --color=%s -- \"%s\"",
+- test_argv0__, index, test_timer__ ? "--timer" : "",
+- test_tap__ ? "--tap" : "", test_verbose_level__,
+- test_colorize__ ? "always" : "never",
++ test_argv0_, index, test_timer_ ? "--time" : "",
++ test_tap_ ? "--tap" : "", test_verbose_level_,
++ test_colorize_ ? "always" : "never",
+ test->name);
+ memset(&startupInfo, 0, sizeof(startupInfo));
+ startupInfo.cb = sizeof(STARTUPINFO);
+@@ -1013,70 +1092,79 @@ test_run__(const struct test__* test, int index, int master_index)
+ CloseHandle(processInfo.hThread);
+ CloseHandle(processInfo.hProcess);
+ failed = (exitCode != 0);
++ if(exitCode > 1) {
++ switch(exitCode) {
++ case 3: test_error_("Aborted."); break;
++ case 0xC0000005: test_error_("Access violation."); break;
++ default: test_error_("Test ended in an unexpected way [%lu].", exitCode); break;
++ }
++ }
+ } else {
+- test_error__("Cannot create unit test subprocess [%ld].", GetLastError());
++ test_error_("Cannot create unit test subprocess [%ld].", GetLastError());
+ failed = 1;
+ }
+
+ #else
+
+ /* A platform where we don't know how to run child process. */
+- failed = (test_do_run__(test, index) != 0);
++ failed = (test_do_run_(test, index) != 0);
+
+ #endif
+
+ } else {
+ /* Child processes suppressed through --no-exec. */
+- failed = (test_do_run__(test, index) != 0);
++ failed = (test_do_run_(test, index) != 0);
+ }
+- test_timer_get_time__(&end);
++ test_timer_get_time_(&end);
+
+- test_current_unit__ = NULL;
++ test_current_unit_ = NULL;
+
+- test_stat_run_units__++;
++ test_stat_run_units_++;
+ if(failed)
+- test_stat_failed_units__++;
++ test_stat_failed_units_++;
+
+- test_set_success__(master_index, !failed);
+- test_set_duration__(master_index, test_timer_diff__(start, end));
++ test_set_success_(master_index, !failed);
++ test_set_duration_(master_index, test_timer_diff_(start, end));
+ }
+
+-#if defined(ACUTEST_WIN__)
++#if defined(ACUTEST_WIN_)
+ /* Callback for SEH events. */
+ static LONG CALLBACK
+-test_exception_filter__(EXCEPTION_POINTERS *ptrs)
++test_seh_exception_filter_(EXCEPTION_POINTERS *ptrs)
+ {
+- test_error__("Unhandled SEH exception %08lx at %p.",
+- ptrs->ExceptionRecord->ExceptionCode,
+- ptrs->ExceptionRecord->ExceptionAddress);
++ test_check_(0, NULL, 0, "Unhandled SEH exception");
++ test_message_("Exception code: 0x%08lx", ptrs->ExceptionRecord->ExceptionCode);
++ test_message_("Exception address: 0x%p", ptrs->ExceptionRecord->ExceptionAddress);
++
+ fflush(stdout);
+ fflush(stderr);
++
+ return EXCEPTION_EXECUTE_HANDLER;
+ }
+ #endif
+
+
+-#define TEST_CMDLINE_OPTFLAG_OPTIONALARG__ 0x0001
+-#define TEST_CMDLINE_OPTFLAG_REQUIREDARG__ 0x0002
++#define TEST_CMDLINE_OPTFLAG_OPTIONALARG_ 0x0001
++#define TEST_CMDLINE_OPTFLAG_REQUIREDARG_ 0x0002
+
+-#define TEST_CMDLINE_OPTID_NONE__ 0
+-#define TEST_CMDLINE_OPTID_UNKNOWN__ (-0x7fffffff + 0)
+-#define TEST_CMDLINE_OPTID_MISSINGARG__ (-0x7fffffff + 1)
+-#define TEST_CMDLINE_OPTID_BOGUSARG__ (-0x7fffffff + 2)
++#define TEST_CMDLINE_OPTID_NONE_ 0
++#define TEST_CMDLINE_OPTID_UNKNOWN_ (-0x7fffffff + 0)
++#define TEST_CMDLINE_OPTID_MISSINGARG_ (-0x7fffffff + 1)
++#define TEST_CMDLINE_OPTID_BOGUSARG_ (-0x7fffffff + 2)
+
+-typedef struct TEST_CMDLINE_OPTION__ {
++typedef struct TEST_CMDLINE_OPTION_ {
+ char shortname;
+ const char* longname;
+ int id;
+ unsigned flags;
+-} TEST_CMDLINE_OPTION__;
++} TEST_CMDLINE_OPTION_;
+
+ static int
+-test_cmdline_handle_short_opt_group__(const TEST_CMDLINE_OPTION__* options,
++test_cmdline_handle_short_opt_group_(const TEST_CMDLINE_OPTION_* options,
+ const char* arggroup,
+ int (*callback)(int /*optval*/, const char* /*arg*/))
+ {
+- const TEST_CMDLINE_OPTION__* opt;
++ const TEST_CMDLINE_OPTION_* opt;
+ int i;
+ int ret = 0;
+
+@@ -1086,7 +1174,7 @@ test_cmdline_handle_short_opt_group__(const TEST_CMDLINE_OPTION__* options,
+ break;
+ }
+
+- if(opt->id != 0 && !(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG__)) {
++ if(opt->id != 0 && !(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG_)) {
+ ret = callback(opt->id, NULL);
+ } else {
+ /* Unknown option. */
+@@ -1094,7 +1182,7 @@ test_cmdline_handle_short_opt_group__(const TEST_CMDLINE_OPTION__* options,
+ badoptname[0] = '-';
+ badoptname[1] = arggroup[i];
+ badoptname[2] = '\0';
+- ret = callback((opt->id != 0 ? TEST_CMDLINE_OPTID_MISSINGARG__ : TEST_CMDLINE_OPTID_UNKNOWN__),
++ ret = callback((opt->id != 0 ? TEST_CMDLINE_OPTID_MISSINGARG_ : TEST_CMDLINE_OPTID_UNKNOWN_),
+ badoptname);
+ }
+
+@@ -1105,31 +1193,31 @@ test_cmdline_handle_short_opt_group__(const TEST_CMDLINE_OPTION__* options,
+ return ret;
+ }
+
+-#define TEST_CMDLINE_AUXBUF_SIZE__ 32
++#define TEST_CMDLINE_AUXBUF_SIZE_ 32
+
+ static int
+-test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
++test_cmdline_read_(const TEST_CMDLINE_OPTION_* options, int argc, char** argv,
+ int (*callback)(int /*optval*/, const char* /*arg*/))
+ {
+
+- const TEST_CMDLINE_OPTION__* opt;
+- char auxbuf[TEST_CMDLINE_AUXBUF_SIZE__+1];
++ const TEST_CMDLINE_OPTION_* opt;
++ char auxbuf[TEST_CMDLINE_AUXBUF_SIZE_+1];
+ int after_doubledash = 0;
+ int i = 1;
+ int ret = 0;
+
+- auxbuf[TEST_CMDLINE_AUXBUF_SIZE__] = '\0';
++ auxbuf[TEST_CMDLINE_AUXBUF_SIZE_] = '\0';
+
+ while(i < argc) {
+ if(after_doubledash || strcmp(argv[i], "-") == 0) {
+ /* Non-option argument. */
+- ret = callback(TEST_CMDLINE_OPTID_NONE__, argv[i]);
++ ret = callback(TEST_CMDLINE_OPTID_NONE_, argv[i]);
+ } else if(strcmp(argv[i], "--") == 0) {
+ /* End of options. All the remaining members are non-option arguments. */
+ after_doubledash = 1;
+ } else if(argv[i][0] != '-') {
+ /* Non-option argument. */
+- ret = callback(TEST_CMDLINE_OPTID_NONE__, argv[i]);
++ ret = callback(TEST_CMDLINE_OPTID_NONE_, argv[i]);
+ } else {
+ for(opt = options; opt->id != 0; opt++) {
+ if(opt->longname != NULL && strncmp(argv[i], "--", 2) == 0) {
+@@ -1138,18 +1226,18 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ /* Regular long option. */
+ if(argv[i][2+len] == '\0') {
+ /* with no argument provided. */
+- if(!(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG__))
++ if(!(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG_))
+ ret = callback(opt->id, NULL);
+ else
+- ret = callback(TEST_CMDLINE_OPTID_MISSINGARG__, argv[i]);
++ ret = callback(TEST_CMDLINE_OPTID_MISSINGARG_, argv[i]);
+ break;
+ } else if(argv[i][2+len] == '=') {
+ /* with an argument provided. */
+- if(opt->flags & (TEST_CMDLINE_OPTFLAG_OPTIONALARG__ | TEST_CMDLINE_OPTFLAG_REQUIREDARG__)) {
++ if(opt->flags & (TEST_CMDLINE_OPTFLAG_OPTIONALARG_ | TEST_CMDLINE_OPTFLAG_REQUIREDARG_)) {
+ ret = callback(opt->id, argv[i]+2+len+1);
+ } else {
+ sprintf(auxbuf, "--%s", opt->longname);
+- ret = callback(TEST_CMDLINE_OPTID_BOGUSARG__, auxbuf);
++ ret = callback(TEST_CMDLINE_OPTID_BOGUSARG_, auxbuf);
+ }
+ break;
+ } else {
+@@ -1159,13 +1247,13 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ } else if(opt->shortname != '\0' && argv[i][0] == '-') {
+ if(argv[i][1] == opt->shortname) {
+ /* Regular short option. */
+- if(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG__) {
++ if(opt->flags & TEST_CMDLINE_OPTFLAG_REQUIREDARG_) {
+ if(argv[i][2] != '\0')
+ ret = callback(opt->id, argv[i]+2);
+ else if(i+1 < argc)
+ ret = callback(opt->id, argv[++i]);
+ else
+- ret = callback(TEST_CMDLINE_OPTID_MISSINGARG__, argv[i]);
++ ret = callback(TEST_CMDLINE_OPTID_MISSINGARG_, argv[i]);
+ break;
+ } else {
+ ret = callback(opt->id, NULL);
+@@ -1173,7 +1261,7 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ /* There might be more (argument-less) short options
+ * grouped together. */
+ if(ret == 0 && argv[i][2] != '\0')
+- ret = test_cmdline_handle_short_opt_group__(options, argv[i]+2, callback);
++ ret = test_cmdline_handle_short_opt_group_(options, argv[i]+2, callback);
+ break;
+ }
+ }
+@@ -1183,7 +1271,7 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ if(opt->id == 0) { /* still not handled? */
+ if(argv[i][0] != '-') {
+ /* Non-option argument. */
+- ret = callback(TEST_CMDLINE_OPTID_NONE__, argv[i]);
++ ret = callback(TEST_CMDLINE_OPTID_NONE_, argv[i]);
+ } else {
+ /* Unknown option. */
+ char* badoptname = argv[i];
+@@ -1193,15 +1281,15 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ char* assignment = strchr(badoptname, '=');
+ if(assignment != NULL) {
+ size_t len = assignment - badoptname;
+- if(len > TEST_CMDLINE_AUXBUF_SIZE__)
+- len = TEST_CMDLINE_AUXBUF_SIZE__;
++ if(len > TEST_CMDLINE_AUXBUF_SIZE_)
++ len = TEST_CMDLINE_AUXBUF_SIZE_;
+ strncpy(auxbuf, badoptname, len);
+ auxbuf[len] = '\0';
+ badoptname = auxbuf;
+ }
+ }
+
+- ret = callback(TEST_CMDLINE_OPTID_UNKNOWN__, badoptname);
++ ret = callback(TEST_CMDLINE_OPTID_UNKNOWN_, badoptname);
+ }
+ }
+ }
+@@ -1215,9 +1303,9 @@ test_cmdline_read__(const TEST_CMDLINE_OPTION__* options, int argc, char** argv,
+ }
+
+ static void
+-test_help__(void)
++test_help_(void)
+ {
+- printf("Usage: %s [options] [test...]\n", test_argv0__);
++ printf("Usage: %s [options] [test...]\n", test_argv0_);
+ printf("\n");
+ printf("Run the specified unit tests; or if the option '--skip' is used, run all\n");
+ printf("tests in the suite but those listed. By default, if no tests are specified\n");
+@@ -1227,14 +1315,14 @@ test_help__(void)
+ printf(" -s, --skip Execute all unit tests but the listed ones\n");
+ printf(" --exec[=WHEN] If supported, execute unit tests as child processes\n");
+ printf(" (WHEN is one of 'auto', 'always', 'never')\n");
+-#if defined ACUTEST_WIN__
+- printf(" -t, --timer Measure test duration\n");
+-#elif defined ACUTEST_HAS_POSIX_TIMER__
+- printf(" -t, --timer Measure test duration (real time)\n");
+- printf(" --timer=TIMER Measure test duration, using given timer\n");
++ printf(" -E, --no-exec Same as --exec=never\n");
++#if defined ACUTEST_WIN_
++ printf(" -t, --time Measure test duration\n");
++#elif defined ACUTEST_HAS_POSIX_TIMER_
++ printf(" -t, --time Measure test duration (real time)\n");
++ printf(" --time=TIMER Measure test duration, using given timer\n");
+ printf(" (TIMER is one of 'real', 'cpu')\n");
+ #endif
+- printf(" -E, --no-exec Same as --exec=never\n");
+ printf(" --no-summary Suppress printing of test results summary\n");
+ printf(" --tap Produce TAP-compliant output\n");
+ printf(" (See https://testanything.org/)\n");
+@@ -1246,151 +1334,159 @@ test_help__(void)
+ printf(" 1 ... Output one line per test (and summary)\n");
+ printf(" 2 ... As 1 and failed conditions (this is default)\n");
+ printf(" 3 ... As 1 and all conditions (and extended summary)\n");
++ printf(" -q, --quiet Same as --verbose=0\n");
+ printf(" --color[=WHEN] Enable colorized output\n");
+ printf(" (WHEN is one of 'auto', 'always', 'never')\n");
+ printf(" --no-color Same as --color=never\n");
+ printf(" -h, --help Display this help and exit\n");
+
+- if(test_list_size__ < 16) {
++ if(test_list_size_ < 16) {
+ printf("\n");
+- test_list_names__();
++ test_list_names_();
+ }
+ }
+
+-static const TEST_CMDLINE_OPTION__ test_cmdline_options__[] = {
++static const TEST_CMDLINE_OPTION_ test_cmdline_options_[] = {
+ { 's', "skip", 's', 0 },
+- { 0, "exec", 'e', TEST_CMDLINE_OPTFLAG_OPTIONALARG__ },
++ { 0, "exec", 'e', TEST_CMDLINE_OPTFLAG_OPTIONALARG_ },
+ { 'E', "no-exec", 'E', 0 },
+-#if defined ACUTEST_WIN__
+- { 't', "timer", 't', 0 },
+-#elif defined ACUTEST_HAS_POSIX_TIMER__
+- { 't', "timer", 't', TEST_CMDLINE_OPTFLAG_OPTIONALARG__ },
++#if defined ACUTEST_WIN_
++ { 't', "time", 't', 0 },
++ { 0, "timer", 't', 0 }, /* kept for compatibility */
++#elif defined ACUTEST_HAS_POSIX_TIMER_
++ { 't', "time", 't', TEST_CMDLINE_OPTFLAG_OPTIONALARG_ },
++ { 0, "timer", 't', TEST_CMDLINE_OPTFLAG_OPTIONALARG_ }, /* kept for compatibility */
+ #endif
+ { 0, "no-summary", 'S', 0 },
+ { 0, "tap", 'T', 0 },
+ { 'l', "list", 'l', 0 },
+- { 'v', "verbose", 'v', TEST_CMDLINE_OPTFLAG_OPTIONALARG__ },
+- { 0, "color", 'c', TEST_CMDLINE_OPTFLAG_OPTIONALARG__ },
++ { 'v', "verbose", 'v', TEST_CMDLINE_OPTFLAG_OPTIONALARG_ },
++ { 'q', "quiet", 'q', 0 },
++ { 0, "color", 'c', TEST_CMDLINE_OPTFLAG_OPTIONALARG_ },
+ { 0, "no-color", 'C', 0 },
+ { 'h', "help", 'h', 0 },
+- { 0, "worker", 'w', TEST_CMDLINE_OPTFLAG_REQUIREDARG__ }, /* internal */
+- { 'x', "xml-output", 'x', TEST_CMDLINE_OPTFLAG_REQUIREDARG__ },
++ { 0, "worker", 'w', TEST_CMDLINE_OPTFLAG_REQUIREDARG_ }, /* internal */
++ { 'x', "xml-output", 'x', TEST_CMDLINE_OPTFLAG_REQUIREDARG_ },
+ { 0, NULL, 0, 0 }
+ };
+
+ static int
+-test_cmdline_callback__(int id, const char* arg)
++test_cmdline_callback_(int id, const char* arg)
+ {
+ switch(id) {
+ case 's':
+- test_skip_mode__ = 1;
++ test_skip_mode_ = 1;
+ break;
+
+ case 'e':
+ if(arg == NULL || strcmp(arg, "always") == 0) {
+- test_no_exec__ = 0;
++ test_no_exec_ = 0;
+ } else if(strcmp(arg, "never") == 0) {
+- test_no_exec__ = 1;
++ test_no_exec_ = 1;
+ } else if(strcmp(arg, "auto") == 0) {
+ /*noop*/
+ } else {
+- fprintf(stderr, "%s: Unrecognized argument '%s' for option --exec.\n", test_argv0__, arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "%s: Unrecognized argument '%s' for option --exec.\n", test_argv0_, arg);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+ }
+ break;
+
+ case 'E':
+- test_no_exec__ = 1;
++ test_no_exec_ = 1;
+ break;
+
+ case 't':
+-#if defined ACUTEST_WIN__ || defined ACUTEST_HAS_POSIX_TIMER__
++#if defined ACUTEST_WIN_ || defined ACUTEST_HAS_POSIX_TIMER_
+ if(arg == NULL || strcmp(arg, "real") == 0) {
+- test_timer__ = 1;
+- #ifndef ACUTEST_WIN__
++ test_timer_ = 1;
++ #ifndef ACUTEST_WIN_
+ } else if(strcmp(arg, "cpu") == 0) {
+- test_timer__ = 2;
++ test_timer_ = 2;
+ #endif
+ } else {
+- fprintf(stderr, "%s: Unrecognized argument '%s' for option --timer.\n", test_argv0__, arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "%s: Unrecognized argument '%s' for option --time.\n", test_argv0_, arg);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+ }
+ #endif
+ break;
+
+ case 'S':
+- test_no_summary__ = 1;
++ test_no_summary_ = 1;
+ break;
+
+ case 'T':
+- test_tap__ = 1;
++ test_tap_ = 1;
+ break;
+
+ case 'l':
+- test_list_names__();
++ test_list_names_();
+ exit(0);
+
+ case 'v':
+- test_verbose_level__ = (arg != NULL ? atoi(arg) : test_verbose_level__+1);
++ test_verbose_level_ = (arg != NULL ? atoi(arg) : test_verbose_level_+1);
++ break;
++
++ case 'q':
++ test_verbose_level_ = 0;
+ break;
+
+ case 'c':
+ if(arg == NULL || strcmp(arg, "always") == 0) {
+- test_colorize__ = 1;
++ test_colorize_ = 1;
+ } else if(strcmp(arg, "never") == 0) {
+- test_colorize__ = 0;
++ test_colorize_ = 0;
+ } else if(strcmp(arg, "auto") == 0) {
+ /*noop*/
+ } else {
+- fprintf(stderr, "%s: Unrecognized argument '%s' for option --color.\n", test_argv0__, arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "%s: Unrecognized argument '%s' for option --color.\n", test_argv0_, arg);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+ }
+ break;
+
+ case 'C':
+- test_colorize__ = 0;
++ test_colorize_ = 0;
+ break;
+
+ case 'h':
+- test_help__();
++ test_help_();
+ exit(0);
+
+ case 'w':
+- test_worker__ = 1;
+- test_worker_index__ = atoi(arg);
++ test_worker_ = 1;
++ test_worker_index_ = atoi(arg);
+ break;
+ case 'x':
+- test_xml_output__ = fopen(arg, "w");
+- if (!test_xml_output__) {
++ test_xml_output_ = fopen(arg, "w");
++ if (!test_xml_output_) {
+ fprintf(stderr, "Unable to open '%s': %s\n", arg, strerror(errno));
+ exit(2);
+ }
+ break;
+
+ case 0:
+- if(test_lookup__(arg) == 0) {
+- fprintf(stderr, "%s: Unrecognized unit test '%s'\n", test_argv0__, arg);
+- fprintf(stderr, "Try '%s --list' for list of unit tests.\n", test_argv0__);
++ if(test_lookup_(arg) == 0) {
++ fprintf(stderr, "%s: Unrecognized unit test '%s'\n", test_argv0_, arg);
++ fprintf(stderr, "Try '%s --list' for list of unit tests.\n", test_argv0_);
+ exit(2);
+ }
+ break;
+
+- case TEST_CMDLINE_OPTID_UNKNOWN__:
++ case TEST_CMDLINE_OPTID_UNKNOWN_:
+ fprintf(stderr, "Unrecognized command line option '%s'.\n", arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+
+- case TEST_CMDLINE_OPTID_MISSINGARG__:
++ case TEST_CMDLINE_OPTID_MISSINGARG_:
+ fprintf(stderr, "The command line option '%s' requires an argument.\n", arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+
+- case TEST_CMDLINE_OPTID_BOGUSARG__:
++ case TEST_CMDLINE_OPTID_BOGUSARG_:
+ fprintf(stderr, "The command line option '%s' does not expect an argument.\n", arg);
+- fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0__);
++ fprintf(stderr, "Try '%s --help' for more information.\n", test_argv0_);
+ exit(2);
+ }
+
+@@ -1398,37 +1494,48 @@ test_cmdline_callback__(int id, const char* arg)
+ }
+
+
+-#ifdef ACUTEST_LINUX__
++#ifdef ACUTEST_LINUX_
+ static int
+-test_is_tracer_present__(void)
++test_is_tracer_present_(void)
+ {
+- char buf[256+32+1];
++ /* Must be large enough so the line 'TracerPid: ${PID}' can fit in. */
++ static const int OVERLAP = 32;
++
++ char buf[256+OVERLAP+1];
+ int tracer_present = 0;
+ int fd;
+- ssize_t n_read;
++ size_t n_read = 0;
+
+ fd = open("/proc/self/status", O_RDONLY);
+ if(fd == -1)
+ return 0;
+
+- n_read = read(fd, buf, sizeof(buf)-1);
+- while(n_read > 0) {
++ while(1) {
+ static const char pattern[] = "TracerPid:";
+ const char* field;
+
++ while(n_read < sizeof(buf) - 1) {
++ ssize_t n;
++
++ n = read(fd, buf + n_read, sizeof(buf) - 1 - n_read);
++ if(n <= 0)
++ break;
++ n_read += n;
++ }
+ buf[n_read] = '\0';
++
+ field = strstr(buf, pattern);
+- if(field != NULL && field < buf + sizeof(buf) - 32) {
++ if(field != NULL && field < buf + sizeof(buf) - OVERLAP) {
+ pid_t tracer_pid = (pid_t) atoi(field + sizeof(pattern) - 1);
+ tracer_present = (tracer_pid != 0);
+ break;
+ }
+
+ if(n_read == sizeof(buf)-1) {
+- memmove(buf, buf + sizeof(buf)-1 - 32, 32);
+- n_read = read(fd, buf+32, sizeof(buf)-1-32);
+- if(n_read > 0)
+- n_read += 32;
++ memmove(buf, buf + sizeof(buf)-1 - OVERLAP, OVERLAP);
++ n_read = OVERLAP;
++ } else {
++ break;
+ }
+ }
+
+@@ -1441,141 +1548,147 @@ int
+ main(int argc, char** argv)
+ {
+ int i;
+- test_argv0__ = argv[0];
++ test_argv0_ = argv[0];
+
+-#if defined ACUTEST_UNIX__
+- test_colorize__ = isatty(STDOUT_FILENO);
+-#elif defined ACUTEST_WIN__
+- #if defined __BORLANDC__
+- test_colorize__ = isatty(_fileno(stdout));
++#if defined ACUTEST_UNIX_
++ test_colorize_ = isatty(STDOUT_FILENO);
++#elif defined ACUTEST_WIN_
++ #if defined _BORLANDC_
++ test_colorize_ = isatty(_fileno(stdout));
+ #else
+- test_colorize__ = _isatty(_fileno(stdout));
++ test_colorize_ = _isatty(_fileno(stdout));
+ #endif
+ #else
+- test_colorize__ = 0;
++ test_colorize_ = 0;
+ #endif
+
+- test_timer_init__();
+-
+ /* Count all test units */
+- test_list_size__ = 0;
+- for(i = 0; test_list__[i].func != NULL; i++)
+- test_list_size__++;
++ test_list_size_ = 0;
++ for(i = 0; test_list_[i].func != NULL; i++)
++ test_list_size_++;
+
+- test_details__ = (struct test_detail__*)calloc(test_list_size__, sizeof(struct test_detail__));
+- if(test_details__ == NULL) {
++ test_details_ = (struct test_detail_*)calloc(test_list_size_, sizeof(struct test_detail_));
++ if(test_details_ == NULL) {
+ fprintf(stderr, "Out of memory.\n");
+ exit(2);
+ }
+
+ /* Parse options */
+- test_cmdline_read__(test_cmdline_options__, argc, argv, test_cmdline_callback__);
++ test_cmdline_read_(test_cmdline_options_, argc, argv, test_cmdline_callback_);
+
+-#if defined(ACUTEST_WIN__)
+- SetUnhandledExceptionFilter(test_exception_filter__);
++ /* Initialize the proper timer. */
++ test_timer_init_();
++
++#if defined(ACUTEST_WIN_)
++ SetUnhandledExceptionFilter(test_seh_exception_filter_);
+ #endif
+
+ /* By default, we want to run all tests. */
+- if(test_count__ == 0) {
+- for(i = 0; test_list__[i].func != NULL; i++)
+- test_remember__(i);
++ if(test_count_ == 0) {
++ for(i = 0; test_list_[i].func != NULL; i++)
++ test_remember_(i);
+ }
+
+ /* Guess whether we want to run unit tests as child processes. */
+- if(test_no_exec__ < 0) {
+- test_no_exec__ = 0;
++ if(test_no_exec_ < 0) {
++ test_no_exec_ = 0;
+
+- if(test_count__ <= 1) {
+- test_no_exec__ = 1;
++ if(test_count_ <= 1) {
++ test_no_exec_ = 1;
+ } else {
+-#ifdef ACUTEST_WIN__
++#ifdef ACUTEST_WIN_
+ if(IsDebuggerPresent())
+- test_no_exec__ = 1;
++ test_no_exec_ = 1;
++#endif
++#ifdef ACUTEST_LINUX_
++ if(test_is_tracer_present_())
++ test_no_exec_ = 1;
+ #endif
+-#ifdef ACUTEST_LINUX__
+- if(test_is_tracer_present__())
+- test_no_exec__ = 1;
++#ifdef RUNNING_ON_VALGRIND
++ /* RUNNING_ON_VALGRIND is provided by valgrind.h */
++ if(RUNNING_ON_VALGRIND)
++ test_no_exec_ = 1;
+ #endif
+ }
+ }
+
+- if(test_tap__) {
++ if(test_tap_) {
+ /* TAP requires we know test result ("ok", "not ok") before we output
+ * anything about the test, and this gets problematic for larger verbose
+ * levels. */
+- if(test_verbose_level__ > 2)
+- test_verbose_level__ = 2;
++ if(test_verbose_level_ > 2)
++ test_verbose_level_ = 2;
+
+ /* TAP harness should provide some summary. */
+- test_no_summary__ = 1;
++ test_no_summary_ = 1;
+
+- if(!test_worker__)
+- printf("1..%d\n", (int) test_count__);
++ if(!test_worker_)
++ printf("1..%d\n", (int) test_count_);
+ }
+
+- int index = test_worker_index__;
+- for(i = 0; test_list__[i].func != NULL; i++) {
+- int run = (test_details__[i].flags & TEST_FLAG_RUN__);
+- if (test_skip_mode__) /* Run all tests except those listed. */
++ int index = test_worker_index_;
++ for(i = 0; test_list_[i].func != NULL; i++) {
++ int run = (test_details_[i].flags & TEST_FLAG_RUN_);
++ if (test_skip_mode_) /* Run all tests except those listed. */
+ run = !run;
+ if(run)
+- test_run__(&test_list__[i], index++, i);
++ test_run_(&test_list_[i], index++, i);
+ }
+
+ /* Write a summary */
+- if(!test_no_summary__ && test_verbose_level__ >= 1) {
+- if(test_verbose_level__ >= 3) {
+- test_print_in_color__(TEST_COLOR_DEFAULT_INTENSIVE__, "Summary:\n");
+-
+- printf(" Count of all unit tests: %4d\n", (int) test_list_size__);
+- printf(" Count of run unit tests: %4d\n", test_stat_run_units__);
+- printf(" Count of failed unit tests: %4d\n", test_stat_failed_units__);
+- printf(" Count of skipped unit tests: %4d\n", (int) test_list_size__ - test_stat_run_units__);
++ if(!test_no_summary_ && test_verbose_level_ >= 1) {
++ if(test_verbose_level_ >= 3) {
++ test_print_in_color_(TEST_COLOR_DEFAULT_INTENSIVE_, "Summary:\n");
++
++ printf(" Count of all unit tests: %4d\n", (int) test_list_size_);
++ printf(" Count of run unit tests: %4d\n", test_stat_run_units_);
++ printf(" Count of failed unit tests: %4d\n", test_stat_failed_units_);
++ printf(" Count of skipped unit tests: %4d\n", (int) test_list_size_ - test_stat_run_units_);
+ }
+
+- if(test_stat_failed_units__ == 0) {
+- test_print_in_color__(TEST_COLOR_GREEN_INTENSIVE__, "SUCCESS:");
++ if(test_stat_failed_units_ == 0) {
++ test_print_in_color_(TEST_COLOR_GREEN_INTENSIVE_, "SUCCESS:");
+ printf(" All unit tests have passed.\n");
+ } else {
+- test_print_in_color__(TEST_COLOR_RED_INTENSIVE__, "FAILED:");
++ test_print_in_color_(TEST_COLOR_RED_INTENSIVE_, "FAILED:");
+ printf(" %d of %d unit tests %s failed.\n",
+- test_stat_failed_units__, test_stat_run_units__,
+- (test_stat_failed_units__ == 1) ? "has" : "have");
++ test_stat_failed_units_, test_stat_run_units_,
++ (test_stat_failed_units_ == 1) ? "has" : "have");
+ }
+
+- if(test_verbose_level__ >= 3)
++ if(test_verbose_level_ >= 3)
+ printf("\n");
+ }
+
+- if (test_xml_output__) {
+-#if defined ACUTEST_UNIX__
++ if (test_xml_output_) {
++#if defined ACUTEST_UNIX_
+ char *suite_name = basename(argv[0]);
+-#elif defined ACUTEST_WIN__
++#elif defined ACUTEST_WIN_
+ char suite_name[_MAX_FNAME];
+ _splitpath(argv[0], NULL, NULL, suite_name, NULL);
+ #else
+ const char *suite_name = argv[0];
+ #endif
+- fprintf(test_xml_output__, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
+- fprintf(test_xml_output__, "<testsuite name=\"%s\" tests=\"%d\" errors=\"%d\" failures=\"%d\" skip=\"%d\">\n",
+- suite_name, (int)test_list_size__, test_stat_failed_units__, test_stat_failed_units__,
+- (int)test_list_size__ - test_stat_run_units__);
+- for(i = 0; test_list__[i].func != NULL; i++) {
+- struct test_detail__ *details = &test_details__[i];
+- fprintf(test_xml_output__, " <testcase name=\"%s\" time=\"%.2f\">\n", test_list__[i].name, details->duration);
+- if (details->flags & TEST_FLAG_FAILURE__)
+- fprintf(test_xml_output__, " <failure />\n");
+- if (!(details->flags & TEST_FLAG_FAILURE__) && !(details->flags & TEST_FLAG_SUCCESS__))
+- fprintf(test_xml_output__, " <skipped />\n");
+- fprintf(test_xml_output__, " </testcase>\n");
++ fprintf(test_xml_output_, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
++ fprintf(test_xml_output_, "<testsuite name=\"%s\" tests=\"%d\" errors=\"%d\" failures=\"%d\" skip=\"%d\">\n",
++ suite_name, (int)test_list_size_, test_stat_failed_units_, test_stat_failed_units_,
++ (int)test_list_size_ - test_stat_run_units_);
++ for(i = 0; test_list_[i].func != NULL; i++) {
++ struct test_detail_ *details = &test_details_[i];
++ fprintf(test_xml_output_, " <testcase name=\"%s\" time=\"%.2f\">\n", test_list_[i].name, details->duration);
++ if (details->flags & TEST_FLAG_FAILURE_)
++ fprintf(test_xml_output_, " <failure />\n");
++ if (!(details->flags & TEST_FLAG_FAILURE_) && !(details->flags & TEST_FLAG_SUCCESS_))
++ fprintf(test_xml_output_, " <skipped />\n");
++ fprintf(test_xml_output_, " </testcase>\n");
+ }
+- fprintf(test_xml_output__, "</testsuite>\n");
+- fclose(test_xml_output__);
++ fprintf(test_xml_output_, "</testsuite>\n");
++ fclose(test_xml_output_);
+ }
+
+- free((void*) test_details__);
++ free((void*) test_details_);
+
+- return (test_stat_failed_units__ == 0) ? 0 : 1;
++ return (test_stat_failed_units_ == 0) ? 0 : 1;
+ }
+
+
+@@ -1586,4 +1699,4 @@ main(int argc, char** argv)
+ #endif
+
+
+-#endif /* #ifndef ACUTEST_H__ */
++#endif /* #ifndef ACUTEST_H */
+diff --git a/test/address/mutt_addr_cat.c b/test/address/mutt_addr_cat.c
+index 02b41be1b..b92ff0272 100644
+--- a/test/address/mutt_addr_cat.c
++++ b/test/address/mutt_addr_cat.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addr_cmp.c b/test/address/mutt_addr_cmp.c
+index 2fb99cbef..6f23b9d2c 100644
+--- a/test/address/mutt_addr_cmp.c
++++ b/test/address/mutt_addr_cmp.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addr_cmp(void)
+diff --git a/test/address/mutt_addr_copy.c b/test/address/mutt_addr_copy.c
+index c78b3e2dd..d0dce8ba8 100644
+--- a/test/address/mutt_addr_copy.c
++++ b/test/address/mutt_addr_copy.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addr_for_display.c b/test/address/mutt_addr_for_display.c
+index 9de51a0e2..750b596a6 100644
+--- a/test/address/mutt_addr_for_display.c
++++ b/test/address/mutt_addr_for_display.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addr_free.c b/test/address/mutt_addr_free.c
+index e4cfe5293..c33c39089 100644
+--- a/test/address/mutt_addr_free.c
++++ b/test/address/mutt_addr_free.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addr_free(void)
+diff --git a/test/address/mutt_addr_new.c b/test/address/mutt_addr_new.c
+index e49c178c3..61c5f1809 100644
+--- a/test/address/mutt_addr_new.c
++++ b/test/address/mutt_addr_new.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addr_new(void)
+diff --git a/test/address/mutt_addr_valid_msgid.c b/test/address/mutt_addr_valid_msgid.c
+index 6d19a6efd..4dfbf37fb 100644
+--- a/test/address/mutt_addr_valid_msgid.c
++++ b/test/address/mutt_addr_valid_msgid.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addr_valid_msgid(void)
+diff --git a/test/address/mutt_addr_write.c b/test/address/mutt_addr_write.c
+index 61eef6d84..80e7d23ee 100644
+--- a/test/address/mutt_addr_write.c
++++ b/test/address/mutt_addr_write.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_append.c b/test/address/mutt_addrlist_append.c
+index e92fb7466..e7ba8241c 100644
+--- a/test/address/mutt_addrlist_append.c
++++ b/test/address/mutt_addrlist_append.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_clear.c b/test/address/mutt_addrlist_clear.c
+index a93b4de5f..5beec0dca 100644
+--- a/test/address/mutt_addrlist_clear.c
++++ b/test/address/mutt_addrlist_clear.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_clear(void)
+diff --git a/test/address/mutt_addrlist_copy.c b/test/address/mutt_addrlist_copy.c
+index 7734399b2..aea8bcae1 100644
+--- a/test/address/mutt_addrlist_copy.c
++++ b/test/address/mutt_addrlist_copy.c
+@@ -25,7 +25,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_count_recips.c b/test/address/mutt_addrlist_count_recips.c
+index 1c40a55aa..b9b78b941 100644
+--- a/test/address/mutt_addrlist_count_recips.c
++++ b/test/address/mutt_addrlist_count_recips.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_count_recips(void)
+diff --git a/test/address/mutt_addrlist_dedupe.c b/test/address/mutt_addrlist_dedupe.c
+index 55063dd45..d9e1454d8 100644
+--- a/test/address/mutt_addrlist_dedupe.c
++++ b/test/address/mutt_addrlist_dedupe.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_equal.c b/test/address/mutt_addrlist_equal.c
+index b277df3ee..323fdfc18 100644
+--- a/test/address/mutt_addrlist_equal.c
++++ b/test/address/mutt_addrlist_equal.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_equal(void)
+diff --git a/test/address/mutt_addrlist_parse.c b/test/address/mutt_addrlist_parse.c
+index d597d0ffb..4714f6fa3 100644
+--- a/test/address/mutt_addrlist_parse.c
++++ b/test/address/mutt_addrlist_parse.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_parse2.c b/test/address/mutt_addrlist_parse2.c
+index 7fbd2a87f..18edd6c5e 100644
+--- a/test/address/mutt_addrlist_parse2.c
++++ b/test/address/mutt_addrlist_parse2.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_prepend.c b/test/address/mutt_addrlist_prepend.c
+index 8196869c6..83a904d52 100644
+--- a/test/address/mutt_addrlist_prepend.c
++++ b/test/address/mutt_addrlist_prepend.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_qualify.c b/test/address/mutt_addrlist_qualify.c
+index 93db88039..19d2de59d 100644
+--- a/test/address/mutt_addrlist_qualify.c
++++ b/test/address/mutt_addrlist_qualify.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_remove.c b/test/address/mutt_addrlist_remove.c
+index 29f560a6a..f04779bc3 100644
+--- a/test/address/mutt_addrlist_remove.c
++++ b/test/address/mutt_addrlist_remove.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_remove(void)
+diff --git a/test/address/mutt_addrlist_remove_xrefs.c b/test/address/mutt_addrlist_remove_xrefs.c
+index d67d4b42d..3da71b362 100644
+--- a/test/address/mutt_addrlist_remove_xrefs.c
++++ b/test/address/mutt_addrlist_remove_xrefs.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_search.c b/test/address/mutt_addrlist_search.c
+index 2ed87a8f7..c40577465 100644
+--- a/test/address/mutt_addrlist_search.c
++++ b/test/address/mutt_addrlist_search.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_search(void)
+@@ -33,11 +33,11 @@ void test_mutt_addrlist_search(void)
+
+ {
+ struct AddressList al = TAILQ_HEAD_INITIALIZER(al);
+- TEST_CHECK(!mutt_addrlist_search(NULL, &al));
++ TEST_CHECK(!mutt_addrlist_search(&al, NULL));
+ }
+
+ {
+ struct Address a = { 0 };
+- TEST_CHECK(!mutt_addrlist_search(&a, NULL));
++ TEST_CHECK(!mutt_addrlist_search(NULL, &a));
+ }
+ }
+diff --git a/test/address/mutt_addrlist_to_intl.c b/test/address/mutt_addrlist_to_intl.c
+index 46e3ca67a..d47728259 100644
+--- a/test/address/mutt_addrlist_to_intl.c
++++ b/test/address/mutt_addrlist_to_intl.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+diff --git a/test/address/mutt_addrlist_to_local.c b/test/address/mutt_addrlist_to_local.c
+index 78913f158..bac8b75c5 100644
+--- a/test/address/mutt_addrlist_to_local.c
++++ b/test/address/mutt_addrlist_to_local.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_addrlist_to_local(void)
+diff --git a/test/address/mutt_addrlist_write.c b/test/address/mutt_addrlist_write.c
+index 6d2956676..d5b47f737 100644
+--- a/test/address/mutt_addrlist_write.c
++++ b/test/address/mutt_addrlist_write.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "common.h"
+
+@@ -34,12 +34,12 @@ void test_mutt_addrlist_write(void)
+
+ {
+ struct AddressList al = { 0 };
+- TEST_CHECK(mutt_addrlist_write(NULL, 32, &al, false) == 0);
++ TEST_CHECK(mutt_addrlist_write(&al, NULL, 32, false) == 0);
+ }
+
+ {
+ char buf[32] = { 0 };
+- TEST_CHECK(mutt_addrlist_write(buf, sizeof(buf), NULL, false) == 0);
++ TEST_CHECK(mutt_addrlist_write(NULL, buf, sizeof(buf), false) == 0);
+ }
+
+ {
+@@ -51,28 +51,28 @@ void test_mutt_addrlist_write(void)
+
+ {
+ char buf[8] = { 0 };
+- size_t nbytes = mutt_addrlist_write(buf, sizeof(buf), &al, false);
++ size_t nbytes = mutt_addrlist_write(&al, buf, sizeof(buf), false);
+ TEST_CHECK(nbytes == sizeof(buf) - 1);
+ TEST_CHECK_STR_EQ("test@ex", buf);
+ }
+
+ {
+ char buf[24] = { 0 };
+- size_t nbytes = mutt_addrlist_write(buf, sizeof(buf), &al, false);
++ size_t nbytes = mutt_addrlist_write(&al, buf, sizeof(buf), false);
+ TEST_CHECK(nbytes == sizeof(buf) - 1);
+ TEST_CHECK_STR_EQ("test@example.com, John ", buf);
+ }
+
+ {
+ char buf[43] = { 0 };
+- size_t nbytes = mutt_addrlist_write(buf, sizeof(buf), &al, false);
++ size_t nbytes = mutt_addrlist_write(&al, buf, sizeof(buf), false);
+ TEST_CHECK(nbytes == sizeof(buf) - 1);
+ TEST_CHECK_STR_EQ("test@example.com, John Doe <john@doe.org>,", buf);
+ }
+
+ {
+ char buf[76] = { 0 };
+- size_t nbytes = mutt_addrlist_write(buf, sizeof(buf), &al, false);
++ size_t nbytes = mutt_addrlist_write(&al, buf, sizeof(buf), false);
+ TEST_CHECK(nbytes == sizeof(buf) - 1);
+ TEST_CHECK_STR_EQ("test@example.com, John Doe <john@doe.org>, \"Foo J. "
+ "Bar\" <foo-j-bar@baz.com>",
+diff --git a/test/attach/mutt_actx_add_attach.c b/test/attach/mutt_actx_add_attach.c
+index 5e95a4fc7..edc35ad73 100644
+--- a/test/attach/mutt_actx_add_attach.c
++++ b/test/attach/mutt_actx_add_attach.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/attach/mutt_actx_add_body.c b/test/attach/mutt_actx_add_body.c
+index 34e72b2ae..e5ababd37 100644
+--- a/test/attach/mutt_actx_add_body.c
++++ b/test/attach/mutt_actx_add_body.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/attach/mutt_actx_add_fp.c b/test/attach/mutt_actx_add_fp.c
+index c30afd1ba..b07489312 100644
+--- a/test/attach/mutt_actx_add_fp.c
++++ b/test/attach/mutt_actx_add_fp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/attach/mutt_actx_entries_free.c b/test/attach/mutt_actx_entries_free.c
+index 23f792cbb..f9554a8c6 100644
+--- a/test/attach/mutt_actx_entries_free.c
++++ b/test/attach/mutt_actx_entries_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/attach/mutt_actx_free.c b/test/attach/mutt_actx_free.c
+index db6b47012..257c53bcd 100644
+--- a/test/attach/mutt_actx_free.c
++++ b/test/attach/mutt_actx_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/base64/mutt_b64_buffer_decode.c b/test/base64/mutt_b64_buffer_decode.c
+index 6d47b799a..e4fca9540 100644
+--- a/test/base64/mutt_b64_buffer_decode.c
++++ b/test/base64/mutt_b64_buffer_decode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_b64_buffer_decode(void)
+ {
+diff --git a/test/base64/mutt_b64_buffer_encode.c b/test/base64/mutt_b64_buffer_encode.c
+index fd660c592..ae65b36c7 100644
+--- a/test/base64/mutt_b64_buffer_encode.c
++++ b/test/base64/mutt_b64_buffer_encode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_b64_buffer_encode(void)
+ {
+diff --git a/test/base64/mutt_b64_decode.c b/test/base64/mutt_b64_decode.c
+index 9a8fcbe99..2cec334b2 100644
+--- a/test/base64/mutt_b64_decode.c
++++ b/test/base64/mutt_b64_decode.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ static const char clear[] = "Hello";
+ static const char encoded[] = "SGVsbG8=";
+diff --git a/test/base64/mutt_b64_encode.c b/test/base64/mutt_b64_encode.c
+index 7c46b68c7..51188258a 100644
+--- a/test/base64/mutt_b64_encode.c
++++ b/test/base64/mutt_b64_encode.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ static const char clear[] = "Hello";
+ static const char encoded[] = "SGVsbG8=";
+diff --git a/test/body/mutt_body_cmp_strict.c b/test/body/mutt_body_cmp_strict.c
+index 641f52ea6..c794d90da 100644
+--- a/test/body/mutt_body_cmp_strict.c
++++ b/test/body/mutt_body_cmp_strict.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/body/mutt_body_free.c b/test/body/mutt_body_free.c
+index c1c5ec9cb..cec8eb03f 100644
+--- a/test/body/mutt_body_free.c
++++ b/test/body/mutt_body_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/body/mutt_body_new.c b/test/body/mutt_body_new.c
+index df95c6adb..b8b0561bb 100644
+--- a/test/body/mutt_body_new.c
++++ b/test/body/mutt_body_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/buffer/mutt_buffer_add_printf.c b/test/buffer/mutt_buffer_add_printf.c
+index 71552e97c..39db18009 100644
+--- a/test/buffer/mutt_buffer_add_printf.c
++++ b/test/buffer/mutt_buffer_add_printf.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_add_printf(void)
+ {
+diff --git a/test/buffer/mutt_buffer_addch.c b/test/buffer/mutt_buffer_addch.c
+index 2d59b9da0..584b1bfba 100644
+--- a/test/buffer/mutt_buffer_addch.c
++++ b/test/buffer/mutt_buffer_addch.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_addch(void)
+ {
+diff --git a/test/buffer/mutt_buffer_addstr.c b/test/buffer/mutt_buffer_addstr.c
+index 224373aa8..ba06ebab9 100644
+--- a/test/buffer/mutt_buffer_addstr.c
++++ b/test/buffer/mutt_buffer_addstr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_addstr(void)
+ {
+diff --git a/test/buffer/mutt_buffer_addstr_n.c b/test/buffer/mutt_buffer_addstr_n.c
+index d3e96db81..f33b8a9c6 100644
+--- a/test/buffer/mutt_buffer_addstr_n.c
++++ b/test/buffer/mutt_buffer_addstr_n.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_addstr_n(void)
+ {
+diff --git a/test/buffer/mutt_buffer_alloc.c b/test/buffer/mutt_buffer_alloc.c
+index 21f0c3bd1..ed94e4c7f 100644
+--- a/test/buffer/mutt_buffer_alloc.c
++++ b/test/buffer/mutt_buffer_alloc.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_alloc(void)
+ {
+diff --git a/test/buffer/mutt_buffer_concat_path.c b/test/buffer/mutt_buffer_concat_path.c
+index 5c6dd062d..bebea92cc 100644
+--- a/test/buffer/mutt_buffer_concat_path.c
++++ b/test/buffer/mutt_buffer_concat_path.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_concat_path(void)
+ {
+diff --git a/test/buffer/mutt_buffer_fix_dptr.c b/test/buffer/mutt_buffer_fix_dptr.c
+index e00a5bb2f..0c9f5a99e 100644
+--- a/test/buffer/mutt_buffer_fix_dptr.c
++++ b/test/buffer/mutt_buffer_fix_dptr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_fix_dptr(void)
+ {
+diff --git a/test/buffer/mutt_buffer_init.c b/test/buffer/mutt_buffer_init.c
+index 3838a9130..6f6c8a0ef 100644
+--- a/test/buffer/mutt_buffer_init.c
++++ b/test/buffer/mutt_buffer_init.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_init(void)
+ {
+diff --git a/test/buffer/mutt_buffer_is_empty.c b/test/buffer/mutt_buffer_is_empty.c
+index b93995b58..880caa690 100644
+--- a/test/buffer/mutt_buffer_is_empty.c
++++ b/test/buffer/mutt_buffer_is_empty.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_is_empty(void)
+ {
+diff --git a/test/buffer/mutt_buffer_len.c b/test/buffer/mutt_buffer_len.c
+index b351945f7..d95e96db9 100644
+--- a/test/buffer/mutt_buffer_len.c
++++ b/test/buffer/mutt_buffer_len.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_len(void)
+ {
+diff --git a/test/buffer/mutt_buffer_pool_free.c b/test/buffer/mutt_buffer_pool_free.c
+index 32b9d7d22..964b3d646 100644
+--- a/test/buffer/mutt_buffer_pool_free.c
++++ b/test/buffer/mutt_buffer_pool_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_pool_free(void)
+ {
+diff --git a/test/buffer/mutt_buffer_pool_get.c b/test/buffer/mutt_buffer_pool_get.c
+index e70f24d2d..2a1f1a53c 100644
+--- a/test/buffer/mutt_buffer_pool_get.c
++++ b/test/buffer/mutt_buffer_pool_get.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_pool_get(void)
+ {
+diff --git a/test/buffer/mutt_buffer_pool_release.c b/test/buffer/mutt_buffer_pool_release.c
+index a097bcd76..8d59e54a7 100644
+--- a/test/buffer/mutt_buffer_pool_release.c
++++ b/test/buffer/mutt_buffer_pool_release.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_pool_release(void)
+ {
+diff --git a/test/buffer/mutt_buffer_printf.c b/test/buffer/mutt_buffer_printf.c
+index 24bd7e492..482d0e638 100644
+--- a/test/buffer/mutt_buffer_printf.c
++++ b/test/buffer/mutt_buffer_printf.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_printf(void)
+ {
+diff --git a/test/buffer/mutt_buffer_reset.c b/test/buffer/mutt_buffer_reset.c
+index 52b30676c..57438bcbc 100644
+--- a/test/buffer/mutt_buffer_reset.c
++++ b/test/buffer/mutt_buffer_reset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_reset(void)
+ {
+diff --git a/test/buffer/mutt_buffer_strcpy.c b/test/buffer/mutt_buffer_strcpy.c
+index 986fe0bb0..b5490dff3 100644
+--- a/test/buffer/mutt_buffer_strcpy.c
++++ b/test/buffer/mutt_buffer_strcpy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_strcpy(void)
+ {
+diff --git a/test/buffer/mutt_buffer_strcpy_n.c b/test/buffer/mutt_buffer_strcpy_n.c
+index f09b70df5..e218327e3 100644
+--- a/test/buffer/mutt_buffer_strcpy_n.c
++++ b/test/buffer/mutt_buffer_strcpy_n.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_strcpy_n(void)
+ {
+diff --git a/test/charset/mutt_ch_canonical_charset.c b/test/charset/mutt_ch_canonical_charset.c
+index 3ff47271e..4977bb2e0 100644
+--- a/test/charset/mutt_ch_canonical_charset.c
++++ b/test/charset/mutt_ch_canonical_charset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_canonical_charset(void)
+ {
+diff --git a/test/charset/mutt_ch_charset_lookup.c b/test/charset/mutt_ch_charset_lookup.c
+index ef372d34d..a9d141c67 100644
+--- a/test/charset/mutt_ch_charset_lookup.c
++++ b/test/charset/mutt_ch_charset_lookup.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_charset_lookup(void)
+ {
+diff --git a/test/charset/mutt_ch_check.c b/test/charset/mutt_ch_check.c
+index 5ad211504..a9d18a5fe 100644
+--- a/test/charset/mutt_ch_check.c
++++ b/test/charset/mutt_ch_check.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_check(void)
+ {
+diff --git a/test/charset/mutt_ch_check_charset.c b/test/charset/mutt_ch_check_charset.c
+index 43e525a19..11c9c96ae 100644
+--- a/test/charset/mutt_ch_check_charset.c
++++ b/test/charset/mutt_ch_check_charset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_check_charset(void)
+ {
+diff --git a/test/charset/mutt_ch_choose.c b/test/charset/mutt_ch_choose.c
+index 89e9dc31a..a83a1b413 100644
+--- a/test/charset/mutt_ch_choose.c
++++ b/test/charset/mutt_ch_choose.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_choose(void)
+ {
+diff --git a/test/charset/mutt_ch_chscmp.c b/test/charset/mutt_ch_chscmp.c
+index 2a5840921..5dd82520c 100644
+--- a/test/charset/mutt_ch_chscmp.c
++++ b/test/charset/mutt_ch_chscmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_chscmp(void)
+ {
+diff --git a/test/charset/mutt_ch_convert_nonmime_string.c b/test/charset/mutt_ch_convert_nonmime_string.c
+index 4fe661f17..b7042e8d6 100644
+--- a/test/charset/mutt_ch_convert_nonmime_string.c
++++ b/test/charset/mutt_ch_convert_nonmime_string.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_convert_nonmime_string(void)
+ {
+diff --git a/test/charset/mutt_ch_convert_string.c b/test/charset/mutt_ch_convert_string.c
+index cbac68267..f83eb6e51 100644
+--- a/test/charset/mutt_ch_convert_string.c
++++ b/test/charset/mutt_ch_convert_string.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_convert_string(void)
+ {
+diff --git a/test/charset/mutt_ch_fgetconv.c b/test/charset/mutt_ch_fgetconv.c
+index 806ea0076..21b3ada53 100644
+--- a/test/charset/mutt_ch_fgetconv.c
++++ b/test/charset/mutt_ch_fgetconv.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_fgetconv(void)
+ {
+diff --git a/test/charset/mutt_ch_fgetconv_close.c b/test/charset/mutt_ch_fgetconv_close.c
+index c7018ee47..0fdb473f6 100644
+--- a/test/charset/mutt_ch_fgetconv_close.c
++++ b/test/charset/mutt_ch_fgetconv_close.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_fgetconv_close(void)
+ {
+diff --git a/test/charset/mutt_ch_fgetconv_open.c b/test/charset/mutt_ch_fgetconv_open.c
+index b604d9945..560b41335 100644
+--- a/test/charset/mutt_ch_fgetconv_open.c
++++ b/test/charset/mutt_ch_fgetconv_open.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_fgetconv_open(void)
+ {
+diff --git a/test/charset/mutt_ch_fgetconvs.c b/test/charset/mutt_ch_fgetconvs.c
+index 313638b4e..688810c3b 100644
+--- a/test/charset/mutt_ch_fgetconvs.c
++++ b/test/charset/mutt_ch_fgetconvs.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_fgetconvs(void)
+ {
+diff --git a/test/charset/mutt_ch_get_default_charset.c b/test/charset/mutt_ch_get_default_charset.c
+index a4fca43ee..870c12a35 100644
+--- a/test/charset/mutt_ch_get_default_charset.c
++++ b/test/charset/mutt_ch_get_default_charset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_get_default_charset(void)
+ {
+diff --git a/test/charset/mutt_ch_get_langinfo_charset.c b/test/charset/mutt_ch_get_langinfo_charset.c
+index 1d0e336f7..b27837883 100644
+--- a/test/charset/mutt_ch_get_langinfo_charset.c
++++ b/test/charset/mutt_ch_get_langinfo_charset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_get_langinfo_charset(void)
+ {
+diff --git a/test/charset/mutt_ch_iconv.c b/test/charset/mutt_ch_iconv.c
+index 1f7fda71c..34d77ad66 100644
+--- a/test/charset/mutt_ch_iconv.c
++++ b/test/charset/mutt_ch_iconv.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_iconv(void)
+ {
+diff --git a/test/charset/mutt_ch_iconv_lookup.c b/test/charset/mutt_ch_iconv_lookup.c
+index 48e2d627b..9160ccd57 100644
+--- a/test/charset/mutt_ch_iconv_lookup.c
++++ b/test/charset/mutt_ch_iconv_lookup.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_iconv_lookup(void)
+ {
+diff --git a/test/charset/mutt_ch_iconv_open.c b/test/charset/mutt_ch_iconv_open.c
+index 6f426bb37..39661a9fe 100644
+--- a/test/charset/mutt_ch_iconv_open.c
++++ b/test/charset/mutt_ch_iconv_open.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_iconv_open(void)
+ {
+diff --git a/test/charset/mutt_ch_lookup_add.c b/test/charset/mutt_ch_lookup_add.c
+index 4a12c97ec..d45078735 100644
+--- a/test/charset/mutt_ch_lookup_add.c
++++ b/test/charset/mutt_ch_lookup_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_lookup_add(void)
+ {
+diff --git a/test/charset/mutt_ch_lookup_remove.c b/test/charset/mutt_ch_lookup_remove.c
+index aff96daa3..8e6dd047f 100644
+--- a/test/charset/mutt_ch_lookup_remove.c
++++ b/test/charset/mutt_ch_lookup_remove.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_lookup_remove(void)
+ {
+diff --git a/test/charset/mutt_ch_set_charset.c b/test/charset/mutt_ch_set_charset.c
+index de069d417..3ac339c1e 100644
+--- a/test/charset/mutt_ch_set_charset.c
++++ b/test/charset/mutt_ch_set_charset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_ch_set_charset(void)
+ {
+diff --git a/test/config/account.c b/test/config/account.c
+index 88f466445..67f61d381 100644
+--- a/test/config/account.c
++++ b/test/config/account.c
+@@ -25,7 +25,7 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -54,6 +54,7 @@ void config_account(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+ int rc = 0;
+
+ number_init(cs);
+@@ -62,16 +63,16 @@ void config_account(void)
+
+ set_list(cs);
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ const char *account = "damaged";
+ const char *parent = "Pineapple";
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, &err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+
+ account_free(&a);
+
+@@ -89,8 +90,8 @@ void config_account(void)
+ account = "fruit";
+ a = account_new(account, sub);
+
+- struct HashElem *he1 = cs_subset_create_var(a->sub, "Apple", &err);
+- struct HashElem *he2 = cs_subset_create_var(a->sub, "Apple", &err);
++ struct HashElem *he1 = cs_subset_create_inheritance(a->sub, "Apple");
++ struct HashElem *he2 = cs_subset_create_inheritance(a->sub, "Apple");
+ if (!he1 || !he2 || (he1 != he2))
+ {
+ TEST_MSG("%s\n", err.data);
+@@ -101,25 +102,25 @@ void config_account(void)
+
+ a = account_new(account, sub);
+
+- he = cs_subset_create_var(NULL, "Apple", &err);
++ he = cs_subset_create_inheritance(NULL, "Apple");
+ if (he)
+ return;
+- he = cs_subset_create_var(a->sub, NULL, &err);
++ he = cs_subset_create_inheritance(a->sub, NULL);
+ if (he)
+ return;
+
+- he = cs_subset_create_var(a->sub, "Apple", &err);
++ he = cs_subset_create_inheritance(a->sub, "Apple");
+ if (!he)
+ return;
+
+- he = cs_subset_create_var(a->sub, "Cherry", &err);
++ he = cs_subset_create_inheritance(a->sub, "Cherry");
+ if (!he)
+ return;
+
+ he = cs_subset_lookup(a->sub, "Apple");
+ mutt_buffer_reset(&err);
+
+- rc = cs_subset_native_set(NULL, he, 33, &err);
++ rc = cs_subset_he_native_set(NULL, he, 33, &err);
+ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err.data);
+@@ -130,7 +131,7 @@ void config_account(void)
+ return;
+ }
+
+- rc = cs_subset_native_set(a->sub, NULL, 33, &err);
++ rc = cs_subset_he_native_set(a->sub, NULL, 33, &err);
+ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err.data);
+@@ -141,14 +142,14 @@ void config_account(void)
+ return;
+ }
+
+- rc = cs_subset_native_set(a->sub, he, 33, &err);
++ rc = cs_subset_he_native_set(a->sub, he, 33, &err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("%s\n", err.data);
+ }
+
+ mutt_buffer_reset(&err);
+- rc = cs_subset_string_get(a->sub, he, &err);
++ rc = cs_subset_he_string_get(a->sub, he, &err);
+ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("%s = %s\n", he->key.strkey, err.data);
+@@ -160,7 +161,7 @@ void config_account(void)
+
+ he = cs_subset_lookup(a->sub, "Cherry");
+ mutt_buffer_reset(&err);
+- rc = cs_subset_string_get(a->sub, he, &err);
++ rc = cs_subset_he_string_get(a->sub, he, &err);
+ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("%s = %s\n", he->key.strkey, err.data);
+@@ -244,6 +245,7 @@ void config_account(void)
+
+ account_free(&a);
+ cs_subset_free(&sub);
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ log_line(__func__);
+diff --git a/test/config/address.c b/test/config/address.c
+index 1580fb033..f5899f131 100644
+--- a/test/config/address.c
++++ b/test/config/address.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+@@ -542,11 +542,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -610,6 +610,7 @@ void config_address(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ address_init(cs);
+ dont_fail = true;
+@@ -617,7 +618,7 @@ void config_address(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -630,6 +631,7 @@ void config_address(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/bool.c b/test/config/bool.c
+index ca45b74cb..3221b4bc2 100644
+--- a/test/config/bool.c
++++ b/test/config/bool.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -399,6 +399,17 @@ static bool test_reset(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
++ rc = cs_str_reset(cs, "unknown", err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
+ if (!TEST_CHECK(VarIlama))
+ {
+ TEST_MSG("Value of %s changed\n", name);
+@@ -530,11 +541,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -579,6 +590,9 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ dump_native(cs, parent, child);
+ short_line();
+
++ // reset the already-reset child
++ rc = cs_str_reset(cs, child, err);
++
+ // reset parent
+ mutt_buffer_reset(err);
+ rc = cs_str_reset(cs, parent, err);
+@@ -623,21 +637,21 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
+- rc = bool_he_toggle(cs, NULL, err);
++ rc = bool_he_toggle(NeoMutt->sub, NULL, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
+ {
+ TEST_MSG("Toggle succeeded when is shouldn't have\n");
+ return false;
+ }
+
+- rc = bool_str_toggle(NULL, "apple", err);
++ rc = bool_str_toggle(NULL, "Apple", err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
+ {
+ TEST_MSG("Toggle succeeded when is shouldn't have\n");
+ return false;
+ }
+
+- rc = bool_str_toggle(cs, NULL, err);
++ rc = bool_str_toggle(NeoMutt->sub, NULL, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
+ {
+ TEST_MSG("Toggle succeeded when is shouldn't have\n");
+@@ -666,7 +680,7 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
+- rc = bool_he_toggle(cs, he, err);
++ rc = bool_he_toggle(NeoMutt->sub, he, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("Toggle failed: %s\n", err->data);
+@@ -703,7 +717,7 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
+- rc = bool_str_toggle(cs, "Nectarine", err);
++ rc = bool_str_toggle(NeoMutt->sub, "Nectarine", err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("Toggle failed: %s\n", err->data);
+@@ -718,10 +732,10 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ short_line();
+ }
+
+- VarNectarine = 8;
+ mutt_buffer_reset(err);
+- rc = bool_he_toggle(cs, he, err);
+- if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ struct ConfigSubset sub2 = { 0 };
++ rc = bool_he_toggle(&sub2, he, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err->data);
+ }
+@@ -732,14 +746,14 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+
+ mutt_buffer_reset(err);
+- rc = bool_he_toggle(cs, he, err);
++ rc = bool_he_toggle(NeoMutt->sub, he, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err->data);
+ }
+
+ mutt_buffer_reset(err);
+- rc = bool_str_toggle(cs, "unknown", err);
++ rc = bool_str_toggle(NeoMutt->sub, "unknown", err);
+ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err->data);
+@@ -763,6 +777,7 @@ void config_bool(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ bool_init(cs);
+ quad_init(cs);
+@@ -771,7 +786,7 @@ void config_bool(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -785,6 +800,7 @@ void config_bool(void)
+ TEST_CHECK(test_inherit(cs, &err));
+ TEST_CHECK(test_toggle(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/common.c b/test/config/common.c
+index 6b938dad9..18165e1d2 100644
+--- a/test/config/common.c
++++ b/test/config/common.c
+@@ -28,7 +28,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+ #include "common.h"
+@@ -87,7 +87,7 @@ int log_observer(struct NotifyCallback *nc)
+ if (!nc)
+ return -1;
+
+- struct EventConfig *ec = (struct EventConfig *) nc->event;
++ struct EventConfig *ec = nc->event_data;
+
+ struct Buffer result;
+ mutt_buffer_init(&result);
+@@ -99,9 +99,9 @@ int log_observer(struct NotifyCallback *nc)
+ mutt_buffer_reset(&result);
+
+ if (nc->event_subtype != NT_CONFIG_INITIAL_SET)
+- cs_he_string_get(ec->cs, ec->he, &result);
++ cs_he_string_get(ec->sub->cs, ec->he, &result);
+ else
+- cs_he_initial_get(ec->cs, ec->he, &result);
++ cs_he_initial_get(ec->sub->cs, ec->he, &result);
+
+ TEST_MSG("Event: %s has been %s to '%s'\n", ec->name,
+ events[nc->event_subtype - 1], result.data);
+diff --git a/test/config/dump.c b/test/config/dump.c
+index ce2bd3e3f..39dc91f45 100644
+--- a/test/config/dump.c
++++ b/test/config/dump.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -41,6 +41,7 @@ static char VarKumquat;
+ static struct Regex *VarLemon;
+ static short VarMango;
+ static char *VarNectarine;
++static char *VarOlive;
+
+ // clang-format off
+ static struct Mapping MagicMap[] = {
+@@ -67,13 +68,14 @@ static struct ConfigDef Vars[] = {
+ { "Elderberry", DT_ADDRESS, &VarElderberry, IP "elderberry@example.com", 0, NULL },
+ { "Fig", DT_STRING|DT_COMMAND|DT_NOT_EMPTY, &VarFig, IP "fig", 0, NULL },
+ { "Guava", DT_LONG, &VarGuava, 0, 0, NULL },
+- { "Hawthorn", DT_ENUM, &VarHawthorn, 1, IP &MagicDef, NULL },
++ { "Hawthorn", DT_ENUM, &VarHawthorn, 2, IP &MagicDef, NULL },
+ { "Ilama", DT_MBTABLE, &VarIlama, 0, 0, NULL },
+- { "Jackfruit", DT_STRING|DT_PATH, &VarJackfruit, IP "/etc/passwd", 0, NULL },
++ { "Jackfruit", DT_PATH|DT_PATH_FILE, &VarJackfruit, IP "/etc/passwd", 0, NULL },
+ { "Kumquat", DT_QUAD, &VarKumquat, 0, 0, NULL },
+ { "Lemon", DT_REGEX, &VarLemon, 0, 0, NULL },
+ { "Mango", DT_SORT, &VarMango, 1, 0, NULL },
+ { "Nectarine", DT_STRING|DT_SENSITIVE, &VarNectarine, IP "nectarine", 0, NULL },
++ { "Olive", DT_STRING|DT_DEPRECATED, &VarOlive, IP "olive", 0, NULL },
+ { NULL },
+ };
+ // clang-format on
+@@ -186,7 +188,9 @@ struct ConfigSet *create_sample_data(void)
+ long_init(cs);
+ mbtable_init(cs);
+ number_init(cs);
++ path_init(cs);
+ quad_init(cs);
++ path_init(cs);
+ regex_init(cs);
+ sort_init(cs);
+ string_init(cs);
+@@ -259,8 +263,8 @@ bool test_dump_config_neo(void)
+ TEST_CHECK_(
+ 1, "dump_config_neo(cs, he, NULL, &buf_init, CS_DUMP_NO_FLAGS, fp)");
+ dump_config_neo(cs, he, &buf_val, NULL, CS_DUMP_NO_FLAGS, fp);
+- TEST_CHECK_(1,
+- "dump_config_neo(cs, he, &buf_val, NULL, CS_DUMP_NO_FLAGS, fp)");
++ TEST_CHECK_(
++ 1, "dump_config_neo(cs, he, &buf_val, NULL, CS_DUMP_NO_FLAGS, fp)");
+ dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, NULL);
+ TEST_CHECK_(
+ 1,
+@@ -270,12 +274,12 @@ bool test_dump_config_neo(void)
+
+ dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp);
+ TEST_CHECK_(
+- 1, "dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp)");
++ 1,
++ "dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp)");
+
+ dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_ONLY_CHANGED, fp);
+- TEST_CHECK_(
+- 1,
+- "dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_ONLY_CHANGED, fp)");
++ TEST_CHECK_(1, "dump_config_neo(cs, he, &buf_val, &buf_init, "
++ "CS_DUMP_ONLY_CHANGED, fp)");
+
+ dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_SHOW_DEFAULTS, fp);
+ TEST_CHECK_(1, "dump_config_neo(cs, he, &buf_val, &buf_init, "
+@@ -284,7 +288,8 @@ bool test_dump_config_neo(void)
+ he = mutt_hash_find_elem(cs->hash, "Damson");
+ dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp);
+ TEST_CHECK_(
+- 1, "dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp)");
++ 1,
++ "dump_config_neo(cs, he, &buf_val, &buf_init, CS_DUMP_NO_FLAGS, fp)");
+
+ fclose(fp);
+ mutt_buffer_dealloc(&buf_val);
+diff --git a/test/config/enum.c b/test/config/enum.c
+index ba9f6f72b..4ccb025bb 100644
+--- a/test/config/enum.c
++++ b/test/config/enum.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -592,11 +592,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -664,12 +664,13 @@ void config_enum(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ enum_init(cs);
+ if (!cs_register_variables(cs, Vars, 0))
+ return;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -682,6 +683,7 @@ void config_enum(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ log_line(__func__);
+diff --git a/test/config/initial.c b/test/config/initial.c
+index 95be1e200..3b98f127e 100644
+--- a/test/config/initial.c
++++ b/test/config/initial.c
+@@ -25,7 +25,7 @@
+ #include "config.h"
+ #include <stdbool.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -99,22 +99,25 @@ void config_initial(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ string_init(cs);
+ if (!cs_register_variables(cs, Vars, 0))
+ return;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+ if (!TEST_CHECK(test_set_initial(cs, &err)))
+ {
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ return;
+ }
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/long.c b/test/config/long.c
+index ead67b59f..6ec550f2f 100644
+--- a/test/config/long.c
++++ b/test/config/long.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -516,11 +516,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -588,6 +588,7 @@ void config_long(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ long_init(cs);
+ dont_fail = true;
+@@ -595,7 +596,7 @@ void config_long(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -608,6 +609,7 @@ void config_long(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/mbtable.c b/test/config/mbtable.c
+index b0ed322de..3793e6a48 100644
+--- a/test/config/mbtable.c
++++ b/test/config/mbtable.c
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -558,11 +558,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -626,6 +626,7 @@ void config_mbtable(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ mbtable_init(cs);
+ dont_fail = true;
+@@ -633,7 +634,7 @@ void config_mbtable(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -646,6 +647,7 @@ void config_mbtable(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/number.c b/test/config/number.c
+index 1e36b03b1..46af6f305 100644
+--- a/test/config/number.c
++++ b/test/config/number.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -551,11 +551,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -623,6 +623,7 @@ void config_number(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ number_init(cs);
+ dont_fail = true;
+@@ -630,7 +631,7 @@ void config_number(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -643,6 +644,7 @@ void config_number(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/path.c b/test/config/path.c
+new file mode 100644
+index 000000000..381d89f84
+--- /dev/null
++++ b/test/config/path.c
+@@ -0,0 +1,664 @@
++/**
++ * @file
++ * Test code for the Path object
++ *
++ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#define TEST_NO_MAIN
++#include "acutest.h"
++#include "config.h"
++#include <stdbool.h>
++#include <stdint.h>
++#include <stdio.h>
++#include "mutt/lib.h"
++#include "config/common.h"
++#include "config/lib.h"
++#include "core/lib.h"
++
++static char *VarApple;
++static char *VarBanana;
++static char *VarCherry;
++static char *VarDamson;
++static char *VarElderberry;
++static char *VarFig;
++static char *VarGuava;
++static char *VarHawthorn;
++static char *VarIlama;
++static char *VarJackfruit;
++static char *VarKumquat;
++static char *VarLemon;
++static char *VarMango;
++static char *VarNectarine;
++static char *VarOlive;
++static char *VarPapaya;
++static char *VarQuince;
++static char *VarRaspberry;
++static char *VarStrawberry;
++
++// clang-format off
++static struct ConfigDef Vars[] = {
++ { "Apple", DT_PATH, &VarApple, IP "apple", 0, NULL }, /* test_initial_values */
++ { "Banana", DT_PATH, &VarBanana, IP "banana", 0, NULL },
++ { "Cherry", DT_PATH, &VarCherry, IP "cherry", 0, NULL },
++ { "Damson", DT_PATH, &VarDamson, 0, 0, NULL }, /* test_string_set */
++ { "Elderberry", DT_PATH, &VarElderberry, IP "elderberry", 0, NULL },
++ { "Fig", DT_PATH|DT_NOT_EMPTY, &VarFig, IP "fig", 0, NULL },
++ { "Guava", DT_PATH, &VarGuava, 0, 0, NULL }, /* test_string_get */
++ { "Hawthorn", DT_PATH, &VarHawthorn, IP "hawthorn", 0, NULL },
++ { "Ilama", DT_PATH, &VarIlama, 0, 0, NULL },
++ { "Jackfruit", DT_PATH, &VarJackfruit, 0, 0, NULL }, /* test_native_set */
++ { "Kumquat", DT_PATH, &VarKumquat, IP "kumquat", 0, NULL },
++ { "Lemon", DT_PATH|DT_NOT_EMPTY, &VarLemon, IP "lemon", 0, NULL },
++ { "Mango", DT_PATH, &VarMango, 0, 0, NULL }, /* test_native_get */
++ { "Nectarine", DT_PATH, &VarNectarine, IP "nectarine", 0, NULL }, /* test_reset */
++ { "Olive", DT_PATH, &VarOlive, IP "olive", 0, validator_fail },
++ { "Papaya", DT_PATH, &VarPapaya, IP "papaya", 0, validator_succeed }, /* test_validator */
++ { "Quince", DT_PATH, &VarQuince, IP "quince", 0, validator_warn },
++ { "Raspberry", DT_PATH, &VarRaspberry, IP "raspberry", 0, validator_fail },
++ { "Strawberry", DT_PATH, &VarStrawberry, 0, 0, NULL }, /* test_inherit */
++ { NULL },
++};
++// clang-format on
++
++static bool test_initial_values(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++ TEST_MSG("Apple = %s\n", VarApple);
++ TEST_MSG("Banana = %s\n", VarBanana);
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarApple, "apple") == 0))
++ {
++ TEST_MSG("Error: initial values were wrong\n");
++ return false;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarBanana, "banana") == 0))
++ {
++ TEST_MSG("Error: initial values were wrong\n");
++ return false;
++ }
++
++ cs_str_string_set(cs, "Apple", "car", err);
++ cs_str_string_set(cs, "Banana", NULL, err);
++
++ struct Buffer value;
++ mutt_buffer_init(&value);
++ value.dsize = 256;
++ value.data = mutt_mem_calloc(1, value.dsize);
++ mutt_buffer_reset(&value);
++
++ int rc;
++
++ mutt_buffer_reset(&value);
++ rc = cs_str_initial_get(cs, "Apple", &value);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(value.data, "apple") == 0))
++ {
++ TEST_MSG("Apple's initial value is wrong: '%s'\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++ TEST_MSG("Apple = '%s'\n", VarApple);
++ TEST_MSG("Apple's initial value is '%s'\n", value.data);
++
++ mutt_buffer_reset(&value);
++ rc = cs_str_initial_get(cs, "Banana", &value);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(value.data, "banana") == 0))
++ {
++ TEST_MSG("Banana's initial value is wrong: '%s'\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++ TEST_MSG("Banana = '%s'\n", VarBanana);
++ TEST_MSG("Banana's initial value is '%s'\n", NONULL(value.data));
++
++ mutt_buffer_reset(&value);
++ rc = cs_str_initial_set(cs, "Cherry", "train", &value);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++
++ mutt_buffer_reset(&value);
++ rc = cs_str_initial_set(cs, "Cherry", "plane", &value);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++
++ mutt_buffer_reset(&value);
++ rc = cs_str_initial_get(cs, "Cherry", &value);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", value.data);
++ FREE(&value.data);
++ return false;
++ }
++
++ TEST_MSG("Cherry = '%s'\n", VarCherry);
++ TEST_MSG("Cherry's initial value is '%s'\n", NONULL(value.data));
++
++ FREE(&value.data);
++ log_line(__func__);
++ return true;
++}
++
++static bool test_string_set(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++
++ const char *valid[] = { "hello", "world", "world", "", NULL };
++ const char *name = "Damson";
++
++ int rc;
++ for (unsigned int i = 0; i < mutt_array_size(valid); i++)
++ {
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, name, valid[i], err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (rc & CSR_SUC_NO_CHANGE)
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ continue;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarDamson, valid[i]) == 0))
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ return false;
++ }
++ TEST_MSG("%s = '%s', set by '%s'\n", name, NONULL(VarDamson), NONULL(valid[i]));
++ short_line();
++ }
++
++ name = "Fig";
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, name, "", err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ name = "Elderberry";
++ for (unsigned int i = 0; i < mutt_array_size(valid); i++)
++ {
++ short_line();
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, name, valid[i], err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (rc & CSR_SUC_NO_CHANGE)
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ continue;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarElderberry, valid[i]) == 0))
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ return false;
++ }
++ TEST_MSG("%s = '%s', set by '%s'\n", name, NONULL(VarElderberry), NONULL(valid[i]));
++ }
++
++ log_line(__func__);
++ return true;
++}
++
++static bool test_string_get(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++ const char *name = "Guava";
++
++ mutt_buffer_reset(err);
++ int rc = cs_str_string_get(cs, name, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("Get failed: %s\n", err->data);
++ return false;
++ }
++ TEST_MSG("%s = '%s', '%s'\n", name, NONULL(VarGuava), err->data);
++
++ name = "Hawthorn";
++ mutt_buffer_reset(err);
++ rc = cs_str_string_get(cs, name, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("Get failed: %s\n", err->data);
++ return false;
++ }
++ TEST_MSG("%s = '%s', '%s'\n", name, NONULL(VarHawthorn), err->data);
++
++ name = "Ilama";
++ rc = cs_str_string_set(cs, name, "ilama", err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ return false;
++
++ mutt_buffer_reset(err);
++ rc = cs_str_string_get(cs, name, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("Get failed: %s\n", err->data);
++ return false;
++ }
++ TEST_MSG("%s = '%s', '%s'\n", name, NONULL(VarIlama), err->data);
++
++ log_line(__func__);
++ return true;
++}
++
++static bool test_native_set(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++
++ const char *valid[] = { "hello", "world", "world", "", NULL };
++ const char *name = "Jackfruit";
++
++ int rc;
++ for (unsigned int i = 0; i < mutt_array_size(valid); i++)
++ {
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, (intptr_t) valid[i], err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (rc & CSR_SUC_NO_CHANGE)
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ continue;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarJackfruit, valid[i]) == 0))
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ return false;
++ }
++ TEST_MSG("%s = '%s', set by '%s'\n", name, NONULL(VarJackfruit), NONULL(valid[i]));
++ short_line();
++ }
++
++ name = "Lemon";
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, (intptr_t) "", err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ name = "Kumquat";
++ for (unsigned int i = 0; i < mutt_array_size(valid); i++)
++ {
++ short_line();
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, (intptr_t) valid[i], err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (rc & CSR_SUC_NO_CHANGE)
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ continue;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarKumquat, valid[i]) == 0))
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ return false;
++ }
++ TEST_MSG("%s = '%s', set by '%s'\n", name, NONULL(VarKumquat), NONULL(valid[i]));
++ }
++
++ log_line(__func__);
++ return true;
++}
++
++static bool test_native_get(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++ const char *name = "Mango";
++
++ int rc = cs_str_string_set(cs, name, "mango", err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ return false;
++
++ mutt_buffer_reset(err);
++ intptr_t value = cs_str_native_get(cs, name, err);
++ if (!TEST_CHECK(mutt_str_strcmp(VarMango, (char *) value) == 0))
++ {
++ TEST_MSG("Get failed: %s\n", err->data);
++ return false;
++ }
++ TEST_MSG("%s = '%s', '%s'\n", name, VarMango, (char *) value);
++
++ log_line(__func__);
++ return true;
++}
++
++static bool test_reset(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++
++ const char *name = "Nectarine";
++ mutt_buffer_reset(err);
++
++ TEST_MSG("Initial: %s = '%s'\n", name, VarNectarine);
++ int rc = cs_str_string_set(cs, name, "hello", err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ return false;
++ TEST_MSG("Set: %s = '%s'\n", name, VarNectarine);
++
++ rc = cs_str_reset(cs, name, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarNectarine, "nectarine") == 0))
++ {
++ TEST_MSG("Value of %s wasn't changed\n", name);
++ return false;
++ }
++
++ TEST_MSG("Reset: %s = '%s'\n", name, VarNectarine);
++
++ rc = cs_str_reset(cs, name, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ name = "Olive";
++ mutt_buffer_reset(err);
++
++ TEST_MSG("Initial: %s = '%s'\n", name, VarOlive);
++ dont_fail = true;
++ rc = cs_str_string_set(cs, name, "hello", err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ return false;
++ TEST_MSG("Set: %s = '%s'\n", name, VarOlive);
++ dont_fail = false;
++
++ rc = cs_str_reset(cs, name, err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++
++ if (!TEST_CHECK(mutt_str_strcmp(VarOlive, "hello") == 0))
++ {
++ TEST_MSG("Value of %s changed\n", name);
++ return false;
++ }
++
++ TEST_MSG("Reset: %s = '%s'\n", name, VarOlive);
++
++ log_line(__func__);
++ return true;
++}
++
++static bool test_validator(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++
++ const char *name = "Papaya";
++ mutt_buffer_reset(err);
++ int rc = cs_str_string_set(cs, name, "hello", err);
++ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Path: %s = %s\n", name, VarPapaya);
++
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, IP "world", err);
++ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Native: %s = %s\n", name, VarPapaya);
++
++ name = "Quince";
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, name, "hello", err);
++ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Path: %s = %s\n", name, VarQuince);
++
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, IP "world", err);
++ if (TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("%s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Native: %s = %s\n", name, VarQuince);
++
++ name = "Raspberry";
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, name, "hello", err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Path: %s = %s\n", name, VarRaspberry);
++
++ mutt_buffer_reset(err);
++ rc = cs_str_native_set(cs, name, IP "world", err);
++ if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("Expected error: %s\n", err->data);
++ }
++ else
++ {
++ TEST_MSG("%s\n", err->data);
++ return false;
++ }
++ TEST_MSG("Native: %s = %s\n", name, VarRaspberry);
++
++ log_line(__func__);
++ return true;
++}
++
++static void dump_native(struct ConfigSet *cs, const char *parent, const char *child)
++{
++ intptr_t pval = cs_str_native_get(cs, parent, NULL);
++ intptr_t cval = cs_str_native_get(cs, child, NULL);
++
++ TEST_MSG("%15s = %s\n", parent, (char *) pval);
++ TEST_MSG("%15s = %s\n", child, (char *) cval);
++}
++
++static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
++{
++ log_line(__func__);
++ bool result = false;
++
++ const char *account = "fruit";
++ const char *parent = "Strawberry";
++ char child[128];
++ snprintf(child, sizeof(child), "%s:%s", account, parent);
++
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
++ sub->cs = cs;
++ struct Account *a = account_new(account, sub);
++
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
++ if (!he)
++ {
++ TEST_MSG("Error: %s\n", err->data);
++ goto ti_out;
++ }
++
++ // set parent
++ mutt_buffer_reset(err);
++ int rc = cs_str_string_set(cs, parent, "hello", err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ TEST_MSG("Error: %s\n", err->data);
++ goto ti_out;
++ }
++ dump_native(cs, parent, child);
++
++ // set child
++ mutt_buffer_reset(err);
++ rc = cs_str_string_set(cs, child, "world", err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ TEST_MSG("Error: %s\n", err->data);
++ goto ti_out;
++ }
++ dump_native(cs, parent, child);
++
++ // reset child
++ mutt_buffer_reset(err);
++ rc = cs_str_reset(cs, child, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ TEST_MSG("Error: %s\n", err->data);
++ goto ti_out;
++ }
++ dump_native(cs, parent, child);
++
++ // reset parent
++ mutt_buffer_reset(err);
++ rc = cs_str_reset(cs, parent, err);
++ if (CSR_RESULT(rc) != CSR_SUCCESS)
++ {
++ TEST_MSG("Error: %s\n", err->data);
++ goto ti_out;
++ }
++ dump_native(cs, parent, child);
++
++ log_line(__func__);
++ result = true;
++ti_out:
++ account_free(&a);
++ cs_subset_free(&sub);
++ return result;
++}
++
++void config_path(void)
++{
++ struct Buffer err;
++ mutt_buffer_init(&err);
++ err.dsize = 256;
++ err.data = mutt_mem_calloc(1, err.dsize);
++ mutt_buffer_reset(&err);
++
++ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
++
++ path_init(cs);
++ dont_fail = true;
++ if (!cs_register_variables(cs, Vars, 0))
++ return;
++ dont_fail = false;
++
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
++
++ set_list(cs);
++
++ TEST_CHECK(test_initial_values(cs, &err));
++ TEST_CHECK(test_string_set(cs, &err));
++ TEST_CHECK(test_string_get(cs, &err));
++ TEST_CHECK(test_native_set(cs, &err));
++ TEST_CHECK(test_native_get(cs, &err));
++ TEST_CHECK(test_reset(cs, &err));
++ TEST_CHECK(test_validator(cs, &err));
++ TEST_CHECK(test_inherit(cs, &err));
++
++ neomutt_free(&NeoMutt);
++ cs_free(&cs);
++ FREE(&err.data);
++}
+diff --git a/conn/tunnel.h b/test/config/path.h
+similarity index 77%
+rename from conn/tunnel.h
+rename to test/config/path.h
+index f3bee368e..a00e7de94 100644
+--- a/conn/tunnel.h
++++ b/test/config/path.h
+@@ -1,8 +1,10 @@
+ /**
+ * @file
+- * Support for network tunnelling
++ * Test code for the Path object
+ *
+ * @authors
++ * Copyright (C) 2020 Richard Russon <rich@flatcap.org>
++ *
+ * @copyright
+ * This program is free software: you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License as published by the Free Software
+@@ -18,11 +20,11 @@
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+-#ifndef MUTT_CONN_TUNNEL_H
+-#define MUTT_CONN_TUNNEL_H
++#ifndef _TEST_PATH_H
++#define _TEST_PATH_H
+
+-struct Connection;
++#include <stdbool.h>
+
+-void mutt_tunnel_socket_setup(struct Connection *conn);
++void config_path(void);
+
+-#endif /* MUTT_CONN_TUNNEL_H */
++#endif /* _TEST_PATH_H */
+diff --git a/test/config/quad.c b/test/config/quad.c
+index ed8f70ecc..f2ecd5703 100644
+--- a/test/config/quad.c
++++ b/test/config/quad.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -528,11 +528,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -625,7 +625,21 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
+- rc = quad_he_toggle(cs, NULL, err);
++ rc = quad_he_toggle(NeoMutt->sub, NULL, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
++ {
++ TEST_MSG("Toggle succeeded when is shouldn't have\n");
++ return false;
++ }
++
++ rc = quad_str_toggle(NULL, "Apple", err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
++ {
++ TEST_MSG("Toggle succeeded when is shouldn't have\n");
++ return false;
++ }
++
++ rc = quad_str_toggle(NeoMutt->sub, NULL, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_ERR_CODE))
+ {
+ TEST_MSG("Toggle succeeded when is shouldn't have\n");
+@@ -654,7 +668,7 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+ }
+
+- rc = quad_he_toggle(cs, he, err);
++ rc = quad_he_toggle(NeoMutt->sub, he, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
+ {
+ TEST_MSG("Toggle failed: %s\n", err->data);
+@@ -668,10 +682,10 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ }
+ }
+
+- VarNectarine = 8;
+ mutt_buffer_reset(err);
+- rc = quad_he_toggle(cs, he, err);
+- if (TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ struct ConfigSubset sub2 = { 0 };
++ rc = quad_he_toggle(&sub2, he, err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err->data);
+ }
+@@ -682,7 +696,7 @@ static bool test_toggle(struct ConfigSet *cs, struct Buffer *err)
+ return false;
+
+ mutt_buffer_reset(err);
+- rc = quad_he_toggle(cs, he, err);
++ rc = quad_he_toggle(NeoMutt->sub, he, err);
+ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
+ {
+ TEST_MSG("Expected error: %s\n", err->data);
+@@ -701,6 +715,7 @@ void config_quad(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ bool_init(cs);
+ quad_init(cs);
+@@ -709,7 +724,7 @@ void config_quad(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -723,6 +738,7 @@ void config_quad(void)
+ TEST_CHECK(test_inherit(cs, &err));
+ TEST_CHECK(test_toggle(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/regex.c b/test/config/regex.c
+index 56e0bb3d7..6ab0d787a 100644
+--- a/test/config/regex.c
++++ b/test/config/regex.c
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -618,11 +618,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -686,6 +686,7 @@ void config_regex(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ regex_init(cs);
+ dont_fail = true;
+@@ -693,7 +694,7 @@ void config_regex(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -706,6 +707,7 @@ void config_regex(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/set.c b/test/config/set.c
+index 91037ddc9..0b1914cf8 100644
+--- a/test/config/set.c
++++ b/test/config/set.c
+@@ -27,7 +27,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -85,16 +85,8 @@ bool degenerate_tests(struct ConfigSet *cs)
+
+ struct HashElem *he = cs_get_elem(cs, "Banana");
+
+- cs_init(NULL, 100);
+- TEST_CHECK_(1, "cs_init(NULL, 100)");
+ cs_free(NULL);
+ TEST_CHECK_(1, "cs_free(NULL)");
+- cs_notify_observers(NULL, he, "apple", NT_CONFIG_SET);
+- TEST_CHECK_(1, "cs_notify_observers(NULL, he, \"apple\", NT_CONFIG_SET)");
+- cs_notify_observers(cs, NULL, "apple", NT_CONFIG_SET);
+- TEST_CHECK_(1, "cs_notify_observers(cs, NULL, \"apple\", NT_CONFIG_SET)");
+- cs_notify_observers(cs, he, NULL, NT_CONFIG_SET);
+- TEST_CHECK_(1, "cs_notify_observers(cs, he, NULL, NT_CONFIG_SET)");
+
+ if (!TEST_CHECK(cs_register_type(NULL, DT_NUMBER, &cst_dummy) == false))
+ return false;
+@@ -122,6 +114,12 @@ bool degenerate_tests(struct ConfigSet *cs)
+ return false;
+ if (!TEST_CHECK(cs_inherit_variable(cs, NULL, "apple") == NULL))
+ return false;
++ struct ConfigSet cs2 = { 0 };
++ if (!TEST_CHECK(cs_inherit_variable(&cs2, he, "apple") == NULL))
++ return false;
++
++ cs_uninherit_variable(NULL, "apple");
++ cs_uninherit_variable(cs, NULL);
+
+ if (!TEST_CHECK(cs_str_native_set(NULL, "apple", IP "hello", NULL) != CSR_SUCCESS))
+ return false;
+@@ -222,6 +220,8 @@ void config_set(void)
+ if (!TEST_CHECK(cs != NULL))
+ return;
+
++ NeoMutt = neomutt_new(cs);
++
+ const struct ConfigSetType cst_dummy = {
+ "dummy", NULL, NULL, NULL, NULL, NULL, NULL,
+ };
+@@ -325,6 +325,7 @@ void config_set(void)
+ if (!TEST_CHECK(!cst))
+ return;
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ log_line(__func__);
+diff --git a/test/config/slist.c b/test/config/slist.c
+index d8250c083..c06848416 100644
+--- a/test/config/slist.c
++++ b/test/config/slist.c
+@@ -28,7 +28,7 @@
+ #include <stdint.h>
+ #include <stdio.h>
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -843,11 +843,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -908,12 +908,13 @@ bool slist_test_separator(struct ConfigDef Vars[], struct Buffer *err)
+
+ mutt_buffer_reset(err);
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ slist_init(cs);
+ if (!cs_register_variables(cs, Vars, 0))
+ return false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -924,6 +925,7 @@ bool slist_test_separator(struct ConfigDef Vars[], struct Buffer *err)
+ if (!test_string_get(cs, err))
+ return false;
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ return true;
+ }
+@@ -949,6 +951,7 @@ void config_slist(void)
+ TEST_CHECK(slist_test_separator(VarsSpace, &err));
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ slist_init(cs);
+ dont_fail = true;
+@@ -956,7 +959,7 @@ void config_slist(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ TEST_CHECK(test_native_set(cs, &err));
+ TEST_CHECK(test_native_get(cs, &err));
+@@ -964,6 +967,7 @@ void config_slist(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ log_line(__func__);
+diff --git a/test/config/sort.c b/test/config/sort.c
+index b8d43069e..67f3ed2be 100644
+--- a/test/config/sort.c
++++ b/test/config/sort.c
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -632,11 +632,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -732,6 +732,7 @@ void config_sort(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ sort_init(cs);
+ dont_fail = true;
+@@ -739,7 +740,7 @@ void config_sort(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -757,6 +758,7 @@ void config_sort(void)
+ TEST_CHECK(test_inherit(cs, &err));
+ TEST_CHECK(test_sort_type(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/string.c b/test/config/string.c
+index 388ddec40..dbd9f169a 100644
+--- a/test/config/string.c
++++ b/test/config/string.c
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -569,11 +569,11 @@ static bool test_inherit(struct ConfigSet *cs, struct Buffer *err)
+ char child[128];
+ snprintf(child, sizeof(child), "%s:%s", account, parent);
+
+- struct ConfigSubset *sub = cs_subset_new(NULL, NULL);
++ struct ConfigSubset *sub = cs_subset_new(NULL, NULL, NeoMutt->notify);
+ sub->cs = cs;
+ struct Account *a = account_new(account, sub);
+
+- struct HashElem *he = cs_subset_create_var(a->sub, parent, err);
++ struct HashElem *he = cs_subset_create_inheritance(a->sub, parent);
+ if (!he)
+ {
+ TEST_MSG("Error: %s\n", err->data);
+@@ -637,6 +637,7 @@ void config_string(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ string_init(cs);
+ dont_fail = true;
+@@ -644,7 +645,7 @@ void config_string(void)
+ return;
+ dont_fail = false;
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -657,6 +658,7 @@ void config_string(void)
+ TEST_CHECK(test_validator(cs, &err));
+ TEST_CHECK(test_inherit(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/config/subset.c b/test/config/subset.c
+new file mode 100644
+index 000000000..cd56ba42f
+--- /dev/null
++++ b/test/config/subset.c
+@@ -0,0 +1,242 @@
++/**
++ * @file
++ * Test code for the ConfigSubset object
++ *
++ * @authors
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#define TEST_NO_MAIN
++#include "acutest.h"
++#include "config.h"
++#include <limits.h>
++#include <stdbool.h>
++#include <stdint.h>
++#include <stdio.h>
++#include "mutt/lib.h"
++#include "config/common.h"
++#include "config/lib.h"
++#include "core/lib.h"
++
++static short VarApple;
++
++// clang-format off
++static struct ConfigDef Vars[] = {
++ { "Apple", DT_NUMBER, &VarApple, 42, 0, NULL },
++ { NULL },
++};
++// clang-format on
++
++void config_subset(void)
++{
++ log_line(__func__);
++
++ struct Buffer err = mutt_buffer_make(256);
++
++ const char *name = "Apple";
++ const char *expected = NULL;
++ intptr_t value;
++ int rc;
++
++ struct ConfigSet *cs = cs_new(30);
++ number_init(cs);
++ if (!cs_register_variables(cs, Vars, 0))
++ return;
++
++ NeoMutt = neomutt_new(cs);
++
++ cs_subset_free(NULL);
++
++ struct ConfigSubset *sub_a = cs_subset_new("account", NeoMutt->sub, NeoMutt->notify);
++ sub_a->cs = cs;
++ struct ConfigSubset *sub_m = cs_subset_new("mailbox", sub_a, sub_a->notify);
++ sub_m->cs = cs;
++
++ cs_subset_notify_observers(NULL, NULL, NT_CONFIG_SET);
++
++ cs_subset_str_native_set(sub_m, name, 123, NULL);
++ cs_subset_str_native_set(sub_a, name, 456, NULL);
++
++ struct HashElem *he = NULL;
++
++ he = cs_subset_lookup(NULL, NULL);
++ if (!TEST_CHECK(he == NULL))
++ {
++ TEST_MSG("cs_subset_lookup failed\n");
++ return;
++ }
++
++ he = cs_subset_lookup(NeoMutt->sub, name);
++ if (!TEST_CHECK(he != NULL))
++ {
++ TEST_MSG("cs_subset_lookup failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_he_native_get(NULL, NULL, &err);
++ if (!TEST_CHECK(rc == INT_MIN))
++ {
++ TEST_MSG("This test should have failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ value = cs_subset_he_native_get(NeoMutt->sub, he, &err);
++ if (!TEST_CHECK(value != INT_MIN))
++ {
++ TEST_MSG("cs_subset_he_native_get failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ value = cs_subset_str_native_get(NeoMutt->sub, name, &err);
++ if (!TEST_CHECK(value != INT_MIN))
++ {
++ TEST_MSG("cs_subset_str_native_get failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_he_native_set(NULL, NULL, value + 100, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("cs_subset_he_native_set failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_he_native_set(NeoMutt->sub, he, value + 100, &err);
++ if (!TEST_CHECK(value != INT_MIN))
++ {
++ TEST_MSG("cs_subset_he_native_set failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_str_native_set(NeoMutt->sub, name, value + 100, &err);
++ if (!TEST_CHECK(value != INT_MIN))
++ {
++ TEST_MSG("cs_subset_str_native_set failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ expected = "142";
++ rc = cs_subset_he_string_get(NeoMutt->sub, he, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS) ||
++ !TEST_CHECK(strcmp(mutt_b2s(&err), expected) == 0))
++ {
++ TEST_MSG("cs_subset_he_string_get failed\n");
++ TEST_MSG("Expected: %s", expected);
++ TEST_MSG("Actual : %s", mutt_b2s(&err));
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_str_string_get(NULL, NULL, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("This test should have failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ expected = "142";
++ rc = cs_subset_str_string_get(NeoMutt->sub, name, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS) ||
++ !TEST_CHECK(strcmp(mutt_b2s(&err), expected) == 0))
++ {
++ TEST_MSG("cs_subset_str_string_get failed\n");
++ TEST_MSG("Expected: %s", expected);
++ TEST_MSG("Actual : %s", mutt_b2s(&err));
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ expected = "142";
++ rc = cs_subset_he_string_set(NULL, NULL, expected, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("This test should have failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ expected = "678";
++ rc = cs_subset_he_string_set(NeoMutt->sub, he, expected, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("cs_subset_he_string_set failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ expected = "678";
++ rc = cs_subset_str_string_set(NeoMutt->sub, name, expected, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("cs_subset_str_string_set failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_he_reset(NULL, NULL, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) != CSR_SUCCESS))
++ {
++ TEST_MSG("This test should have failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_he_reset(NeoMutt->sub, he, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("cs_subset_he_reset failed\n");
++ return;
++ }
++
++ mutt_buffer_reset(&err);
++ rc = cs_subset_str_reset(NeoMutt->sub, name, &err);
++ if (!TEST_CHECK(CSR_RESULT(rc) == CSR_SUCCESS))
++ {
++ TEST_MSG("cs_subset_str_reset failed\n");
++ return;
++ }
++
++ he = cs_subset_lookup(sub_a, name);
++ if (!TEST_CHECK(he != NULL))
++ {
++ TEST_MSG("cs_subset_lookup failed\n");
++ return;
++ }
++
++ he = cs_subset_lookup(sub_m, name);
++ if (!TEST_CHECK(he != NULL))
++ {
++ TEST_MSG("cs_subset_lookup failed\n");
++ return;
++ }
++
++ cs_subset_free(&sub_m);
++ cs_subset_free(&sub_a);
++
++ neomutt_free(&NeoMutt);
++ cs_free(&cs);
++ mutt_buffer_dealloc(&err);
++ log_line(__func__);
++}
+diff --git a/test/config/synonym.c b/test/config/synonym.c
+index 3b504a4ad..e01877f51 100644
+--- a/test/config/synonym.c
++++ b/test/config/synonym.c
+@@ -26,7 +26,7 @@
+ #include <stdbool.h>
+ #include <stdint.h>
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/common.h"
+ #include "config/lib.h"
+ #include "core/lib.h"
+@@ -189,6 +189,7 @@ void config_synonym(void)
+ mutt_buffer_reset(&err);
+
+ struct ConfigSet *cs = cs_new(30);
++ NeoMutt = neomutt_new(cs);
+
+ string_init(cs);
+ if (!cs_register_variables(cs, Vars, 0))
+@@ -202,7 +203,7 @@ void config_synonym(void)
+
+ TEST_MSG("Expected error\n");
+
+- notify_observer_add(cs->notify, NT_CONFIG, 0, log_observer, 0);
++ notify_observer_add(NeoMutt->notify, log_observer, 0);
+
+ set_list(cs);
+
+@@ -212,6 +213,7 @@ void config_synonym(void)
+ TEST_CHECK(test_native_get(cs, &err));
+ TEST_CHECK(test_reset(cs, &err));
+
++ neomutt_free(&NeoMutt);
+ cs_free(&cs);
+ FREE(&err.data);
+ }
+diff --git a/test/date/mutt_date_add_timeout.c b/test/date/mutt_date_add_timeout.c
+index 811856b82..a1b27e904 100644
+--- a/test/date/mutt_date_add_timeout.c
++++ b/test/date/mutt_date_add_timeout.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_add_timeout(void)
+ {
+diff --git a/test/date/mutt_date_check_month.c b/test/date/mutt_date_check_month.c
+index 078e98acd..038912a41 100644
+--- a/test/date/mutt_date_check_month.c
++++ b/test/date/mutt_date_check_month.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_check_month(void)
+ {
+diff --git a/test/date/mutt_date_gmtime.c b/test/date/mutt_date_gmtime.c
+index 95a030232..c44c8cf05 100644
+--- a/test/date/mutt_date_gmtime.c
++++ b/test/date/mutt_date_gmtime.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_gmtime(void)
+ {
+diff --git a/test/date/mutt_date_is_day_name.c b/test/date/mutt_date_is_day_name.c
+index e8510cec9..1125c2659 100644
+--- a/test/date/mutt_date_is_day_name.c
++++ b/test/date/mutt_date_is_day_name.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_is_day_name(void)
+ {
+diff --git a/test/date/mutt_date_local_tz.c b/test/date/mutt_date_local_tz.c
+index 43597b55e..0ae887b09 100644
+--- a/test/date/mutt_date_local_tz.c
++++ b/test/date/mutt_date_local_tz.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <stdlib.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_local_tz(void)
+ {
+diff --git a/test/date/mutt_date_localtime.c b/test/date/mutt_date_localtime.c
+index dff4a89a3..978662cea 100644
+--- a/test/date/mutt_date_localtime.c
++++ b/test/date/mutt_date_localtime.c
+@@ -23,12 +23,15 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include <stdlib.h>
++#include "mutt/lib.h"
+
+ void test_mutt_date_localtime(void)
+ {
+ // struct tm mutt_date_localtime(time_t t);
+
++ setenv("TZ", "UTC", 1);
++
+ {
+ TEST_CASE("December, 2000");
+ struct tm tm = mutt_date_localtime(977745600);
+diff --git a/test/date/mutt_date_localtime_format.c b/test/date/mutt_date_localtime_format.c
+index 67907c1c7..f3c141dfb 100644
+--- a/test/date/mutt_date_localtime_format.c
++++ b/test/date/mutt_date_localtime_format.c
+@@ -23,12 +23,15 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include <stdlib.h>
++#include "mutt/lib.h"
+
+ void test_mutt_date_localtime_format(void)
+ {
+ // size_t mutt_date_localtime_format(char *buf, size_t buflen, char *format, time_t t);
+
++ setenv("TZ", "UTC", 1);
++
+ {
+ TEST_CHECK(mutt_date_localtime_format(NULL, 10, "apple", 0) == 0);
+ }
+diff --git a/test/date/mutt_date_make_date.c b/test/date/mutt_date_make_date.c
+index 41084ad2a..93a2321b2 100644
+--- a/test/date/mutt_date_make_date.c
++++ b/test/date/mutt_date_make_date.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_make_date(void)
+ {
+diff --git a/test/date/mutt_date_make_imap.c b/test/date/mutt_date_make_imap.c
+index f814b9e6e..2cb491bb7 100644
+--- a/test/date/mutt_date_make_imap.c
++++ b/test/date/mutt_date_make_imap.c
+@@ -23,12 +23,15 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include <stdlib.h>
++#include "mutt/lib.h"
+
+ void test_mutt_date_make_imap(void)
+ {
+ // int mutt_date_make_imap(char *buf, size_t buflen, time_t timestamp);
+
++ setenv("TZ", "UTC", 1);
++
+ {
+ TEST_CHECK(mutt_date_make_imap(NULL, 10, 0) != 0);
+ }
+diff --git a/test/date/mutt_date_make_time.c b/test/date/mutt_date_make_time.c
+index 5fca7ce71..bd443b39b 100644
+--- a/test/date/mutt_date_make_time.c
++++ b/test/date/mutt_date_make_time.c
+@@ -23,7 +23,8 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include <stdlib.h>
++#include "mutt/lib.h"
+
+ struct MakeTimeTest
+ {
+@@ -35,6 +36,8 @@ void test_mutt_date_make_time(void)
+ {
+ // time_t mutt_date_make_time(struct tm *t, bool local);
+
++ setenv("TZ", "UTC", 1);
++
+ {
+ TEST_CHECK(mutt_date_make_time(NULL, false) != 0);
+ }
+diff --git a/test/date/mutt_date_make_tls.c b/test/date/mutt_date_make_tls.c
+index 79409db05..ca571c49c 100644
+--- a/test/date/mutt_date_make_tls.c
++++ b/test/date/mutt_date_make_tls.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_date_make_tls(void)
+ {
+diff --git a/test/date/mutt_date_normalize_time.c b/test/date/mutt_date_normalize_time.c
+index 47a07d893..806fe3d78 100644
+--- a/test/date/mutt_date_normalize_time.c
++++ b/test/date/mutt_date_normalize_time.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct NormalizeTest
+ {
+diff --git a/test/date/mutt_date_parse_date.c b/test/date/mutt_date_parse_date.c
+index 2b5bbb600..37942c170 100644
+--- a/test/date/mutt_date_parse_date.c
++++ b/test/date/mutt_date_parse_date.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ParseDateTest
+ {
+diff --git a/test/date/mutt_date_parse_imap.c b/test/date/mutt_date_parse_imap.c
+index 3110cba6e..931e1e10d 100644
+--- a/test/date/mutt_date_parse_imap.c
++++ b/test/date/mutt_date_parse_imap.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ParseImapTest
+ {
+diff --git a/test/email/email_cmp_strict.c b/test/email/email_cmp_strict.c
+index 5acc19185..5883faa96 100644
+--- a/test/email/email_cmp_strict.c
++++ b/test/email/email_cmp_strict.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/email/email_free.c b/test/email/email_free.c
+index 3bc50617e..796867e62 100644
+--- a/test/email/email_free.c
++++ b/test/email/email_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/email/email_new.c b/test/email/email_new.c
+index 7f1e8a099..bf61a11da 100644
+--- a/test/email/email_new.c
++++ b/test/email/email_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/email/email_size.c b/test/email/email_size.c
+index 124ecb9af..a63854add 100644
+--- a/test/email/email_size.c
++++ b/test/email/email_size.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_cmp_strict.c b/test/envelope/mutt_env_cmp_strict.c
+index dad8ca232..945dd9cc9 100644
+--- a/test/envelope/mutt_env_cmp_strict.c
++++ b/test/envelope/mutt_env_cmp_strict.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_free.c b/test/envelope/mutt_env_free.c
+index 0506269d2..a96a38776 100644
+--- a/test/envelope/mutt_env_free.c
++++ b/test/envelope/mutt_env_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_merge.c b/test/envelope/mutt_env_merge.c
+index 350a0e208..6e63a4650 100644
+--- a/test/envelope/mutt_env_merge.c
++++ b/test/envelope/mutt_env_merge.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_new.c b/test/envelope/mutt_env_new.c
+index d47fedb4a..1852117ab 100644
+--- a/test/envelope/mutt_env_new.c
++++ b/test/envelope/mutt_env_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_to_intl.c b/test/envelope/mutt_env_to_intl.c
+index 9c36a3e27..1cfc2153f 100644
+--- a/test/envelope/mutt_env_to_intl.c
++++ b/test/envelope/mutt_env_to_intl.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envelope/mutt_env_to_local.c b/test/envelope/mutt_env_to_local.c
+index b32cdac02..829b74b89 100644
+--- a/test/envelope/mutt_env_to_local.c
++++ b/test/envelope/mutt_env_to_local.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/envlist/mutt_envlist_free.c b/test/envlist/mutt_envlist_free.c
+index f570e4362..a18853d13 100644
+--- a/test/envlist/mutt_envlist_free.c
++++ b/test/envlist/mutt_envlist_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_envlist_free(void)
+ {
+diff --git a/test/envlist/mutt_envlist_getlist.c b/test/envlist/mutt_envlist_getlist.c
+index efae0dba8..5597ffb14 100644
+--- a/test/envlist/mutt_envlist_getlist.c
++++ b/test/envlist/mutt_envlist_getlist.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_envlist_getlist(void)
+ {
+diff --git a/test/envlist/mutt_envlist_init.c b/test/envlist/mutt_envlist_init.c
+index 3905bbd4f..ab0c91e4e 100644
+--- a/test/envlist/mutt_envlist_init.c
++++ b/test/envlist/mutt_envlist_init.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_envlist_init(void)
+ {
+diff --git a/test/envlist/mutt_envlist_set.c b/test/envlist/mutt_envlist_set.c
+index 7eb067c1c..05e5e0a22 100644
+--- a/test/envlist/mutt_envlist_set.c
++++ b/test/envlist/mutt_envlist_set.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_envlist_set(void)
+ {
+diff --git a/test/envlist/mutt_envlist_unset.c b/test/envlist/mutt_envlist_unset.c
+index 2a86cc616..2ec8f28ae 100644
+--- a/test/envlist/mutt_envlist_unset.c
++++ b/test/envlist/mutt_envlist_unset.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_envlist_unset(void)
+ {
+diff --git a/test/file/common.c b/test/file/common.c
+index 45d3f8dce..b102d86e5 100644
+--- a/test/file/common.c
++++ b/test/file/common.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ const char *file_lines[] = {
+ "This is the first line.",
+diff --git a/test/file/common.h b/test/file/common.h
+index 1857d082c..a13cd1dca 100644
+--- a/test/file/common.h
++++ b/test/file/common.h
+@@ -26,7 +26,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <stdio.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ extern const char *file_lines[];
+
+diff --git a/test/file/mutt_buffer_file_expand_fmt_quote.c b/test/file/mutt_buffer_file_expand_fmt_quote.c
+index 9e8655c49..ee9ec2fa7 100644
+--- a/test/file/mutt_buffer_file_expand_fmt_quote.c
++++ b/test/file/mutt_buffer_file_expand_fmt_quote.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_file_expand_fmt_quote(void)
+ {
+diff --git a/test/file/mutt_buffer_quote_filename.c b/test/file/mutt_buffer_quote_filename.c
+index b6c42508b..ab9cbd8fb 100644
+--- a/test/file/mutt_buffer_quote_filename.c
++++ b/test/file/mutt_buffer_quote_filename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_buffer_quote_filename(void)
+ {
+diff --git a/test/file/mutt_file_check_empty.c b/test/file/mutt_file_check_empty.c
+index 000db0193..2eb1b4fe1 100644
+--- a/test/file/mutt_file_check_empty.c
++++ b/test/file/mutt_file_check_empty.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_check_empty(void)
+ {
+diff --git a/test/file/mutt_file_chmod.c b/test/file/mutt_file_chmod.c
+index f193bfeb2..3585a5ae1 100644
+--- a/test/file/mutt_file_chmod.c
++++ b/test/file/mutt_file_chmod.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_chmod(void)
+ {
+diff --git a/test/file/mutt_file_chmod_add.c b/test/file/mutt_file_chmod_add.c
+index ddbaec5f3..dfe7fde7b 100644
+--- a/test/file/mutt_file_chmod_add.c
++++ b/test/file/mutt_file_chmod_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_chmod_add(void)
+ {
+diff --git a/test/file/mutt_file_chmod_add_stat.c b/test/file/mutt_file_chmod_add_stat.c
+index 219c5e2a6..d1a241a49 100644
+--- a/test/file/mutt_file_chmod_add_stat.c
++++ b/test/file/mutt_file_chmod_add_stat.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_chmod_add_stat(void)
+ {
+diff --git a/test/file/mutt_file_chmod_rm.c b/test/file/mutt_file_chmod_rm.c
+index 99d7e46ec..f698aca9b 100644
+--- a/test/file/mutt_file_chmod_rm.c
++++ b/test/file/mutt_file_chmod_rm.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_chmod_rm(void)
+ {
+diff --git a/test/file/mutt_file_chmod_rm_stat.c b/test/file/mutt_file_chmod_rm_stat.c
+index c164e8d49..d9c9f6a99 100644
+--- a/test/file/mutt_file_chmod_rm_stat.c
++++ b/test/file/mutt_file_chmod_rm_stat.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_chmod_rm_stat(void)
+ {
+diff --git a/test/file/mutt_file_copy_bytes.c b/test/file/mutt_file_copy_bytes.c
+index a7595f1ad..461d1eebd 100644
+--- a/test/file/mutt_file_copy_bytes.c
++++ b/test/file/mutt_file_copy_bytes.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_copy_bytes(void)
+ {
+diff --git a/test/file/mutt_file_copy_stream.c b/test/file/mutt_file_copy_stream.c
+index bef791744..f86037c19 100644
+--- a/test/file/mutt_file_copy_stream.c
++++ b/test/file/mutt_file_copy_stream.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_copy_stream(void)
+ {
+diff --git a/test/file/mutt_file_decrease_mtime.c b/test/file/mutt_file_decrease_mtime.c
+index 82a4bb6e6..2ae05abea 100644
+--- a/test/file/mutt_file_decrease_mtime.c
++++ b/test/file/mutt_file_decrease_mtime.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_decrease_mtime(void)
+ {
+diff --git a/test/file/mutt_file_expand_fmt.c b/test/file/mutt_file_expand_fmt.c
+index 7a52168be..9f36689be 100644
+--- a/test/file/mutt_file_expand_fmt.c
++++ b/test/file/mutt_file_expand_fmt.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_expand_fmt(void)
+ {
+diff --git a/test/file/mutt_file_fclose.c b/test/file/mutt_file_fclose.c
+index 448a4ea3d..3e951701a 100644
+--- a/test/file/mutt_file_fclose.c
++++ b/test/file/mutt_file_fclose.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_fclose(void)
+ {
+diff --git a/test/file/mutt_file_fopen.c b/test/file/mutt_file_fopen.c
+index 75b056cbe..339d9e4cd 100644
+--- a/test/file/mutt_file_fopen.c
++++ b/test/file/mutt_file_fopen.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_fopen(void)
+ {
+diff --git a/test/file/mutt_file_fsync_close.c b/test/file/mutt_file_fsync_close.c
+index 7b5d12065..85cb48267 100644
+--- a/test/file/mutt_file_fsync_close.c
++++ b/test/file/mutt_file_fsync_close.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_fsync_close(void)
+ {
+diff --git a/test/file/mutt_file_get_size.c b/test/file/mutt_file_get_size.c
+index dd2b2e49a..afd6fcd4d 100644
+--- a/test/file/mutt_file_get_size.c
++++ b/test/file/mutt_file_get_size.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_get_size(void)
+ {
+diff --git a/test/file/mutt_file_get_stat_timespec.c b/test/file/mutt_file_get_stat_timespec.c
+index ba4b3c99e..03602b961 100644
+--- a/test/file/mutt_file_get_stat_timespec.c
++++ b/test/file/mutt_file_get_stat_timespec.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_get_stat_timespec(void)
+ {
+diff --git a/test/file/mutt_file_iter_line.c b/test/file/mutt_file_iter_line.c
+index 9770e847c..86f35f56b 100644
+--- a/test/file/mutt_file_iter_line.c
++++ b/test/file/mutt_file_iter_line.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_file_iter_line(void)
+diff --git a/test/file/mutt_file_lock.c b/test/file/mutt_file_lock.c
+index 012c2fced..afd98fb41 100644
+--- a/test/file/mutt_file_lock.c
++++ b/test/file/mutt_file_lock.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_lock(void)
+ {
+diff --git a/test/file/mutt_file_map_lines.c b/test/file/mutt_file_map_lines.c
+index 1bf7d3dd0..10a9c6073 100644
+--- a/test/file/mutt_file_map_lines.c
++++ b/test/file/mutt_file_map_lines.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ #define BOOLIFY(x) ((x) ? "true" : "false")
+diff --git a/test/file/mutt_file_mkdir.c b/test/file/mutt_file_mkdir.c
+index 73de581a1..b91f3e501 100644
+--- a/test/file/mutt_file_mkdir.c
++++ b/test/file/mutt_file_mkdir.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_mkdir(void)
+ {
+diff --git a/test/file/mutt_file_mkstemp_full.c b/test/file/mutt_file_mkstemp_full.c
+index d27e53b81..df75f2c5d 100644
+--- a/test/file/mutt_file_mkstemp_full.c
++++ b/test/file/mutt_file_mkstemp_full.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_mkstemp_full(void)
+ {
+diff --git a/test/file/mutt_file_open.c b/test/file/mutt_file_open.c
+index e150dfd50..543184d39 100644
+--- a/test/file/mutt_file_open.c
++++ b/test/file/mutt_file_open.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_open(void)
+ {
+diff --git a/test/file/mutt_file_quote_filename.c b/test/file/mutt_file_quote_filename.c
+index 58d62e379..29bddfbc9 100644
+--- a/test/file/mutt_file_quote_filename.c
++++ b/test/file/mutt_file_quote_filename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_quote_filename(void)
+ {
+diff --git a/test/file/mutt_file_read_keyword.c b/test/file/mutt_file_read_keyword.c
+index c71d6a470..6465e5146 100644
+--- a/test/file/mutt_file_read_keyword.c
++++ b/test/file/mutt_file_read_keyword.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_read_keyword(void)
+ {
+diff --git a/test/file/mutt_file_read_line.c b/test/file/mutt_file_read_line.c
+index 04fbe3e5f..d715fed33 100644
+--- a/test/file/mutt_file_read_line.c
++++ b/test/file/mutt_file_read_line.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_read_line(void)
+ {
+diff --git a/test/file/mutt_file_rename.c b/test/file/mutt_file_rename.c
+index 33cebc9f8..fa065fa31 100644
+--- a/test/file/mutt_file_rename.c
++++ b/test/file/mutt_file_rename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_rename(void)
+ {
+diff --git a/test/file/mutt_file_rmtree.c b/test/file/mutt_file_rmtree.c
+index 11e4b2f8f..59c33a918 100644
+--- a/test/file/mutt_file_rmtree.c
++++ b/test/file/mutt_file_rmtree.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_rmtree(void)
+ {
+diff --git a/test/file/mutt_file_safe_rename.c b/test/file/mutt_file_safe_rename.c
+index 505fe5be3..d70e463bc 100644
+--- a/test/file/mutt_file_safe_rename.c
++++ b/test/file/mutt_file_safe_rename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_safe_rename(void)
+ {
+diff --git a/test/file/mutt_file_sanitize_filename.c b/test/file/mutt_file_sanitize_filename.c
+index 1f71e778e..42390f085 100644
+--- a/test/file/mutt_file_sanitize_filename.c
++++ b/test/file/mutt_file_sanitize_filename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_sanitize_filename(void)
+ {
+diff --git a/test/file/mutt_file_sanitize_regex.c b/test/file/mutt_file_sanitize_regex.c
+index 7fa60a5a1..599e0ab08 100644
+--- a/test/file/mutt_file_sanitize_regex.c
++++ b/test/file/mutt_file_sanitize_regex.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_sanitize_regex(void)
+ {
+diff --git a/test/file/mutt_file_set_mtime.c b/test/file/mutt_file_set_mtime.c
+index d5dfd9be3..336f8f445 100644
+--- a/test/file/mutt_file_set_mtime.c
++++ b/test/file/mutt_file_set_mtime.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_set_mtime(void)
+ {
+diff --git a/test/file/mutt_file_stat_compare.c b/test/file/mutt_file_stat_compare.c
+index bff68940e..2c5ce4a9b 100644
+--- a/test/file/mutt_file_stat_compare.c
++++ b/test/file/mutt_file_stat_compare.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_stat_compare(void)
+ {
+diff --git a/test/file/mutt_file_stat_timespec_compare.c b/test/file/mutt_file_stat_timespec_compare.c
+index 3fbe1868f..2610dbe17 100644
+--- a/test/file/mutt_file_stat_timespec_compare.c
++++ b/test/file/mutt_file_stat_timespec_compare.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <sys/stat.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_stat_timespec_compare(void)
+ {
+diff --git a/test/file/mutt_file_symlink.c b/test/file/mutt_file_symlink.c
+index 425f08b3f..524e6ed29 100644
+--- a/test/file/mutt_file_symlink.c
++++ b/test/file/mutt_file_symlink.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_symlink(void)
+ {
+diff --git a/test/file/mutt_file_timespec_compare.c b/test/file/mutt_file_timespec_compare.c
+index 60b003596..0355ace22 100644
+--- a/test/file/mutt_file_timespec_compare.c
++++ b/test/file/mutt_file_timespec_compare.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_timespec_compare(void)
+ {
+diff --git a/test/file/mutt_file_touch_atime.c b/test/file/mutt_file_touch_atime.c
+index fe6968fd4..58f7e982e 100644
+--- a/test/file/mutt_file_touch_atime.c
++++ b/test/file/mutt_file_touch_atime.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_touch_atime(void)
+ {
+diff --git a/test/file/mutt_file_unlink.c b/test/file/mutt_file_unlink.c
+index cadc413c4..369d07725 100644
+--- a/test/file/mutt_file_unlink.c
++++ b/test/file/mutt_file_unlink.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_unlink(void)
+ {
+diff --git a/test/file/mutt_file_unlink_empty.c b/test/file/mutt_file_unlink_empty.c
+index edc0a9c31..081f97d51 100644
+--- a/test/file/mutt_file_unlink_empty.c
++++ b/test/file/mutt_file_unlink_empty.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_unlink_empty(void)
+ {
+diff --git a/test/file/mutt_file_unlock.c b/test/file/mutt_file_unlock.c
+index ec6af00b7..55e4547a0 100644
+--- a/test/file/mutt_file_unlock.c
++++ b/test/file/mutt_file_unlock.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_file_unlock(void)
+ {
+diff --git a/test/from/is_from.c b/test/from/is_from.c
+index c32ee1a44..49f5bce67 100644
+--- a/test/from/is_from.c
++++ b/test/from/is_from.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/group/mutt_group_match.c b/test/group/mutt_group_match.c
+index 61c5f4666..272bd4683 100644
+--- a/test/group/mutt_group_match.c
++++ b/test/group/mutt_group_match.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_group_match(void)
+diff --git a/test/group/mutt_grouplist_add.c b/test/group/mutt_grouplist_add.c
+index be3a180b9..837d079f4 100644
+--- a/test/group/mutt_grouplist_add.c
++++ b/test/group/mutt_grouplist_add.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_add(void)
+diff --git a/test/group/mutt_grouplist_add_addrlist.c b/test/group/mutt_grouplist_add_addrlist.c
+index 3c5d67f6e..196a8cc4d 100644
+--- a/test/group/mutt_grouplist_add_addrlist.c
++++ b/test/group/mutt_grouplist_add_addrlist.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_add_addrlist(void)
+diff --git a/test/group/mutt_grouplist_add_regex.c b/test/group/mutt_grouplist_add_regex.c
+index 8e608c80b..9e7d04456 100644
+--- a/test/group/mutt_grouplist_add_regex.c
++++ b/test/group/mutt_grouplist_add_regex.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_add_regex(void)
+diff --git a/test/group/mutt_grouplist_clear.c b/test/group/mutt_grouplist_clear.c
+index 00d54e9a6..5f35408cc 100644
+--- a/test/group/mutt_grouplist_clear.c
++++ b/test/group/mutt_grouplist_clear.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_clear(void)
+diff --git a/test/group/mutt_grouplist_destroy.c b/test/group/mutt_grouplist_destroy.c
+index 83d62a01e..37017daed 100644
+--- a/test/group/mutt_grouplist_destroy.c
++++ b/test/group/mutt_grouplist_destroy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_destroy(void)
+diff --git a/test/group/mutt_grouplist_free.c b/test/group/mutt_grouplist_free.c
+index 60b7455c2..05d14aa3f 100644
+--- a/test/group/mutt_grouplist_free.c
++++ b/test/group/mutt_grouplist_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_free(void)
+diff --git a/test/group/mutt_grouplist_init.c b/test/group/mutt_grouplist_init.c
+index 074c6c67d..04172f650 100644
+--- a/test/group/mutt_grouplist_init.c
++++ b/test/group/mutt_grouplist_init.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_init(void)
+diff --git a/test/group/mutt_grouplist_remove_addrlist.c b/test/group/mutt_grouplist_remove_addrlist.c
+index 1a8182f1c..1cb257c01 100644
+--- a/test/group/mutt_grouplist_remove_addrlist.c
++++ b/test/group/mutt_grouplist_remove_addrlist.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_remove_addrlist(void)
+diff --git a/test/group/mutt_grouplist_remove_regex.c b/test/group/mutt_grouplist_remove_regex.c
+index 276810d9c..6f3839cb1 100644
+--- a/test/group/mutt_grouplist_remove_regex.c
++++ b/test/group/mutt_grouplist_remove_regex.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_grouplist_remove_regex(void)
+diff --git a/test/group/mutt_pattern_group.c b/test/group/mutt_pattern_group.c
+index 734d463a8..2d6e24ca3 100644
+--- a/test/group/mutt_pattern_group.c
++++ b/test/group/mutt_pattern_group.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_pattern_group(void)
+diff --git a/test/gui/reflow.c b/test/gui/reflow.c
+new file mode 100644
+index 000000000..f591a637f
+--- /dev/null
++++ b/test/gui/reflow.c
+@@ -0,0 +1,1404 @@
++/**
++ * @file
++ * Test code for window_reflow()
++ *
++ * @authors
++ * Copyright (C) 2019 Richard Russon <rich@flatcap.org>
++ *
++ * @copyright
++ * This program is free software: you can redistribute it and/or modify it under
++ * the terms of the GNU General Public License as published by the Free Software
++ * Foundation, either version 2 of the License, or (at your option) any later
++ * version.
++ *
++ * This program is distributed in the hope that it will be useful, but WITHOUT
++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
++ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
++ * details.
++ *
++ * You should have received a copy of the GNU General Public License along with
++ * this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#define TEST_NO_MAIN
++#include "acutest.h"
++#include "config.h"
++#include <stdint.h>
++#include "mutt/lib.h"
++#include "gui/mutt_window.h"
++#include "gui/reflow.h"
++
++typedef uint16_t MuttRedrawFlags;
++
++void debug_win_dump(void)
++{
++}
++
++void mutt_menu_set_current_redraw_full(void)
++{
++}
++
++void mutt_menu_set_current_redraw(MuttRedrawFlags redraw)
++{
++}
++
++static const char *win_size(struct MuttWindow *win)
++{
++ if (!win)
++ return "???";
++
++ switch (win->size)
++ {
++ case MUTT_WIN_SIZE_FIXED:
++ return "FIX";
++ case MUTT_WIN_SIZE_MAXIMISE:
++ return "MAX";
++ case MUTT_WIN_SIZE_MINIMISE:
++ return "MIN";
++ }
++
++ return "???";
++}
++
++static void win_serialise(struct MuttWindow *win, struct Buffer *buf)
++{
++ if (!mutt_window_is_visible(win))
++ return;
++
++ mutt_buffer_add_printf(buf, "<%s {%dx,%dy} [%dC,%dR]", win_size(win),
++ win->state.col_offset, win->state.row_offset,
++ win->state.cols, win->state.rows);
++
++ struct MuttWindow *np = NULL;
++ TAILQ_FOREACH(np, &win->children, entries)
++ {
++ win_serialise(np, buf);
++ }
++
++ mutt_buffer_addstr(buf, ">");
++}
++
++void test_window_reflow(void)
++{
++ // void window_reflow(struct MuttWindow *win);
++
++ {
++ window_reflow(NULL);
++ TEST_CHECK_(1, "window_reflow(NULL)");
++ }
++
++ // ---------------------------------------------------------------------------
++ // Horizontal tests in a fixed root of 80x24
++
++ TEST_CASE("Horizontal");
++ {
++ // Root containing 'fix 40'
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [40C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 40);
++ fix1->req_cols = 40;
++
++ mutt_window_add_child(root, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing 'max'
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 20'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [20C,24R]<FIX {0x,0y} [20C,24R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 20' and 'inv'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [20C,24R]<FIX {0x,0y} [20C,24R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *inv1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++ inv1->state.visible = false;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++ mutt_window_add_child(min1, inv1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 20' and 'fix 10'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [30C,24R]<FIX {0x,0y} "
++ "[20C,24R]><FIX {20x,0y} [10C,24R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 10);
++ fix2->state.rows = fix2->req_rows;
++ fix2->state.cols = fix2->req_cols;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++ mutt_window_add_child(min1, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 40' and 'fix 20')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} "
++ "[40C,24R]><FIX {40x,0y} [20C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 40);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++ fix2->state.rows = fix2->req_rows;
++ fix2->state.cols = fix2->req_cols;
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 35' and 'max')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} "
++ "[35C,24R]><MAX {35x,0y} [45C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, max1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 35', 'inv', 'max' and 'inv')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} "
++ "[35C,24R]><MAX {35x,0y} [45C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *inv1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ inv1->state.visible = false;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ struct MuttWindow *inv2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ inv2->state.visible = false;
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, inv1);
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, inv2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' and 'fix 35')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} "
++ "[45C,24R]><FIX {45x,0y} [35C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' and 'max')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} "
++ "[40C,24R]><MAX {40x,0y} [40C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max', 'max', 'max' and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [20C,24R]><MAX {20x,0y} "
++ "[20C,24R]><MAX {40x,0y} [20C,24R]><MAX {60x,0y} [20C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max3 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max4 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, max2);
++ mutt_window_add_child(root, max3);
++ mutt_window_add_child(root, max4);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 40', 'fix 30' and 'fix 30')
++ // Too big to fit on screen
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [40C,24R]><FIX {40x,0y} "
++ "[30C,24R]><FIX {70x,0y} [10C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 40);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 30);
++ struct MuttWindow *fix3 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 30);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++ mutt_window_add_child(root, fix3);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 40', 'fix 60' and 'fix 20')
++ // Too big to fit on screen (third is completely offscreen)
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [40C,24R]><FIX {40x,0y} "
++ "[40C,24R]><FIX {80x,0y} [0C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 40);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 60);
++ struct MuttWindow *fix3 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 20);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++ mutt_window_add_child(root, fix3);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 45' containing ('fix 10' and 'max') and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [45C,24R]<FIX {0x,0y} "
++ "[10C,24R]><MAX {10x,0y} [35C,24R]>><MAX {45x,0y} [35C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 45);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 10);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(fix1, fix2);
++ mutt_window_add_child(fix1, max1);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' containing ('max' and 'fix 10') and 'fix 35')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [45C,24R]<MAX {0x,0y} "
++ "[35C,24R]><FIX {35x,0y} [10C,24R]>><FIX {45x,0y} [35C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 10);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(max1, max2);
++ mutt_window_add_child(max1, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 35' containing ('max' and 'fix 10') and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [35C,24R]<MAX {0x,0y} "
++ "[25C,24R]><FIX {25x,0y} [10C,24R]>><MAX {35x,0y} [45C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 10);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(fix1, max1);
++ mutt_window_add_child(fix1, fix2);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' containing ('max' and 'fix 10') and 'fix 35')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [45C,24R]<MAX {0x,0y} "
++ "[35C,24R]><FIX {35x,0y} [10C,24R]>><FIX {45x,0y} [35C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 10);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 35);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(max1, max2);
++ mutt_window_add_child(max1, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ // ---------------------------------------------------------------------------
++ // Vertical tests in a fixed root of 80x24
++
++ TEST_CASE("Vertical");
++ {
++ // Root containing 'fix 20'
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,20R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 20, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->req_rows = 20;
++
++ mutt_window_add_child(root, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing 'max'
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,24R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 20'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [80C,20R]<FIX {0x,0y} [80C,20R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 20, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 20' and 'inv'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [80C,20R]<FIX {0x,0y} [80C,20R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 20, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *inv1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 20, MUTT_WIN_SIZE_UNLIMITED);
++ inv1->state.visible = false;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++ mutt_window_add_child(min1, inv1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('min' containing ('fix 10' and 'fix 5'))
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MIN {0x,0y} [80C,15R]<FIX {0x,0y} "
++ "[80C,10R]><FIX {0x,10y} [80C,5R]>>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *min1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++ fix2->state.rows = fix2->req_rows;
++ fix2->state.cols = fix2->req_cols;
++
++ mutt_window_add_child(root, min1);
++ mutt_window_add_child(min1, fix1);
++ mutt_window_add_child(min1, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 10' and 'fix 5')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,10R]><FIX {0x,10y} [80C,5R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++ fix2->state.rows = fix2->req_rows;
++ fix2->state.cols = fix2->req_cols;
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 15' and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,15R]><MAX {0x,15y} [80C,9R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, max1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 15', 'inv', 'max' and 'inv')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,15R]><MAX {0x,15y} [80C,9R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ struct MuttWindow *inv1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++ inv1->state.visible = false;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ struct MuttWindow *inv2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ inv2->state.visible = false;
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, inv1);
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, inv2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' and 'fix 15')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,9R]><FIX {0x,9y} [80C,15R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++ fix1->state.rows = fix1->req_rows;
++ fix1->state.cols = fix1->req_cols;
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, fix1);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' and 'max')
++ static const char *expected = "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} "
++ "[80C,12R]><MAX {0x,12y} [80C,12R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max', 'max', 'max' and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,6R]><MAX {0x,6y} "
++ "[80C,6R]><MAX {0x,12y} [80C,6R]><MAX {0x,18y} [80C,6R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max3 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max4 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(root, max2);
++ mutt_window_add_child(root, max3);
++ mutt_window_add_child(root, max4);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 10', 'fix 12' and 'fix 15')
++ // Too big to fit on screen
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,10R]><FIX {0x,10y} "
++ "[80C,12R]><FIX {0x,22y} [80C,2R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 12, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix3 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++ mutt_window_add_child(root, fix3);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 20', 'fix 10' and 'fix 5')
++ // Too big to fit on screen (third is completely offscreen)
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,20R]><FIX {0x,20y} "
++ "[80C,4R]><FIX {0x,24y} [80C,0R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 20, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix3 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(root, fix2);
++ mutt_window_add_child(root, fix3);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 15' containing ('fix 5' and 'max') and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,15R]<FIX {0x,0y} "
++ "[80C,5R]><MAX {0x,5y} [80C,10R]>><MAX {0x,15y} [80C,9R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(fix1, fix2);
++ mutt_window_add_child(fix1, max1);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' containing ('max' and 'fix 10') and 'fix 12')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,12R]<MAX {0x,0y} "
++ "[80C,2R]><FIX {0x,2y} [80C,10R]>><FIX {0x,12y} [80C,12R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 12, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(max1, max2);
++ mutt_window_add_child(max1, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('fix 15' containing ('max' and 'fix 10') and 'max')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,15R]<MAX {0x,0y} "
++ "[80C,5R]><FIX {0x,5y} [80C,10R]>><MAX {0x,15y} [80C,9R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 15, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, fix1);
++ mutt_window_add_child(fix1, max1);
++ mutt_window_add_child(fix1, fix2);
++ mutt_window_add_child(root, max2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ {
++ // Root containing ('max' containing ('max' and 'fix 10') and 'fix 5')
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<MAX {0x,0y} [80C,19R]<MAX {0x,0y} "
++ "[80C,9R]><FIX {0x,9y} [80C,10R]>><FIX {0x,19y} [80C,5R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *fix1 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 10, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *fix2 = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 5, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max1 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *max2 =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, max1);
++ mutt_window_add_child(max1, max2);
++ mutt_window_add_child(max1, fix1);
++ mutt_window_add_child(root, fix2);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++
++ // ---------------------------------------------------------------------------
++ // Index/Pager test in a fixed root of 80x24
++ TEST_CASE("Index/Pager");
++ {
++ // (help, sidebar, pager_index_lines visible, status_on_top=no)
++ static const char *expected =
++ "<FIX {0x,0y} [80C,24R]<FIX {0x,0y} [80C,1R]><MAX {0x,1y} "
++ "[80C,22R]<MAX {0x,1y} [80C,22R]<FIX {0x,1y} [15C,22R]><MAX {15x,1y} "
++ "[65C,22R]<MIN {15x,1y} [65C,6R]<FIX {15x,1y} [65C,5R]><FIX {15x,6y} "
++ "[65C,1R]>><MAX {15x,7y} [65C,16R]<MAX {15x,7y} [65C,15R]><FIX "
++ "{15x,22y} [65C,1R]>>>>><FIX {0x,23y} [80C,1R]>>";
++
++ struct MuttWindow *root =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 24, 80);
++ root->state.rows = root->req_rows;
++ root->state.cols = root->req_cols;
++
++ struct MuttWindow *help = mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED,
++ 1, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *all_dialogs =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *message = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(root, help);
++ mutt_window_add_child(root, all_dialogs);
++ mutt_window_add_child(root, message);
++
++ struct MuttWindow *index_dlg =
++ mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *sidebar = mutt_window_new(MUTT_WIN_ORIENT_HORIZONTAL, MUTT_WIN_SIZE_FIXED,
++ MUTT_WIN_SIZE_UNLIMITED, 15);
++ struct MuttWindow *right_cont =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(all_dialogs, index_dlg);
++ mutt_window_add_child(index_dlg, sidebar);
++ mutt_window_add_child(index_dlg, right_cont);
++
++ struct MuttWindow *index_panel =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MINIMISE, 0, 0);
++ struct MuttWindow *index = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 5, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *index_bar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(index_panel, index);
++ mutt_window_add_child(index_panel, index_bar);
++
++ struct MuttWindow *pager_panel =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *pager =
++ mutt_window_new(MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_MAXIMISE,
++ MUTT_WIN_SIZE_UNLIMITED, MUTT_WIN_SIZE_UNLIMITED);
++ struct MuttWindow *pager_bar = mutt_window_new(
++ MUTT_WIN_ORIENT_VERTICAL, MUTT_WIN_SIZE_FIXED, 1, MUTT_WIN_SIZE_UNLIMITED);
++
++ mutt_window_add_child(pager_panel, pager);
++ mutt_window_add_child(pager_panel, pager_bar);
++
++ mutt_window_add_child(right_cont, index_panel);
++ mutt_window_add_child(right_cont, pager_panel);
++
++ window_reflow(root);
++
++ struct Buffer buf = mutt_buffer_make(1024);
++ win_serialise(root, &buf);
++ TEST_CHECK(strcmp(mutt_b2s(&buf), expected) == 0);
++ TEST_MSG("Expected %s\n", expected);
++ TEST_MSG("Got %s\n", mutt_b2s(&buf));
++
++ mutt_buffer_dealloc(&buf);
++ mutt_window_free(&root);
++ }
++}
+diff --git a/test/hash/mutt_hash_delete.c b/test/hash/mutt_hash_delete.c
+index 5d9c8165f..92b5a0991 100644
+--- a/test/hash/mutt_hash_delete.c
++++ b/test/hash/mutt_hash_delete.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_delete(void)
+ {
+diff --git a/test/hash/mutt_hash_find.c b/test/hash/mutt_hash_find.c
+index f99b4e050..5aa9af228 100644
+--- a/test/hash/mutt_hash_find.c
++++ b/test/hash/mutt_hash_find.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_find(void)
+ {
+diff --git a/test/hash/mutt_hash_find_bucket.c b/test/hash/mutt_hash_find_bucket.c
+index bd1c866cc..6fe13f8e0 100644
+--- a/test/hash/mutt_hash_find_bucket.c
++++ b/test/hash/mutt_hash_find_bucket.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_find_bucket(void)
+ {
+diff --git a/test/hash/mutt_hash_find_elem.c b/test/hash/mutt_hash_find_elem.c
+index 9ed37f264..63fb8aca4 100644
+--- a/test/hash/mutt_hash_find_elem.c
++++ b/test/hash/mutt_hash_find_elem.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_find_elem(void)
+ {
+diff --git a/test/hash/mutt_hash_free.c b/test/hash/mutt_hash_free.c
+index 9abc34e5c..4523fc962 100644
+--- a/test/hash/mutt_hash_free.c
++++ b/test/hash/mutt_hash_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_free(void)
+ {
+diff --git a/test/hash/mutt_hash_insert.c b/test/hash/mutt_hash_insert.c
+index 0416859d1..86b55b2d6 100644
+--- a/test/hash/mutt_hash_insert.c
++++ b/test/hash/mutt_hash_insert.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_insert(void)
+ {
+diff --git a/test/hash/mutt_hash_int_delete.c b/test/hash/mutt_hash_int_delete.c
+index 1af3dd65b..37736eaf0 100644
+--- a/test/hash/mutt_hash_int_delete.c
++++ b/test/hash/mutt_hash_int_delete.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_int_delete(void)
+ {
+diff --git a/test/hash/mutt_hash_int_find.c b/test/hash/mutt_hash_int_find.c
+index 0f494a2c0..dd9760039 100644
+--- a/test/hash/mutt_hash_int_find.c
++++ b/test/hash/mutt_hash_int_find.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_int_find(void)
+ {
+diff --git a/test/hash/mutt_hash_int_insert.c b/test/hash/mutt_hash_int_insert.c
+index 5ce8dd514..933e24f41 100644
+--- a/test/hash/mutt_hash_int_insert.c
++++ b/test/hash/mutt_hash_int_insert.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_int_insert(void)
+ {
+diff --git a/test/hash/mutt_hash_int_new.c b/test/hash/mutt_hash_int_new.c
+index f0885df01..71ab5fa18 100644
+--- a/test/hash/mutt_hash_int_new.c
++++ b/test/hash/mutt_hash_int_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_int_new(void)
+ {
+diff --git a/test/hash/mutt_hash_new.c b/test/hash/mutt_hash_new.c
+index ed4bd6aa4..552345015 100644
+--- a/test/hash/mutt_hash_new.c
++++ b/test/hash/mutt_hash_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_new(void)
+ {
+diff --git a/test/hash/mutt_hash_set_destructor.c b/test/hash/mutt_hash_set_destructor.c
+index a10f6e311..b6a7f0694 100644
+--- a/test/hash/mutt_hash_set_destructor.c
++++ b/test/hash/mutt_hash_set_destructor.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void dummy_hash_free(int type, void *obj, intptr_t data)
+ {
+diff --git a/test/hash/mutt_hash_typed_insert.c b/test/hash/mutt_hash_typed_insert.c
+index a80a0e06f..09b5ba207 100644
+--- a/test/hash/mutt_hash_typed_insert.c
++++ b/test/hash/mutt_hash_typed_insert.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_typed_insert(void)
+ {
+diff --git a/test/hash/mutt_hash_walk.c b/test/hash/mutt_hash_walk.c
+index d640534a6..574807af7 100644
+--- a/test/hash/mutt_hash_walk.c
++++ b/test/hash/mutt_hash_walk.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hash_walk(void)
+ {
+diff --git a/test/history/mutt_hist_add.c b/test/history/mutt_hist_add.c
+index 0cd67f7c0..8aa48c881 100644
+--- a/test/history/mutt_hist_add.c
++++ b/test/history/mutt_hist_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_add(void)
+ {
+diff --git a/test/history/mutt_hist_at_scratch.c b/test/history/mutt_hist_at_scratch.c
+index bd3d78264..f3b02d1b3 100644
+--- a/test/history/mutt_hist_at_scratch.c
++++ b/test/history/mutt_hist_at_scratch.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_at_scratch(void)
+ {
+diff --git a/test/history/mutt_hist_free.c b/test/history/mutt_hist_free.c
+index cf957be23..d7c82ac67 100644
+--- a/test/history/mutt_hist_free.c
++++ b/test/history/mutt_hist_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_free(void)
+ {
+diff --git a/test/history/mutt_hist_init.c b/test/history/mutt_hist_init.c
+index 61540da31..1891d8623 100644
+--- a/test/history/mutt_hist_init.c
++++ b/test/history/mutt_hist_init.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_init(void)
+ {
+diff --git a/test/history/mutt_hist_next.c b/test/history/mutt_hist_next.c
+index b7be3d19f..e083352dc 100644
+--- a/test/history/mutt_hist_next.c
++++ b/test/history/mutt_hist_next.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_next(void)
+ {
+diff --git a/test/history/mutt_hist_prev.c b/test/history/mutt_hist_prev.c
+index c9d290ba1..8f4232b53 100644
+--- a/test/history/mutt_hist_prev.c
++++ b/test/history/mutt_hist_prev.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_prev(void)
+ {
+diff --git a/test/history/mutt_hist_read_file.c b/test/history/mutt_hist_read_file.c
+index 07a397ed1..68179e8d9 100644
+--- a/test/history/mutt_hist_read_file.c
++++ b/test/history/mutt_hist_read_file.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_read_file(void)
+ {
+diff --git a/test/history/mutt_hist_reset_state.c b/test/history/mutt_hist_reset_state.c
+index ffd5b57ac..ade91ccb9 100644
+--- a/test/history/mutt_hist_reset_state.c
++++ b/test/history/mutt_hist_reset_state.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_reset_state(void)
+ {
+diff --git a/test/history/mutt_hist_save_scratch.c b/test/history/mutt_hist_save_scratch.c
+index f37659e39..56f0f350a 100644
+--- a/test/history/mutt_hist_save_scratch.c
++++ b/test/history/mutt_hist_save_scratch.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_save_scratch(void)
+ {
+diff --git a/test/history/mutt_hist_search.c b/test/history/mutt_hist_search.c
+index a0672f50c..7c001a03a 100644
+--- a/test/history/mutt_hist_search.c
++++ b/test/history/mutt_hist_search.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_hist_search(void)
+ {
+diff --git a/test/idna/mutt_idna_intl_to_local.c b/test/idna/mutt_idna_intl_to_local.c
+index bd41e7c80..9a7833eeb 100644
+--- a/test/idna/mutt_idna_intl_to_local.c
++++ b/test/idna/mutt_idna_intl_to_local.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_idna_intl_to_local(void)
+diff --git a/test/idna/mutt_idna_local_to_intl.c b/test/idna/mutt_idna_local_to_intl.c
+index 342f49f5e..58f2e3dc6 100644
+--- a/test/idna/mutt_idna_local_to_intl.c
++++ b/test/idna/mutt_idna_local_to_intl.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_idna_local_to_intl(void)
+diff --git a/test/idna/mutt_idna_print_version.c b/test/idna/mutt_idna_print_version.c
+index e296ed9a2..d4c95f465 100644
+--- a/test/idna/mutt_idna_print_version.c
++++ b/test/idna/mutt_idna_print_version.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_idna_print_version(void)
+diff --git a/test/idna/mutt_idna_to_ascii_lz.c b/test/idna/mutt_idna_to_ascii_lz.c
+index 3abf7f644..51373a4e7 100644
+--- a/test/idna/mutt_idna_to_ascii_lz.c
++++ b/test/idna/mutt_idna_to_ascii_lz.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+
+ void test_mutt_idna_to_ascii_lz(void)
+diff --git a/test/list/common.c b/test/list/common.c
+index 3e0fba124..e26c6a36f 100644
+--- a/test/list/common.c
++++ b/test/list/common.c
+@@ -22,7 +22,7 @@
+
+ #include "config.h"
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ListHead test_list_create(const char *items[], bool copy)
+ {
+diff --git a/test/list/common.h b/test/list/common.h
+index 6583b37d4..f0d60e39a 100644
+--- a/test/list/common.h
++++ b/test/list/common.h
+@@ -24,7 +24,7 @@
+ #define TEST_LIST_COMMON_H
+
+ #include <stdbool.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct ListHead test_list_create(const char *items[], bool copy);
+
+diff --git a/test/list/mutt_list_clear.c b/test/list/mutt_list_clear.c
+index 86ba541b1..77e69d455 100644
+--- a/test/list/mutt_list_clear.c
++++ b/test/list/mutt_list_clear.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_clear(void)
+diff --git a/test/list/mutt_list_compare.c b/test/list/mutt_list_compare.c
+index df9ae5130..11ffe3c28 100644
+--- a/test/list/mutt_list_compare.c
++++ b/test/list/mutt_list_compare.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_compare(void)
+diff --git a/test/list/mutt_list_find.c b/test/list/mutt_list_find.c
+index 5038ca10c..7caec94bc 100644
+--- a/test/list/mutt_list_find.c
++++ b/test/list/mutt_list_find.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_find(void)
+diff --git a/test/list/mutt_list_free.c b/test/list/mutt_list_free.c
+index ebc98ff85..72fd1c8b9 100644
+--- a/test/list/mutt_list_free.c
++++ b/test/list/mutt_list_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_free(void)
+diff --git a/test/list/mutt_list_free_type.c b/test/list/mutt_list_free_type.c
+index ebeea6b5e..401f79524 100644
+--- a/test/list/mutt_list_free_type.c
++++ b/test/list/mutt_list_free_type.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_list_free(void **ptr)
+diff --git a/test/list/mutt_list_insert_after.c b/test/list/mutt_list_insert_after.c
+index f198a1996..d265d5076 100644
+--- a/test/list/mutt_list_insert_after.c
++++ b/test/list/mutt_list_insert_after.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_insert_after(void)
+diff --git a/test/list/mutt_list_insert_head.c b/test/list/mutt_list_insert_head.c
+index 1590f5118..39da466b3 100644
+--- a/test/list/mutt_list_insert_head.c
++++ b/test/list/mutt_list_insert_head.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_insert_head(void)
+diff --git a/test/list/mutt_list_insert_tail.c b/test/list/mutt_list_insert_tail.c
+index fcab59e3d..983abcabd 100644
+--- a/test/list/mutt_list_insert_tail.c
++++ b/test/list/mutt_list_insert_tail.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_insert_tail(void)
+diff --git a/test/list/mutt_list_match.c b/test/list/mutt_list_match.c
+index a6cd56413..319cc6f16 100644
+--- a/test/list/mutt_list_match.c
++++ b/test/list/mutt_list_match.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_list_match(void)
+diff --git a/test/list/mutt_list_str_split.c b/test/list/mutt_list_str_split.c
+index a53a6d5df..f8cda2dd0 100644
+--- a/test/list/mutt_list_str_split.c
++++ b/test/list/mutt_list_str_split.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void print_compared_list(struct ListHead expected, struct ListHead actual)
+ {
+diff --git a/test/logging/log_disp_file.c b/test/logging/log_disp_file.c
+index 6c83e3437..bff7b5937 100644
+--- a/test/logging/log_disp_file.c
++++ b/test/logging/log_disp_file.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_disp_file(void)
+ {
+diff --git a/test/logging/log_disp_queue.c b/test/logging/log_disp_queue.c
+index c98f1d2f8..ec36752b0 100644
+--- a/test/logging/log_disp_queue.c
++++ b/test/logging/log_disp_queue.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_disp_queue(void)
+ {
+diff --git a/test/logging/log_disp_terminal.c b/test/logging/log_disp_terminal.c
+index 60cd33152..67316cf70 100644
+--- a/test/logging/log_disp_terminal.c
++++ b/test/logging/log_disp_terminal.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_disp_terminal(void)
+ {
+diff --git a/test/logging/log_file_close.c b/test/logging/log_file_close.c
+index 8a2d108c7..768576333 100644
+--- a/test/logging/log_file_close.c
++++ b/test/logging/log_file_close.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_close(void)
+ {
+diff --git a/test/logging/log_file_open.c b/test/logging/log_file_open.c
+index e279c19c4..8c9b8599e 100644
+--- a/test/logging/log_file_open.c
++++ b/test/logging/log_file_open.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_open(void)
+ {
+diff --git a/test/logging/log_file_running.c b/test/logging/log_file_running.c
+index 8f3ad5168..5684e7098 100644
+--- a/test/logging/log_file_running.c
++++ b/test/logging/log_file_running.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_running(void)
+ {
+diff --git a/test/logging/log_file_set_filename.c b/test/logging/log_file_set_filename.c
+index 44e88a4a6..a23ff6529 100644
+--- a/test/logging/log_file_set_filename.c
++++ b/test/logging/log_file_set_filename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_set_filename(void)
+ {
+diff --git a/test/logging/log_file_set_level.c b/test/logging/log_file_set_level.c
+index 3fc584165..414a536b3 100644
+--- a/test/logging/log_file_set_level.c
++++ b/test/logging/log_file_set_level.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_set_level(void)
+ {
+diff --git a/test/logging/log_file_set_version.c b/test/logging/log_file_set_version.c
+index 71ea04586..58983d8cc 100644
+--- a/test/logging/log_file_set_version.c
++++ b/test/logging/log_file_set_version.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_file_set_version(void)
+ {
+diff --git a/test/logging/log_queue_add.c b/test/logging/log_queue_add.c
+index eb23e4dd9..b06a15fe7 100644
+--- a/test/logging/log_queue_add.c
++++ b/test/logging/log_queue_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_queue_add(void)
+ {
+diff --git a/test/logging/log_queue_empty.c b/test/logging/log_queue_empty.c
+index a02eb2147..99a673961 100644
+--- a/test/logging/log_queue_empty.c
++++ b/test/logging/log_queue_empty.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_queue_empty(void)
+ {
+diff --git a/test/logging/log_queue_flush.c b/test/logging/log_queue_flush.c
+index 7c7a9ff4a..b79d641d3 100644
+--- a/test/logging/log_queue_flush.c
++++ b/test/logging/log_queue_flush.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_queue_flush(void)
+ {
+diff --git a/test/logging/log_queue_save.c b/test/logging/log_queue_save.c
+index bedd7e77b..e968b2dbb 100644
+--- a/test/logging/log_queue_save.c
++++ b/test/logging/log_queue_save.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_queue_save(void)
+ {
+diff --git a/test/logging/log_queue_set_max_size.c b/test/logging/log_queue_set_max_size.c
+index 276f9dea0..e8d056658 100644
+--- a/test/logging/log_queue_set_max_size.c
++++ b/test/logging/log_queue_set_max_size.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_log_queue_set_max_size(void)
+ {
+diff --git a/test/main.c b/test/main.c
+index 71d0a110a..e534eec9d 100644
+--- a/test/main.c
++++ b/test/main.c
+@@ -101,6 +101,7 @@
+ NEOMUTT_TEST_ITEM(test_mutt_ch_lookup_remove) \
+ NEOMUTT_TEST_ITEM(test_mutt_ch_set_charset) \
+ NEOMUTT_TEST_ITEM(config_set) \
++ NEOMUTT_TEST_ITEM(config_subset) \
+ NEOMUTT_TEST_ITEM(config_account) \
+ NEOMUTT_TEST_ITEM(config_initial) \
+ NEOMUTT_TEST_ITEM(config_synonym) \
+@@ -110,6 +111,7 @@
+ NEOMUTT_TEST_ITEM(config_long) \
+ NEOMUTT_TEST_ITEM(config_mbtable) \
+ NEOMUTT_TEST_ITEM(config_number) \
++ NEOMUTT_TEST_ITEM(config_path) \
+ NEOMUTT_TEST_ITEM(config_quad) \
+ NEOMUTT_TEST_ITEM(config_regex) \
+ NEOMUTT_TEST_ITEM(config_slist) \
+@@ -403,7 +405,8 @@
+ NEOMUTT_TEST_ITEM(test_url_pct_decode) \
+ NEOMUTT_TEST_ITEM(test_url_pct_encode) \
+ NEOMUTT_TEST_ITEM(test_url_tobuffer) \
+- NEOMUTT_TEST_ITEM(test_url_tostring)
++ NEOMUTT_TEST_ITEM(test_url_tostring) \
++ NEOMUTT_TEST_ITEM(test_window_reflow)
+
+ /******************************************************************************
+ * You probably don't need to touch what follows.
+diff --git a/test/mapping/mutt_map_get_name.c b/test/mapping/mutt_map_get_name.c
+index 3f27ba7d0..cf1a2f8b1 100644
+--- a/test/mapping/mutt_map_get_name.c
++++ b/test/mapping/mutt_map_get_name.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_map_get_name(void)
+ {
+diff --git a/test/mapping/mutt_map_get_value.c b/test/mapping/mutt_map_get_value.c
+index 7e1cac6a8..fea7b5002 100644
+--- a/test/mapping/mutt_map_get_value.c
++++ b/test/mapping/mutt_map_get_value.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_map_get_value(void)
+ {
+diff --git a/test/mbyte/mutt_mb_charlen.c b/test/mbyte/mutt_mb_charlen.c
+index 7165029e3..d21d1594b 100644
+--- a/test/mbyte/mutt_mb_charlen.c
++++ b/test/mbyte/mutt_mb_charlen.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_charlen(void)
+ {
+diff --git a/test/mbyte/mutt_mb_filter_unprintable.c b/test/mbyte/mutt_mb_filter_unprintable.c
+index 837effba1..646b7f4de 100644
+--- a/test/mbyte/mutt_mb_filter_unprintable.c
++++ b/test/mbyte/mutt_mb_filter_unprintable.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_filter_unprintable(void)
+ {
+diff --git a/test/mbyte/mutt_mb_get_initials.c b/test/mbyte/mutt_mb_get_initials.c
+index da520d567..77750acf9 100644
+--- a/test/mbyte/mutt_mb_get_initials.c
++++ b/test/mbyte/mutt_mb_get_initials.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_get_initials(void)
+ {
+diff --git a/test/mbyte/mutt_mb_is_display_corrupting_utf8.c b/test/mbyte/mutt_mb_is_display_corrupting_utf8.c
+index 4f31af5c2..e4f17fd74 100644
+--- a/test/mbyte/mutt_mb_is_display_corrupting_utf8.c
++++ b/test/mbyte/mutt_mb_is_display_corrupting_utf8.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_is_display_corrupting_utf8(void)
+ {
+diff --git a/test/mbyte/mutt_mb_is_lower.c b/test/mbyte/mutt_mb_is_lower.c
+index 7be1e6153..0e2dfbb86 100644
+--- a/test/mbyte/mutt_mb_is_lower.c
++++ b/test/mbyte/mutt_mb_is_lower.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_is_lower(void)
+ {
+diff --git a/test/mbyte/mutt_mb_is_shell_char.c b/test/mbyte/mutt_mb_is_shell_char.c
+index ca81e1e78..f2eedde42 100644
+--- a/test/mbyte/mutt_mb_is_shell_char.c
++++ b/test/mbyte/mutt_mb_is_shell_char.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_is_shell_char(void)
+ {
+diff --git a/test/mbyte/mutt_mb_mbstowcs.c b/test/mbyte/mutt_mb_mbstowcs.c
+index ed95022bd..1e4411bdf 100644
+--- a/test/mbyte/mutt_mb_mbstowcs.c
++++ b/test/mbyte/mutt_mb_mbstowcs.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_mbstowcs(void)
+ {
+diff --git a/test/mbyte/mutt_mb_wcstombs.c b/test/mbyte/mutt_mb_wcstombs.c
+index ed7ce0fa5..419400bab 100644
+--- a/test/mbyte/mutt_mb_wcstombs.c
++++ b/test/mbyte/mutt_mb_wcstombs.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_wcstombs(void)
+ {
+diff --git a/test/mbyte/mutt_mb_wcswidth.c b/test/mbyte/mutt_mb_wcswidth.c
+index d378bb31a..b122156f0 100644
+--- a/test/mbyte/mutt_mb_wcswidth.c
++++ b/test/mbyte/mutt_mb_wcswidth.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_wcswidth(void)
+ {
+diff --git a/test/mbyte/mutt_mb_wcwidth.c b/test/mbyte/mutt_mb_wcwidth.c
+index bf1d02e28..0071e6f55 100644
+--- a/test/mbyte/mutt_mb_wcwidth.c
++++ b/test/mbyte/mutt_mb_wcwidth.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_wcwidth(void)
+ {
+diff --git a/test/mbyte/mutt_mb_width.c b/test/mbyte/mutt_mb_width.c
+index 65c5d6083..f84b748c6 100644
+--- a/test/mbyte/mutt_mb_width.c
++++ b/test/mbyte/mutt_mb_width.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_width(void)
+ {
+diff --git a/test/mbyte/mutt_mb_width_ceiling.c b/test/mbyte/mutt_mb_width_ceiling.c
+index 3590ed6c2..e3083ace0 100644
+--- a/test/mbyte/mutt_mb_width_ceiling.c
++++ b/test/mbyte/mutt_mb_width_ceiling.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mb_width_ceiling(void)
+ {
+diff --git a/test/md5/common.c b/test/md5/common.c
+index ebc980fb8..85b067223 100644
+--- a/test/md5/common.c
++++ b/test/md5/common.c
+@@ -22,7 +22,7 @@
+
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ // clang-format off
+diff --git a/test/md5/common.h b/test/md5/common.h
+index bf4835b77..7c63ecc51 100644
+--- a/test/md5/common.h
++++ b/test/md5/common.h
+@@ -25,7 +25,7 @@
+
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct Md5TestData
+ {
+diff --git a/test/md5/mutt_md5.c b/test/md5/mutt_md5.c
+index b42e1b09d..5a6b5a36b 100644
+--- a/test/md5/mutt_md5.c
++++ b/test/md5/mutt_md5.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_md5(void)
+diff --git a/test/md5/mutt_md5_bytes.c b/test/md5/mutt_md5_bytes.c
+index 2c1aa3202..8c21b131d 100644
+--- a/test/md5/mutt_md5_bytes.c
++++ b/test/md5/mutt_md5_bytes.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_md5_bytes(void)
+diff --git a/test/md5/mutt_md5_finish_ctx.c b/test/md5/mutt_md5_finish_ctx.c
+index d05e9ecfb..78a755a22 100644
+--- a/test/md5/mutt_md5_finish_ctx.c
++++ b/test/md5/mutt_md5_finish_ctx.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_md5_finish_ctx(void)
+ {
+diff --git a/test/md5/mutt_md5_init_ctx.c b/test/md5/mutt_md5_init_ctx.c
+index 8d5ada8e5..ab74175de 100644
+--- a/test/md5/mutt_md5_init_ctx.c
++++ b/test/md5/mutt_md5_init_ctx.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "common.h"
+
+ void test_mutt_md5_init_ctx(void)
+diff --git a/test/md5/mutt_md5_process.c b/test/md5/mutt_md5_process.c
+index 93fd56bbd..ece188ad4 100644
+--- a/test/md5/mutt_md5_process.c
++++ b/test/md5/mutt_md5_process.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_md5_process(void)
+ {
+diff --git a/test/md5/mutt_md5_process_bytes.c b/test/md5/mutt_md5_process_bytes.c
+index 06e75c294..c3709a6db 100644
+--- a/test/md5/mutt_md5_process_bytes.c
++++ b/test/md5/mutt_md5_process_bytes.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_md5_process_bytes(void)
+ {
+diff --git a/test/md5/mutt_md5_toascii.c b/test/md5/mutt_md5_toascii.c
+index 50b06994b..48ac27357 100644
+--- a/test/md5/mutt_md5_toascii.c
++++ b/test/md5/mutt_md5_toascii.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_md5_toascii(void)
+ {
+diff --git a/test/memory/mutt_mem_calloc.c b/test/memory/mutt_mem_calloc.c
+index 16da6467a..11ccabd10 100644
+--- a/test/memory/mutt_mem_calloc.c
++++ b/test/memory/mutt_mem_calloc.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mem_calloc(void)
+ {
+diff --git a/test/memory/mutt_mem_free.c b/test/memory/mutt_mem_free.c
+index d31182ada..808441285 100644
+--- a/test/memory/mutt_mem_free.c
++++ b/test/memory/mutt_mem_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mem_free(void)
+ {
+diff --git a/test/memory/mutt_mem_malloc.c b/test/memory/mutt_mem_malloc.c
+index 5252f8eb6..338f048e2 100644
+--- a/test/memory/mutt_mem_malloc.c
++++ b/test/memory/mutt_mem_malloc.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mem_malloc(void)
+ {
+diff --git a/test/memory/mutt_mem_realloc.c b/test/memory/mutt_mem_realloc.c
+index 7e3afbdc1..f777f3636 100644
+--- a/test/memory/mutt_mem_realloc.c
++++ b/test/memory/mutt_mem_realloc.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_mem_realloc(void)
+ {
+diff --git a/test/parameter/mutt_param_cmp_strict.c b/test/parameter/mutt_param_cmp_strict.c
+index 71ec40bc2..ae470fe1c 100644
+--- a/test/parameter/mutt_param_cmp_strict.c
++++ b/test/parameter/mutt_param_cmp_strict.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_delete.c b/test/parameter/mutt_param_delete.c
+index eabaa6b35..d1bb6b3df 100644
+--- a/test/parameter/mutt_param_delete.c
++++ b/test/parameter/mutt_param_delete.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_free.c b/test/parameter/mutt_param_free.c
+index 567057db4..00bd62ffd 100644
+--- a/test/parameter/mutt_param_free.c
++++ b/test/parameter/mutt_param_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_free_one.c b/test/parameter/mutt_param_free_one.c
+index e6b9b0557..060dfb052 100644
+--- a/test/parameter/mutt_param_free_one.c
++++ b/test/parameter/mutt_param_free_one.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_get.c b/test/parameter/mutt_param_get.c
+index b82536be8..e686d935e 100644
+--- a/test/parameter/mutt_param_get.c
++++ b/test/parameter/mutt_param_get.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_new.c b/test/parameter/mutt_param_new.c
+index 810372c3c..725251a72 100644
+--- a/test/parameter/mutt_param_new.c
++++ b/test/parameter/mutt_param_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parameter/mutt_param_set.c b/test/parameter/mutt_param_set.c
+index 80ec11831..2393ebae8 100644
+--- a/test/parameter/mutt_param_set.c
++++ b/test/parameter/mutt_param_set.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_auto_subscribe.c b/test/parse/mutt_auto_subscribe.c
+index b338c3bcf..d05ed8162 100644
+--- a/test/parse/mutt_auto_subscribe.c
++++ b/test/parse/mutt_auto_subscribe.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_check_encoding.c b/test/parse/mutt_check_encoding.c
+index 3b765aad6..b08689f3e 100644
+--- a/test/parse/mutt_check_encoding.c
++++ b/test/parse/mutt_check_encoding.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_check_mime_type.c b/test/parse/mutt_check_mime_type.c
+index a6f3cc327..a3918e3a4 100644
+--- a/test/parse/mutt_check_mime_type.c
++++ b/test/parse/mutt_check_mime_type.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_extract_message_id.c b/test/parse/mutt_extract_message_id.c
+index 35eb4df1e..1957ebac2 100644
+--- a/test/parse/mutt_extract_message_id.c
++++ b/test/parse/mutt_extract_message_id.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_is_message_type.c b/test/parse/mutt_is_message_type.c
+index 4cda1b811..99dd9df8c 100644
+--- a/test/parse/mutt_is_message_type.c
++++ b/test/parse/mutt_is_message_type.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_matches_ignore.c b/test/parse/mutt_matches_ignore.c
+index e54ae4499..6049f8362 100644
+--- a/test/parse/mutt_matches_ignore.c
++++ b/test/parse/mutt_matches_ignore.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_parse_content_type.c b/test/parse/mutt_parse_content_type.c
+index 22fb9cd80..6f37b9c24 100644
+--- a/test/parse/mutt_parse_content_type.c
++++ b/test/parse/mutt_parse_content_type.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_parse_mailto.c b/test/parse/mutt_parse_mailto.c
+index 2b62a2944..d99d25f6d 100644
+--- a/test/parse/mutt_parse_mailto.c
++++ b/test/parse/mutt_parse_mailto.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_parse_multipart.c b/test/parse/mutt_parse_multipart.c
+index 18d62a345..9739dea07 100644
+--- a/test/parse/mutt_parse_multipart.c
++++ b/test/parse/mutt_parse_multipart.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_parse_part.c b/test/parse/mutt_parse_part.c
+index f2d3ba9dc..09b55bc10 100644
+--- a/test/parse/mutt_parse_part.c
++++ b/test/parse/mutt_parse_part.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_read_mime_header.c b/test/parse/mutt_read_mime_header.c
+index a23c29470..c91a129df 100644
+--- a/test/parse/mutt_read_mime_header.c
++++ b/test/parse/mutt_read_mime_header.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_rfc822_parse_line.c b/test/parse/mutt_rfc822_parse_line.c
+index 58246f605..654174929 100644
+--- a/test/parse/mutt_rfc822_parse_line.c
++++ b/test/parse/mutt_rfc822_parse_line.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_rfc822_parse_message.c b/test/parse/mutt_rfc822_parse_message.c
+index 76a6ba2ac..802c329da 100644
+--- a/test/parse/mutt_rfc822_parse_message.c
++++ b/test/parse/mutt_rfc822_parse_message.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_rfc822_read_header.c b/test/parse/mutt_rfc822_read_header.c
+index ae324d938..14c5aa57c 100644
+--- a/test/parse/mutt_rfc822_read_header.c
++++ b/test/parse/mutt_rfc822_read_header.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/parse/mutt_rfc822_read_line.c b/test/parse/mutt_rfc822_read_line.c
+index 5f00f0b1f..d295faff3 100644
+--- a/test/parse/mutt_rfc822_read_line.c
++++ b/test/parse/mutt_rfc822_read_line.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/path/mutt_path_abbr_folder.c b/test/path/mutt_path_abbr_folder.c
+index 9a05439ae..38f980d84 100644
+--- a/test/path/mutt_path_abbr_folder.c
++++ b/test/path/mutt_path_abbr_folder.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_abbr_folder(void)
+ {
+diff --git a/test/path/mutt_path_basename.c b/test/path/mutt_path_basename.c
+index 3815796b5..ebd6d7d53 100644
+--- a/test/path/mutt_path_basename.c
++++ b/test/path/mutt_path_basename.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_basename(void)
+ {
+diff --git a/test/path/mutt_path_canon.c b/test/path/mutt_path_canon.c
+index 90b264cc6..6ce706037 100644
+--- a/test/path/mutt_path_canon.c
++++ b/test/path/mutt_path_canon.c
+@@ -23,13 +23,13 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_canon(void)
+ {
+ // bool mutt_path_canon(char *buf, size_t buflen, const char *homedir);
+
+ {
+- TEST_CHECK(!mutt_path_canon(NULL, 10, "apple"));
++ TEST_CHECK(!mutt_path_canon(NULL, 10, "apple", true));
+ }
+ }
+diff --git a/test/path/mutt_path_concat.c b/test/path/mutt_path_concat.c
+index 14a2ec3e0..1b2fcd4b0 100644
+--- a/test/path/mutt_path_concat.c
++++ b/test/path/mutt_path_concat.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_concat(void)
+ {
+diff --git a/test/path/mutt_path_dirname.c b/test/path/mutt_path_dirname.c
+index 2decd0c66..15978e678 100644
+--- a/test/path/mutt_path_dirname.c
++++ b/test/path/mutt_path_dirname.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_dirname(void)
+ {
+diff --git a/test/path/mutt_path_escape.c b/test/path/mutt_path_escape.c
+index 378a134cb..f6d1f4e56 100644
+--- a/test/path/mutt_path_escape.c
++++ b/test/path/mutt_path_escape.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_escape(void)
+ {
+diff --git a/test/path/mutt_path_getcwd.c b/test/path/mutt_path_getcwd.c
+index b884dfad8..0e0689ceb 100644
+--- a/test/path/mutt_path_getcwd.c
++++ b/test/path/mutt_path_getcwd.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_getcwd(void)
+ {
+diff --git a/test/path/mutt_path_parent.c b/test/path/mutt_path_parent.c
+index e166bdc24..70862401e 100644
+--- a/test/path/mutt_path_parent.c
++++ b/test/path/mutt_path_parent.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_parent(void)
+ {
+diff --git a/test/path/mutt_path_pretty.c b/test/path/mutt_path_pretty.c
+index a37f92566..bafdb1ee1 100644
+--- a/test/path/mutt_path_pretty.c
++++ b/test/path/mutt_path_pretty.c
+@@ -23,18 +23,18 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_pretty(void)
+ {
+ // bool mutt_path_pretty(char *buf, size_t buflen, const char *homedir);
+
+ {
+- TEST_CHECK(!mutt_path_pretty(NULL, 10, "apple"));
++ TEST_CHECK(!mutt_path_pretty(NULL, 10, "apple", true));
+ }
+
+ {
+ char buf[32] = { 0 };
+- TEST_CHECK(!mutt_path_pretty(buf, sizeof(buf), NULL));
++ TEST_CHECK(!mutt_path_pretty(buf, sizeof(buf), NULL, true));
+ }
+ }
+diff --git a/test/path/mutt_path_realpath.c b/test/path/mutt_path_realpath.c
+index ecd69bd56..c17eec457 100644
+--- a/test/path/mutt_path_realpath.c
++++ b/test/path/mutt_path_realpath.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_realpath(void)
+ {
+diff --git a/test/path/mutt_path_tidy.c b/test/path/mutt_path_tidy.c
+index 5a6d1d28e..74c8ee80a 100644
+--- a/test/path/mutt_path_tidy.c
++++ b/test/path/mutt_path_tidy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_tidy(void)
+ {
+@@ -136,7 +136,7 @@ void test_mutt_path_tidy(void)
+ // clang-format on
+
+ {
+- TEST_CHECK(!mutt_path_tidy(NULL));
++ TEST_CHECK(!mutt_path_tidy(NULL, true));
+ }
+
+ {
+@@ -144,7 +144,7 @@ void test_mutt_path_tidy(void)
+ for (size_t i = 0; i < mutt_array_size(tests); i++)
+ {
+ mutt_str_strfcpy(buf, tests[i][0], sizeof(buf));
+- mutt_path_tidy(buf);
++ mutt_path_tidy(buf, true);
+ if (!TEST_CHECK(mutt_str_strcmp(buf, tests[i][1]) == 0))
+ {
+ TEST_MSG("Input: %s", tests[i][0]);
+diff --git a/test/path/mutt_path_tidy_dotdot.c b/test/path/mutt_path_tidy_dotdot.c
+index 557d7adb7..9feb294fa 100644
+--- a/test/path/mutt_path_tidy_dotdot.c
++++ b/test/path/mutt_path_tidy_dotdot.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_tidy_dotdot(void)
+ {
+diff --git a/test/path/mutt_path_tidy_slash.c b/test/path/mutt_path_tidy_slash.c
+index 96056901c..61895e46b 100644
+--- a/test/path/mutt_path_tidy_slash.c
++++ b/test/path/mutt_path_tidy_slash.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_tidy_slash(void)
+ {
+@@ -60,7 +60,7 @@ void test_mutt_path_tidy_slash(void)
+ // clang-format on
+
+ {
+- TEST_CHECK(!mutt_path_tidy_slash(NULL));
++ TEST_CHECK(!mutt_path_tidy_slash(NULL, true));
+ }
+
+ {
+@@ -68,7 +68,7 @@ void test_mutt_path_tidy_slash(void)
+ for (size_t i = 0; i < mutt_array_size(tests); i++)
+ {
+ mutt_str_strfcpy(buf, tests[i][0], sizeof(buf));
+- mutt_path_tidy_slash(buf);
++ mutt_path_tidy_slash(buf, true);
+ if (!TEST_CHECK(mutt_str_strcmp(buf, tests[i][1]) == 0))
+ {
+ TEST_MSG("Input: %s", tests[i][0]);
+diff --git a/test/path/mutt_path_to_absolute.c b/test/path/mutt_path_to_absolute.c
+index d29d06b9d..8e7a76d31 100644
+--- a/test/path/mutt_path_to_absolute.c
++++ b/test/path/mutt_path_to_absolute.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_path_to_absolute(void)
+ {
+diff --git a/test/pattern/dummy.c b/test/pattern/dummy.c
+index a9d8f34c1..53c22a916 100644
+--- a/test/pattern/dummy.c
++++ b/test/pattern/dummy.c
+@@ -83,11 +83,6 @@ int mutt_count_body_parts(struct Mailbox *m, struct Email *e)
+ return g_body_parts;
+ }
+
+-pid_t mutt_create_filter(const char *s, FILE **fp_in, FILE **fp_out, FILE **fp_err)
+-{
+- return -1;
+-}
+-
+ int mutt_buffer_get_field_full(const char *field, struct Buffer *buf, int complete,
+ bool multiple, char ***files, int *numfiles)
+ {
+@@ -114,8 +109,7 @@ void mutt_parse_mime_message(struct Mailbox *m, struct Email *e)
+ {
+ }
+
+-void mutt_progress_init(struct Progress *progress, const char *msg,
+- int type, size_t size)
++void mutt_progress_init(struct Progress *progress, const char *msg, int type, size_t size)
+ {
+ }
+ void mutt_progress_update(struct Progress *progress, long pos, int percent)
+@@ -126,11 +120,6 @@ void mutt_set_flag_update(struct Mailbox *m, struct Email *e, int flag, bool bf,
+ {
+ }
+
+-int mutt_wait_filter(pid_t pid)
+-{
+- return -1;
+-}
+-
+ int mx_msg_close(struct Mailbox *m, struct Message **msg)
+ {
+ return 0;
+@@ -165,3 +154,14 @@ struct Email *mutt_get_virt_email(struct Mailbox *m, int vnum)
+
+ return m->emails[inum];
+ }
++
++void mutt_buffer_mktemp_full(struct Buffer *buf, const char *prefix,
++ const char *suffix, const char *src, int line)
++{
++}
++
++int mutt_rfc822_write_header(FILE *fp, struct Envelope *env, struct Body *attach,
++ int mode, bool privacy, bool hide_protected_subject)
++{
++ return 0;
++}
+diff --git a/test/pattern/extract.c b/test/pattern/extract.c
+index cdae0957a..0f2c411f1 100644
+--- a/test/pattern/extract.c
++++ b/test/pattern/extract.c
+@@ -22,10 +22,10 @@
+
+ #include "config.h"
+ #include <string.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "config/lib.h"
++#include "core/lib.h"
+ #include "mutt.h"
+-#include "filter.h"
+ #include "globals.h"
+ #include "myvar.h"
+
+@@ -155,7 +155,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ cmd.data = mutt_str_strdup(tok->dptr);
+ }
+ *pc = '`';
+- pid = mutt_create_filter(cmd.data, NULL, &fp, NULL);
++ pid = filter_create(cmd.data, NULL, &fp, NULL);
+ if (pid < 0)
+ {
+ mutt_debug(LL_DEBUG1, "unable to fork command: %s\n", cmd.data);
+@@ -170,7 +170,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ struct Buffer expn = mutt_buffer_make(0);
+ expn.data = mutt_file_read_line(NULL, &expn.dsize, fp, &line, 0);
+ mutt_file_fclose(&fp);
+- mutt_wait_filter(pid);
++ filter_wait(pid);
+
+ /* if we got output, make a new string consisting of the shell output
+ * plus whatever else was left on the original line */
+@@ -230,7 +230,7 @@ int mutt_extract_token(struct Buffer *dest, struct Buffer *tok, TokenFlags flags
+ {
+ struct Buffer result;
+ mutt_buffer_init(&result);
+- int rc = cs_str_string_get(Config, var, &result);
++ int rc = cs_str_string_get(NeoMutt->sub->cs, var, &result);
+
+ if (CSR_RESULT(rc) == CSR_SUCCESS)
+ {
+diff --git a/test/regex/mutt_regex_compile.c b/test/regex/mutt_regex_compile.c
+index 4956f9ccc..e4b62e255 100644
+--- a/test/regex/mutt_regex_compile.c
++++ b/test/regex/mutt_regex_compile.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regex_compile(void)
+ {
+diff --git a/test/regex/mutt_regex_free.c b/test/regex/mutt_regex_free.c
+index 57418cfb3..cbe4774d4 100644
+--- a/test/regex/mutt_regex_free.c
++++ b/test/regex/mutt_regex_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regex_free(void)
+ {
+diff --git a/test/regex/mutt_regex_new.c b/test/regex/mutt_regex_new.c
+index bdf033164..59a42b7de 100644
+--- a/test/regex/mutt_regex_new.c
++++ b/test/regex/mutt_regex_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regex_new(void)
+ {
+diff --git a/test/regex/mutt_regexlist_add.c b/test/regex/mutt_regexlist_add.c
+index 603411925..fc634ac93 100644
+--- a/test/regex/mutt_regexlist_add.c
++++ b/test/regex/mutt_regexlist_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regexlist_add(void)
+ {
+diff --git a/test/regex/mutt_regexlist_free.c b/test/regex/mutt_regexlist_free.c
+index 0bd78a36a..cedcfe765 100644
+--- a/test/regex/mutt_regexlist_free.c
++++ b/test/regex/mutt_regexlist_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regexlist_free(void)
+ {
+diff --git a/test/regex/mutt_regexlist_match.c b/test/regex/mutt_regexlist_match.c
+index fc2a447c7..0270e249f 100644
+--- a/test/regex/mutt_regexlist_match.c
++++ b/test/regex/mutt_regexlist_match.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regexlist_match(void)
+ {
+diff --git a/test/regex/mutt_regexlist_new.c b/test/regex/mutt_regexlist_new.c
+index 8a1dae80d..f00375747 100644
+--- a/test/regex/mutt_regexlist_new.c
++++ b/test/regex/mutt_regexlist_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regexlist_new(void)
+ {
+diff --git a/test/regex/mutt_regexlist_remove.c b/test/regex/mutt_regexlist_remove.c
+index 27f5fa46d..9634ae21d 100644
+--- a/test/regex/mutt_regexlist_remove.c
++++ b/test/regex/mutt_regexlist_remove.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_regexlist_remove(void)
+ {
+diff --git a/test/regex/mutt_replacelist_add.c b/test/regex/mutt_replacelist_add.c
+index 77bbd7210..28a47f2bf 100644
+--- a/test/regex/mutt_replacelist_add.c
++++ b/test/regex/mutt_replacelist_add.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_add(void)
+ {
+diff --git a/test/regex/mutt_replacelist_apply.c b/test/regex/mutt_replacelist_apply.c
+index ecc252d89..cde23b7ec 100644
+--- a/test/regex/mutt_replacelist_apply.c
++++ b/test/regex/mutt_replacelist_apply.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_apply(void)
+ {
+diff --git a/test/regex/mutt_replacelist_free.c b/test/regex/mutt_replacelist_free.c
+index 99d1d2992..09c9a7244 100644
+--- a/test/regex/mutt_replacelist_free.c
++++ b/test/regex/mutt_replacelist_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_free(void)
+ {
+diff --git a/test/regex/mutt_replacelist_match.c b/test/regex/mutt_replacelist_match.c
+index 0441edfea..9c724527f 100644
+--- a/test/regex/mutt_replacelist_match.c
++++ b/test/regex/mutt_replacelist_match.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_match(void)
+ {
+diff --git a/test/regex/mutt_replacelist_new.c b/test/regex/mutt_replacelist_new.c
+index ee9fc73d8..69ebfbeba 100644
+--- a/test/regex/mutt_replacelist_new.c
++++ b/test/regex/mutt_replacelist_new.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_new(void)
+ {
+diff --git a/test/regex/mutt_replacelist_remove.c b/test/regex/mutt_replacelist_remove.c
+index 9aa682b5c..37ff78c5d 100644
+--- a/test/regex/mutt_replacelist_remove.c
++++ b/test/regex/mutt_replacelist_remove.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_replacelist_remove(void)
+ {
+diff --git a/test/rfc2047/common.c b/test/rfc2047/common.c
+index daed7d03b..510a31b6f 100644
+--- a/test/rfc2047/common.c
++++ b/test/rfc2047/common.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <locale.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+ #include "common.h"
+
+diff --git a/test/rfc2047/common.h b/test/rfc2047/common.h
+index a773d95a8..6729e091d 100644
+--- a/test/rfc2047/common.h
++++ b/test/rfc2047/common.h
+@@ -26,7 +26,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include <locale.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "email/lib.h"
+
+ struct Rfc2047TestData
+diff --git a/test/rfc2047/rfc2047_decode.c b/test/rfc2047/rfc2047_decode.c
+index 27ba02daa..dd4c8e101 100644
+--- a/test/rfc2047/rfc2047_decode.c
++++ b/test/rfc2047/rfc2047_decode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "common.h"
+diff --git a/test/rfc2047/rfc2047_decode_addrlist.c b/test/rfc2047/rfc2047_decode_addrlist.c
+index a08d05764..e715ce130 100644
+--- a/test/rfc2047/rfc2047_decode_addrlist.c
++++ b/test/rfc2047/rfc2047_decode_addrlist.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/rfc2047/rfc2047_decode_envelope.c b/test/rfc2047/rfc2047_decode_envelope.c
+index 3a9841632..97c7ded6d 100644
+--- a/test/rfc2047/rfc2047_decode_envelope.c
++++ b/test/rfc2047/rfc2047_decode_envelope.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/rfc2047/rfc2047_encode.c b/test/rfc2047/rfc2047_encode.c
+index aa6b1ba0e..d48e0d0a6 100644
+--- a/test/rfc2047/rfc2047_encode.c
++++ b/test/rfc2047/rfc2047_encode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+ #include "common.h"
+diff --git a/test/rfc2047/rfc2047_encode_addrlist.c b/test/rfc2047/rfc2047_encode_addrlist.c
+index 75f962fb1..08771c918 100644
+--- a/test/rfc2047/rfc2047_encode_addrlist.c
++++ b/test/rfc2047/rfc2047_encode_addrlist.c
+@@ -24,7 +24,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/rfc2047/rfc2047_encode_envelope.c b/test/rfc2047/rfc2047_encode_envelope.c
+index 5412dda18..e6ffb349d 100644
+--- a/test/rfc2047/rfc2047_encode_envelope.c
++++ b/test/rfc2047/rfc2047_encode_envelope.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/rfc2231/rfc2231_decode_parameters.c b/test/rfc2231/rfc2231_decode_parameters.c
+index b7d8b05d9..77f268981 100644
+--- a/test/rfc2231/rfc2231_decode_parameters.c
++++ b/test/rfc2231/rfc2231_decode_parameters.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/rfc2231/rfc2231_encode_string.c b/test/rfc2231/rfc2231_encode_string.c
+index c72ebe07e..c49bf7786 100644
+--- a/test/rfc2231/rfc2231_encode_string.c
++++ b/test/rfc2231/rfc2231_encode_string.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/signal/mutt_sig_allow_interrupt.c b/test/signal/mutt_sig_allow_interrupt.c
+index 921bd0eb0..7a6ad5211 100644
+--- a/test/signal/mutt_sig_allow_interrupt.c
++++ b/test/signal/mutt_sig_allow_interrupt.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_allow_interrupt(void)
+ {
+diff --git a/test/signal/mutt_sig_block.c b/test/signal/mutt_sig_block.c
+index 23a704aae..ecc0c995c 100644
+--- a/test/signal/mutt_sig_block.c
++++ b/test/signal/mutt_sig_block.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_block(void)
+ {
+diff --git a/test/signal/mutt_sig_block_system.c b/test/signal/mutt_sig_block_system.c
+index 94c2b37f8..0931f4a7f 100644
+--- a/test/signal/mutt_sig_block_system.c
++++ b/test/signal/mutt_sig_block_system.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_block_system(void)
+ {
+diff --git a/test/signal/mutt_sig_empty_handler.c b/test/signal/mutt_sig_empty_handler.c
+index 26c9e60ac..7f79aaf7c 100644
+--- a/test/signal/mutt_sig_empty_handler.c
++++ b/test/signal/mutt_sig_empty_handler.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_empty_handler(void)
+ {
+diff --git a/test/signal/mutt_sig_exit_handler.c b/test/signal/mutt_sig_exit_handler.c
+index fec091015..0dfdd98f9 100644
+--- a/test/signal/mutt_sig_exit_handler.c
++++ b/test/signal/mutt_sig_exit_handler.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_exit_handler(void)
+ {
+diff --git a/test/signal/mutt_sig_init.c b/test/signal/mutt_sig_init.c
+index 4d290ffcc..698a748c2 100644
+--- a/test/signal/mutt_sig_init.c
++++ b/test/signal/mutt_sig_init.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_init(void)
+ {
+diff --git a/test/signal/mutt_sig_unblock.c b/test/signal/mutt_sig_unblock.c
+index c691775e6..057ae1db4 100644
+--- a/test/signal/mutt_sig_unblock.c
++++ b/test/signal/mutt_sig_unblock.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_unblock(void)
+ {
+diff --git a/test/signal/mutt_sig_unblock_system.c b/test/signal/mutt_sig_unblock_system.c
+index 95e3a5f3b..cbcd4eb19 100644
+--- a/test/signal/mutt_sig_unblock_system.c
++++ b/test/signal/mutt_sig_unblock_system.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_sig_unblock_system(void)
+ {
+diff --git a/test/string/mutt_str_adjust.c b/test/string/mutt_str_adjust.c
+index bbbea41d2..3c7157981 100644
+--- a/test/string/mutt_str_adjust.c
++++ b/test/string/mutt_str_adjust.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_adjust(void)
+ {
+diff --git a/test/string/mutt_str_append_item.c b/test/string/mutt_str_append_item.c
+index 81b13514c..e2331404f 100644
+--- a/test/string/mutt_str_append_item.c
++++ b/test/string/mutt_str_append_item.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct AppendTest
+ {
+diff --git a/test/string/mutt_str_asprintf.c b/test/string/mutt_str_asprintf.c
+index 26abe20ee..8fad58268 100644
+--- a/test/string/mutt_str_asprintf.c
++++ b/test/string/mutt_str_asprintf.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_asprintf(void)
+ {
+diff --git a/test/string/mutt_str_atoi.c b/test/string/mutt_str_atoi.c
+index 7be65328a..8d4bf2f00 100644
+--- a/test/string/mutt_str_atoi.c
++++ b/test/string/mutt_str_atoi.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_atol.c b/test/string/mutt_str_atol.c
+index 9571ab835..473feaadb 100644
+--- a/test/string/mutt_str_atol.c
++++ b/test/string/mutt_str_atol.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <limits.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_atos.c b/test/string/mutt_str_atos.c
+index dea7cb3aa..227282e4c 100644
+--- a/test/string/mutt_str_atos.c
++++ b/test/string/mutt_str_atos.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_atoui.c b/test/string/mutt_str_atoui.c
+index fa79f9d83..5ec7d609d 100644
+--- a/test/string/mutt_str_atoui.c
++++ b/test/string/mutt_str_atoui.c
+@@ -23,8 +23,8 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
+ #include <limits.h>
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_atoul.c b/test/string/mutt_str_atoul.c
+index aecb58f07..5782879b3 100644
+--- a/test/string/mutt_str_atoul.c
++++ b/test/string/mutt_str_atoul.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <limits.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_atoull.c b/test/string/mutt_str_atoull.c
+index 1489c965e..3256af01e 100644
+--- a/test/string/mutt_str_atoull.c
++++ b/test/string/mutt_str_atoull.c
+@@ -24,7 +24,7 @@
+ #include "acutest.h"
+ #include "config.h"
+ #include <limits.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TestValue
+ {
+diff --git a/test/string/mutt_str_dequote_comment.c b/test/string/mutt_str_dequote_comment.c
+index eeafc2848..94b90ac31 100644
+--- a/test/string/mutt_str_dequote_comment.c
++++ b/test/string/mutt_str_dequote_comment.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_dequote_comment(void)
+ {
+diff --git a/test/string/mutt_str_find_word.c b/test/string/mutt_str_find_word.c
+index bfffe2c88..ac7a6f989 100644
+--- a/test/string/mutt_str_find_word.c
++++ b/test/string/mutt_str_find_word.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct FindWordTest
+ {
+diff --git a/test/string/mutt_str_getenv.c b/test/string/mutt_str_getenv.c
+index 2ea14b95b..e09eb8911 100644
+--- a/test/string/mutt_str_getenv.c
++++ b/test/string/mutt_str_getenv.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_getenv(void)
+ {
+diff --git a/test/string/mutt_str_inline_replace.c b/test/string/mutt_str_inline_replace.c
+index e0bdd94d3..44438b825 100644
+--- a/test/string/mutt_str_inline_replace.c
++++ b/test/string/mutt_str_inline_replace.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct InlineReplaceTest
+ {
+diff --git a/test/string/mutt_str_is_ascii.c b/test/string/mutt_str_is_ascii.c
+index 3e0eb556d..05b14c3a7 100644
+--- a/test/string/mutt_str_is_ascii.c
++++ b/test/string/mutt_str_is_ascii.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct IsAsciiTest
+ {
+diff --git a/test/string/mutt_str_is_email_wsp.c b/test/string/mutt_str_is_email_wsp.c
+index 2b901040c..804aae608 100644
+--- a/test/string/mutt_str_is_email_wsp.c
++++ b/test/string/mutt_str_is_email_wsp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_is_email_wsp(void)
+ {
+diff --git a/test/string/mutt_str_lws_len.c b/test/string/mutt_str_lws_len.c
+index 104154d15..921bed0f6 100644
+--- a/test/string/mutt_str_lws_len.c
++++ b/test/string/mutt_str_lws_len.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct LwsLenTest
+ {
+diff --git a/test/string/mutt_str_lws_rlen.c b/test/string/mutt_str_lws_rlen.c
+index b4dddda78..99c3cc0f4 100644
+--- a/test/string/mutt_str_lws_rlen.c
++++ b/test/string/mutt_str_lws_rlen.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct LwsLenTest
+ {
+diff --git a/test/string/mutt_str_next_word.c b/test/string/mutt_str_next_word.c
+index 2e370dd76..548ff428c 100644
+--- a/test/string/mutt_str_next_word.c
++++ b/test/string/mutt_str_next_word.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct NextWordTest
+ {
+diff --git a/test/string/mutt_str_remall_strcasestr.c b/test/string/mutt_str_remall_strcasestr.c
+index 405d86aeb..c19336c1d 100644
+--- a/test/string/mutt_str_remall_strcasestr.c
++++ b/test/string/mutt_str_remall_strcasestr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct RemallTest
+ {
+diff --git a/test/string/mutt_str_remove_trailing_ws.c b/test/string/mutt_str_remove_trailing_ws.c
+index f13865847..dc110732a 100644
+--- a/test/string/mutt_str_remove_trailing_ws.c
++++ b/test/string/mutt_str_remove_trailing_ws.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct TrailTest
+ {
+diff --git a/test/string/mutt_str_replace.c b/test/string/mutt_str_replace.c
+index 46a3657e9..b0ae2c850 100644
+--- a/test/string/mutt_str_replace.c
++++ b/test/string/mutt_str_replace.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_replace(void)
+ {
+diff --git a/test/string/mutt_str_rstrnstr.c b/test/string/mutt_str_rstrnstr.c
+index 4198f5c83..e73068554 100644
+--- a/test/string/mutt_str_rstrnstr.c
++++ b/test/string/mutt_str_rstrnstr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct RstrnTest
+ {
+diff --git a/test/string/mutt_str_skip_email_wsp.c b/test/string/mutt_str_skip_email_wsp.c
+index dbf601b6d..eef5f7181 100644
+--- a/test/string/mutt_str_skip_email_wsp.c
++++ b/test/string/mutt_str_skip_email_wsp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct SkipTest
+ {
+diff --git a/test/string/mutt_str_skip_whitespace.c b/test/string/mutt_str_skip_whitespace.c
+index 4625922e1..a137f6cea 100644
+--- a/test/string/mutt_str_skip_whitespace.c
++++ b/test/string/mutt_str_skip_whitespace.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct SkipTest
+ {
+diff --git a/test/string/mutt_str_startswith.c b/test/string/mutt_str_startswith.c
+index 2ba7e4be2..4555c1bcd 100644
+--- a/test/string/mutt_str_startswith.c
++++ b/test/string/mutt_str_startswith.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_startswith(void)
+ {
+diff --git a/test/string/mutt_str_strcasecmp.c b/test/string/mutt_str_strcasecmp.c
+index e65d6d0e0..eadc912c0 100644
+--- a/test/string/mutt_str_strcasecmp.c
++++ b/test/string/mutt_str_strcasecmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strcasecmp(void)
+ {
+diff --git a/test/string/mutt_str_strcasestr.c b/test/string/mutt_str_strcasestr.c
+index ca521b26d..586ea11ce 100644
+--- a/test/string/mutt_str_strcasestr.c
++++ b/test/string/mutt_str_strcasestr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strcasestr(void)
+ {
+diff --git a/test/string/mutt_str_strcat.c b/test/string/mutt_str_strcat.c
+index d1ce6f571..cf4a93383 100644
+--- a/test/string/mutt_str_strcat.c
++++ b/test/string/mutt_str_strcat.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strcat(void)
+ {
+diff --git a/test/string/mutt_str_strchrnul.c b/test/string/mutt_str_strchrnul.c
+index 4220fb9d69..d3d4b57ca 100644
+--- a/test/string/mutt_str_strchrnul.c
++++ b/test/string/mutt_str_strchrnul.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strchrnul(void)
+ {
+diff --git a/test/string/mutt_str_strcmp.c b/test/string/mutt_str_strcmp.c
+index 669cdad51..606abe87a 100644
+--- a/test/string/mutt_str_strcmp.c
++++ b/test/string/mutt_str_strcmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strcmp(void)
+ {
+diff --git a/test/string/mutt_str_strcoll.c b/test/string/mutt_str_strcoll.c
+index 1b23927e7..7f37087c2 100644
+--- a/test/string/mutt_str_strcoll.c
++++ b/test/string/mutt_str_strcoll.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strcoll(void)
+ {
+diff --git a/test/string/mutt_str_strdup.c b/test/string/mutt_str_strdup.c
+index facb91ca0..b25b79f65 100644
+--- a/test/string/mutt_str_strdup.c
++++ b/test/string/mutt_str_strdup.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strdup(void)
+ {
+diff --git a/test/string/mutt_str_strfcpy.c b/test/string/mutt_str_strfcpy.c
+index 20f83eec6..78f552751 100644
+--- a/test/string/mutt_str_strfcpy.c
++++ b/test/string/mutt_str_strfcpy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strfcpy(void)
+ {
+diff --git a/test/string/mutt_str_stristr.c b/test/string/mutt_str_stristr.c
+index 828655c1e..f1562d98a 100644
+--- a/test/string/mutt_str_stristr.c
++++ b/test/string/mutt_str_stristr.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ struct StriTest
+ {
+diff --git a/test/string/mutt_str_strlen.c b/test/string/mutt_str_strlen.c
+index 61e7ad903..21cd5425c 100644
+--- a/test/string/mutt_str_strlen.c
++++ b/test/string/mutt_str_strlen.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strlen(void)
+ {
+diff --git a/test/string/mutt_str_strlower.c b/test/string/mutt_str_strlower.c
+index f91afcd22..94719ccf5 100644
+--- a/test/string/mutt_str_strlower.c
++++ b/test/string/mutt_str_strlower.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strlower(void)
+ {
+diff --git a/test/string/mutt_str_strncasecmp.c b/test/string/mutt_str_strncasecmp.c
+index b4026253d..87467ad26 100644
+--- a/test/string/mutt_str_strncasecmp.c
++++ b/test/string/mutt_str_strncasecmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strncasecmp(void)
+ {
+diff --git a/test/string/mutt_str_strncat.c b/test/string/mutt_str_strncat.c
+index 5b8398d46..7207943a7 100644
+--- a/test/string/mutt_str_strncat.c
++++ b/test/string/mutt_str_strncat.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strncat(void)
+ {
+diff --git a/test/string/mutt_str_strncmp.c b/test/string/mutt_str_strncmp.c
+index 00a8c56ed..144b97b23 100644
+--- a/test/string/mutt_str_strncmp.c
++++ b/test/string/mutt_str_strncmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strncmp(void)
+ {
+diff --git a/test/string/mutt_str_strnfcpy.c b/test/string/mutt_str_strnfcpy.c
+index a4c35f00b..0e02396a0 100644
+--- a/test/string/mutt_str_strnfcpy.c
++++ b/test/string/mutt_str_strnfcpy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_strnfcpy(void)
+ {
+diff --git a/test/string/mutt_str_substr_copy.c b/test/string/mutt_str_substr_copy.c
+index bc9ca5bec..7449394a8 100644
+--- a/test/string/mutt_str_substr_copy.c
++++ b/test/string/mutt_str_substr_copy.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_substr_copy(void)
+ {
+diff --git a/test/string/mutt_str_substr_dup.c b/test/string/mutt_str_substr_dup.c
+index 38e339730..518c0f99d 100644
+--- a/test/string/mutt_str_substr_dup.c
++++ b/test/string/mutt_str_substr_dup.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_substr_dup(void)
+ {
+diff --git a/test/string/mutt_str_sysexit.c b/test/string/mutt_str_sysexit.c
+index 54b0daf9b..3bfc1241c 100644
+--- a/test/string/mutt_str_sysexit.c
++++ b/test/string/mutt_str_sysexit.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #ifdef HAVE_SYSEXITS_H
+ #include <sysexits.h>
+ #endif
+diff --git a/test/string/mutt_str_word_casecmp.c b/test/string/mutt_str_word_casecmp.c
+index aec017e85..aae78032d 100644
+--- a/test/string/mutt_str_word_casecmp.c
++++ b/test/string/mutt_str_word_casecmp.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+
+ void test_mutt_str_word_casecmp(void)
+ {
+diff --git a/test/tags/driver_tags_free.c b/test/tags/driver_tags_free.c
+index e7699958c..16ee01dd8 100644
+--- a/test/tags/driver_tags_free.c
++++ b/test/tags/driver_tags_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/tags/driver_tags_get.c b/test/tags/driver_tags_get.c
+index b93d2b27a..0c3605530 100644
+--- a/test/tags/driver_tags_get.c
++++ b/test/tags/driver_tags_get.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/tags/driver_tags_get_transformed.c b/test/tags/driver_tags_get_transformed.c
+index 4129c35fb..875e9d20d 100644
+--- a/test/tags/driver_tags_get_transformed.c
++++ b/test/tags/driver_tags_get_transformed.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/tags/driver_tags_get_transformed_for.c b/test/tags/driver_tags_get_transformed_for.c
+index 948e7a07e..c031a2bb3 100644
+--- a/test/tags/driver_tags_get_transformed_for.c
++++ b/test/tags/driver_tags_get_transformed_for.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/tags/driver_tags_get_with_hidden.c b/test/tags/driver_tags_get_with_hidden.c
+index 376bee559..3036bf2dc 100644
+--- a/test/tags/driver_tags_get_with_hidden.c
++++ b/test/tags/driver_tags_get_with_hidden.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/tags/driver_tags_replace.c b/test/tags/driver_tags_replace.c
+index 846857385..e54dfcde2 100644
+--- a/test/tags/driver_tags_replace.c
++++ b/test/tags/driver_tags_replace.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/clean_references.c b/test/thread/clean_references.c
+index 94026720c..871639562 100644
+--- a/test/thread/clean_references.c
++++ b/test/thread/clean_references.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/find_virtual.c b/test/thread/find_virtual.c
+index 635e874da..fcaee9d8e 100644
+--- a/test/thread/find_virtual.c
++++ b/test/thread/find_virtual.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/insert_message.c b/test/thread/insert_message.c
+index 33c53fbf0..a85acd5a5 100644
+--- a/test/thread/insert_message.c
++++ b/test/thread/insert_message.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/is_descendant.c b/test/thread/is_descendant.c
+index 8bb531679..266f15b9a 100644
+--- a/test/thread/is_descendant.c
++++ b/test/thread/is_descendant.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/mutt_break_thread.c b/test/thread/mutt_break_thread.c
+index 0771742c6..12a55432e 100644
+--- a/test/thread/mutt_break_thread.c
++++ b/test/thread/mutt_break_thread.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/thread_hash_destructor.c b/test/thread/thread_hash_destructor.c
+index e9b2667b1..b449ed8cd 100644
+--- a/test/thread/thread_hash_destructor.c
++++ b/test/thread/thread_hash_destructor.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/thread/unlink_message.c b/test/thread/unlink_message.c
+index d4ac8bb1a..ff15058b9 100644
+--- a/test/thread/unlink_message.c
++++ b/test/thread/unlink_message.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_check_scheme.c b/test/url/url_check_scheme.c
+index f5be5cd81..d0c537830 100644
+--- a/test/url/url_check_scheme.c
++++ b/test/url/url_check_scheme.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_free.c b/test/url/url_free.c
+index cac78c2a9..8df740b59 100644
+--- a/test/url/url_free.c
++++ b/test/url/url_free.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_parse.c b/test/url/url_parse.c
+index 35e57bd7a..d48f1e035 100644
+--- a/test/url/url_parse.c
++++ b/test/url/url_parse.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_pct_decode.c b/test/url/url_pct_decode.c
+index d540035fd..c54c1c17d 100644
+--- a/test/url/url_pct_decode.c
++++ b/test/url/url_pct_decode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_pct_encode.c b/test/url/url_pct_encode.c
+index dd7f9187c..34815a79a 100644
+--- a/test/url/url_pct_encode.c
++++ b/test/url/url_pct_encode.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_tobuffer.c b/test/url/url_tobuffer.c
+index 71f47a397..833214c87 100644
+--- a/test/url/url_tobuffer.c
++++ b/test/url/url_tobuffer.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/test/url/url_tostring.c b/test/url/url_tostring.c
+index 5816c75be..10ab31f9d 100644
+--- a/test/url/url_tostring.c
++++ b/test/url/url_tostring.c
+@@ -23,7 +23,7 @@
+ #define TEST_NO_MAIN
+ #include "acutest.h"
+ #include "config.h"
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
+ #include "address/lib.h"
+ #include "email/lib.h"
+
+diff --git a/version.c b/version.c
+index 037462e20..cb046368c 100644
+--- a/version.c
++++ b/version.c
+@@ -34,14 +34,14 @@
+ #include <string.h>
+ #include <sys/utsname.h>
+ #include <unistd.h>
+-#include "mutt/mutt.h"
++#include "mutt/lib.h"
++#include "gui/lib.h"
+ #include "version.h"
+-#include "mutt_curses.h"
+ #ifdef HAVE_LIBIDN
+ #include "address/lib.h"
+ #endif
+ #ifdef CRYPT_BACKEND_GPGME
+-#include "ncrypt/crypt_gpgme.h"
++#include "ncrypt/lib.h"
+ #endif
+ #ifdef HAVE_NOTMUCH
+ #include <notmuch.h>
+@@ -49,7 +49,7 @@
+
+ /* #include "muttlib.h" */
+ const char *mutt_make_version(void);
+-/* #include "hcache/hcache.h" */
++/* #include "hcache/lib.h" */
+ const char *mutt_hcache_backend_list(void);
+
+ const int SCREEN_WIDTH = 80;
+@@ -154,6 +154,9 @@ static struct CompileOptions comp_opts[] = {
+ #else
+ { "autocrypt", 0 },
+ #endif
++#ifdef HAVE_LIBUNWIND
++ { "backtrace", 2 },
++#endif
+ #ifdef HAVE_BKGDSET
+ { "bkgdset", 1 },
+ #else
+@@ -204,6 +207,9 @@ static struct CompileOptions comp_opts[] = {
+ #else
+ { "gpgme", 0 },
+ #endif
++#ifdef USE_DEBUG_GRAPHVIZ
++ { "graphviz", 2 },
++#endif
+ #ifdef USE_GSS
+ { "gss", 1 },
+ #else
+@@ -239,6 +245,11 @@ static struct CompileOptions comp_opts[] = {
+ #else
+ { "lua", 0 },
+ #endif
++#ifdef USE_LZ4
++ { "lz4", 1 },
++#else
++ { "lz4", 0 },
++#endif
+ #ifdef HAVE_META
+ { "meta", 1 },
+ #else
+@@ -264,6 +275,9 @@ static struct CompileOptions comp_opts[] = {
+ #else
+ { "openssl", 0 },
+ #endif
++#ifdef USE_DEBUG_PARSE_TEST
++ { "parse-test", 2 },
++#endif
+ #ifdef CRYPT_BACKEND_CLASSIC_PGP
+ { "pgp", 1 },
+ #else
+@@ -298,6 +312,16 @@ static struct CompileOptions comp_opts[] = {
+ { "typeahead", 1 },
+ #else
+ { "typeahead", 0 },
++#endif
++#ifdef USE_ZLIB
++ { "zlib", 1 },
++#else
++ { "zlib", 0 },
++#endif
++#ifdef USE_ZSTD
++ { "zstd", 1 },
++#else
++ { "zstd", 0 },
+ #endif
+ { NULL, 0 },
+ };
+@@ -318,7 +342,7 @@ static struct CompileOptions comp_opts[] = {
+ static void print_compile_options(struct CompileOptions *co, FILE *fp)
+ {
+ size_t used = 2;
+- bool tty = stdout ? isatty(fileno(stdout)) : false;
++ bool tty = fp ? isatty(fileno(fp)) : false;
+
+ fprintf(fp, " ");
+ for (int i = 0; co[i].name; i++)
+@@ -388,7 +412,7 @@ static char *rstrip_in_place(char *s)
+ void print_version(FILE *fp)
+ {
+ struct utsname uts;
+- bool tty = stdout ? isatty(fileno(stdout)) : false;
++ bool tty = fp ? isatty(fileno(fp)) : false;
+ const char *fmt = "%s\n";
+
+ if (tty)
diff --git a/srcpkgs/neomutt-git/template b/srcpkgs/neomutt-git/template
new file mode 100644
index 000000000000..c0bbe0f65a13
--- /dev/null
+++ b/srcpkgs/neomutt-git/template
@@ -0,0 +1,54 @@
+# Template file for 'neomutt'
+pkgname=neomutt-git
+version=20191207
+revision=1
+wrksrc="neomutt-${version}"
+build_style=configure
+configure_args="--ssl --gpgme --notmuch --gdbm --lua --sasl"
+patch_args="-Np1"
+make_check_target=test
+conf_files="/etc/neomuttrc"
+# neomutt needs either w3m/lynx/elinks to build manual.html
+hostmakedepends="docbook-xsl gettext libxslt perl tcl elinks"
+makedepends="aspell-devel gdbm-devel gettext-devel gpgme-devel libidn-devel
+ libnotmuch-devel libressl-devel libsasl-devel lua-devel"
+depends="mime-types"
+short_desc="Mutt with misc fixes and feature patches"
+maintainer="Toyam Cox <Vaelatern@voidlinux.org>"
+license="GPL-2.0-or-later"
+homepage="https://neomutt.org/"
+distfiles="https://github.com/neomutt/neomutt/archive/${version}.tar.gz"
+checksum=1618873bd43915d437c5957f19ec2c4ecef6954a5aa647009b98f574ec63410e
+
+# fix:
+if [ "${XBPS_CROSS_BASE}" ]; then
+ configure_args="${configure_args} --host=$XBPS_CROSS_TRIPLET"
+ configure_args="${configure_args} --build=$XBPS_TRIPLET"
+ configure_args="${configure_args} --with-sysroot=$XBPS_CROSS_BASE"
+fi
+
+case "${XBPS_TARGET_MACHINE}" in
+ x86_64-musl) CFLAGS="-D_FILE_OFFSET_BITS=64 -DLARGEFILE_SOURCE=1";;
+ # Inquiry: Do we have largefile support on everywhere?
+esac
+
+post_install() {
+ # move dist to examples dir
+ vsconf contrib/gpg.rc Muttrc.gpg.dist
+}
+
+# REMARKS:
+# Conf file is in a --sysconfdir=/etc/$pkgname/Muttrc and then alternatives to
+# /etc/Muttrc. In addition, a dependency on mime-types is broken by having
+# /etc/dir/ because mutt probably expects the mime information in the same
+# dir as sysconfdir. Thus a symlink is created to deal with this.
+# /etc/Muttrc is not currently in alternatives to prevent inadvertently
+# overwriting configuration.
+# In version 20160808 keybase integration was added, and lots of new
+# documentation now gets installed. Rumors of an /etc/NeoMuttrc are in the
+# release notes but not currently installed for unknown reasons.
+# As of 20171013, neomutt has hard forked and no longer refers to itself as
+# "Mutt" anywhere in the codebase. https://www.neomutt.org/2017/10/13/release
+# /etc/neomuttrc now exists, and there are no conflicts with regular mutt.
+# Due to this, an install.msg was added and all alternatives were removed.
+# Cross compiling was fixed in 20180323
diff --git a/srcpkgs/neomutt-git/update b/srcpkgs/neomutt-git/update
new file mode 100644
index 000000000000..34177c0cc58d
--- /dev/null
+++ b/srcpkgs/neomutt-git/update
@@ -0,0 +1 @@
+ignore="20160709"
From a09a3d2afed51a13b5f546491d13d513524d6140 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Mon, 16 Mar 2020 13:54:04 +0100
Subject: [PATCH 02/26] Use new neomutt release 20200313
---
srcpkgs/neomutt/template | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/srcpkgs/neomutt/template b/srcpkgs/neomutt/template
index 246d549ca2e9..46214b3b9638 100644
--- a/srcpkgs/neomutt/template
+++ b/srcpkgs/neomutt/template
@@ -1,6 +1,6 @@
# Template file for 'neomutt'
pkgname=neomutt
-version=20191207
+version=20200313
revision=1
wrksrc="neomutt-${version}"
build_style=configure
@@ -8,7 +8,7 @@ configure_args="--ssl --gpgme --notmuch --gdbm --lua --sasl"
make_check_target=test
conf_files="/etc/neomuttrc"
# neomutt needs either w3m/lynx/elinks to build manual.html
-hostmakedepends="docbook-xsl gettext libxslt perl tcl w3m"
+hostmakedepends="docbook-xsl gettext libxslt perl tcl elinks"
makedepends="aspell-devel gdbm-devel gettext-devel gpgme-devel libidn-devel
libnotmuch-devel libressl-devel libsasl-devel lua-devel"
depends="mime-types"
@@ -17,7 +17,7 @@ maintainer="Toyam Cox <Vaelatern@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://neomutt.org/"
distfiles="https://github.com/neomutt/neomutt/archive/${version}.tar.gz"
-checksum=1618873bd43915d437c5957f19ec2c4ecef6954a5aa647009b98f574ec63410e
+checksum=b5ff780506a5371f737f32afd694857568e8827b1c391e0aca27c66687019e85
# fix:
if [ "${XBPS_CROSS_BASE}" ]; then
From 6e55f46e18a1e9b76064610ae9bc1739cf9c3fc4 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Thu, 10 Dec 2020 11:29:10 +0100
Subject: [PATCH 03/26] Update owncloud to git version
---
srcpkgs/owncloudclient/patches/QPainterPath.patch | 10 ----------
srcpkgs/owncloudclient/template | 9 +++++----
2 files changed, 5 insertions(+), 14 deletions(-)
delete mode 100644 srcpkgs/owncloudclient/patches/QPainterPath.patch
diff --git a/srcpkgs/owncloudclient/patches/QPainterPath.patch b/srcpkgs/owncloudclient/patches/QPainterPath.patch
deleted file mode 100644
index 668dd9223b2e..000000000000
--- a/srcpkgs/owncloudclient/patches/QPainterPath.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/libsync/networkjobs.cpp 2020-01-28 15:57:39.000000000 +0100
-+++ src/libsync/networkjobs.cpp 2020-08-31 21:06:43.744784467 +0200
-@@ -31,6 +31,7 @@
- #include <QJsonObject>
- #ifndef TOKEN_AUTH_ONLY
- #include <QPainter>
-+#include <QPainterPath>
- #endif
-
- #include "networkjobs.h"
diff --git a/srcpkgs/owncloudclient/template b/srcpkgs/owncloudclient/template
index d8747863fe13..c0929d62286f 100644
--- a/srcpkgs/owncloudclient/template
+++ b/srcpkgs/owncloudclient/template
@@ -1,10 +1,10 @@
# Template file for 'owncloudclient'
pkgname=owncloudclient
-version=2.6.3.14058
+version=2.7.2
revision=1
build_style=cmake
configure_args="-Wno-dev -DNO_SHIBBOLETH=TRUE"
-hostmakedepends="pkg-config"
+hostmakedepends="pkg-config extra-cmake-modules"
makedepends="qtkeychain-qt5-devel sqlite-devel qt5-declarative-devel
qt5-tools-devel qt5-plugin-odbc qt5-plugin-tds qt5-plugin-pgsql qt5-plugin-mysql
qt5-plugin-sqlite"
@@ -14,8 +14,9 @@ short_desc="Connect to ownCloud servers"
maintainer="Nathan Owens <ndowens04@gmail.com>"
license="GPL-2.0-or-later"
homepage="https://www.owncloud.org"
-distfiles="https://download.owncloud.com/desktop/stable/${pkgname}-${version}.tar.xz"
-checksum=e3d38de31e041f0e1836b2b74acfc1fc76eea4955968952a65643cbf36a493f5
+distfiles="https://github.com/owncloud/client/archive/v${version}.tar.gz"
+checksum=11149a61a7a8c3ac08a2869fe1754916c004aefeeba47eea860080b7a0e4441b
+wrksrc="client-${version}"
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" qt5-host-tools qt5-tools-devel"
From 3c52aacf10604babb080f92be87c7f336008c957 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Thu, 10 Dec 2020 11:32:25 +0100
Subject: [PATCH 04/26] owncloudclient: update to 2.7.2
---
srcpkgs/owncloudclient/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/owncloudclient/template b/srcpkgs/owncloudclient/template
index c0929d62286f..639489575897 100644
--- a/srcpkgs/owncloudclient/template
+++ b/srcpkgs/owncloudclient/template
@@ -2,6 +2,7 @@
pkgname=owncloudclient
version=2.7.2
revision=1
+wrksrc="client-${version}"
build_style=cmake
configure_args="-Wno-dev -DNO_SHIBBOLETH=TRUE"
hostmakedepends="pkg-config extra-cmake-modules"
@@ -16,7 +17,6 @@ license="GPL-2.0-or-later"
homepage="https://www.owncloud.org"
distfiles="https://github.com/owncloud/client/archive/v${version}.tar.gz"
checksum=11149a61a7a8c3ac08a2869fe1754916c004aefeeba47eea860080b7a0e4441b
-wrksrc="client-${version}"
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" qt5-host-tools qt5-tools-devel"
From fef176c0747f786f820bcc7194c75ab3e9deab99 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Tue, 15 Dec 2020 10:19:36 +0100
Subject: [PATCH 05/26] Use beta build for now
---
srcpkgs/nvidia/template | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/srcpkgs/nvidia/template b/srcpkgs/nvidia/template
index fb7507d842e6..8147ea5bc6b7 100644
--- a/srcpkgs/nvidia/template
+++ b/srcpkgs/nvidia/template
@@ -3,7 +3,7 @@
_desc="NVIDIA drivers for linux"
pkgname=nvidia
-version=450.80.02
+version=455.45.01
revision=1
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="custom:NVIDIA Proprietary"
@@ -19,7 +19,7 @@ conflicts="xserver-abi-video>24_1"
_pkg="NVIDIA-Linux-x86_64-${version}"
distfiles="http://uk.download.nvidia.com/XFree86/Linux-x86_64/${version}/${_pkg}.run"
-checksum=0f5a2f19f822d46c54500f4a6192dad9948821ed14ce7c13b38264d67aaf95b3
+checksum=eadc8c7e082f65540fa7f6a249d8309fb546fe62066f495472701dc8c103a153
# subpackages need to be processed in this specific order
subpackages="nvidia-gtklibs nvidia-dkms nvidia-opencl nvidia-libs nvidia-libs-32bit"
depends="nvidia-libs-${version}_${revision}
@@ -129,8 +129,8 @@ do_install() {
ln -sf libglxserver_nvidia.so.${version} \
${DESTDIR}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1
- vinstall libnvidia-egl-wayland.so.1.1.4 755 usr/lib
- ln -sf libnvidia-egl-wayland.so.1.1.4 \
+ vinstall libnvidia-egl-wayland.so.1.1.5 755 usr/lib
+ ln -sf libnvidia-egl-wayland.so.1.1.5 \
${DESTDIR}/usr/lib/libnvidia-egl-wayland.so.1
vinstall 10_nvidia.json 755 usr/share/glvnd/egl_vendor.d
From 9bb90e48f77188c352a047c524a9c22e0effd640 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Tue, 15 Dec 2020 10:20:01 +0100
Subject: [PATCH 06/26] Bump to new version
---
srcpkgs/owncloudclient/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/owncloudclient/template b/srcpkgs/owncloudclient/template
index 639489575897..497d0a329523 100644
--- a/srcpkgs/owncloudclient/template
+++ b/srcpkgs/owncloudclient/template
@@ -1,6 +1,6 @@
# Template file for 'owncloudclient'
pkgname=owncloudclient
-version=2.7.2
+version=2.7.3
revision=1
wrksrc="client-${version}"
build_style=cmake
@@ -16,7 +16,7 @@ maintainer="Nathan Owens <ndowens04@gmail.com>"
license="GPL-2.0-or-later"
homepage="https://www.owncloud.org"
distfiles="https://github.com/owncloud/client/archive/v${version}.tar.gz"
-checksum=11149a61a7a8c3ac08a2869fe1754916c004aefeeba47eea860080b7a0e4441b
+checksum=3f18e65d78264510b3bb4c74a528a229f68791d9dd54678c9c0aa40aaf284514
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" qt5-host-tools qt5-tools-devel"
From b12cd790b6b1041c54ca07a4c249720503d77de9 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Tue, 2 Feb 2021 11:00:49 +0100
Subject: [PATCH 07/26] Update to new version
---
srcpkgs/owncloudclient/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/owncloudclient/template b/srcpkgs/owncloudclient/template
index 327d7ca5ea32..d3bb6ee6b10c 100644
--- a/srcpkgs/owncloudclient/template
+++ b/srcpkgs/owncloudclient/template
@@ -1,6 +1,6 @@
# Template file for 'owncloudclient'
pkgname=owncloudclient
-version=2.7.3
+version=2.7.5
revision=1
wrksrc="client-${version}"
build_style=cmake
@@ -16,7 +16,7 @@ maintainer="Nathan Owens <ndowens@artixlinux.org>"
license="GPL-2.0-or-later"
homepage="https://www.owncloud.org"
distfiles="https://github.com/owncloud/client/archive/v${version}.tar.gz"
-checksum=3f18e65d78264510b3bb4c74a528a229f68791d9dd54678c9c0aa40aaf284514
+checksum=c2558a3a780c136446ce818bfdd406aa5417a71f9cfd0cf56dc51c7516117c3a
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" qt5-host-tools qt5-tools-devel"
From e5595f8bec3897b7fe2e8abc5b236d4c4fb787d4 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sun, 7 Feb 2021 19:44:21 +0100
Subject: [PATCH 08/26] Add zotero
---
srcpkgs/zotero/template | 49 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
create mode 100644 srcpkgs/zotero/template
diff --git a/srcpkgs/zotero/template b/srcpkgs/zotero/template
new file mode 100644
index 000000000000..96e7c34c0ef0
--- /dev/null
+++ b/srcpkgs/zotero/template
@@ -0,0 +1,49 @@
+# Template file for 'zotero'
+pkgname=zotero
+version=5.0.95.3
+revision=1
+arch="x86_64"
+hostmakedepends="awk curl git nodejs-lts openssh perl python python3 rsync tar unzip wget which zip"
+makedepends="nodejs-lts"
+depends="nodejs-lts"
+short_desc="A tool to help you collect, organize, cite, and share your research sources."
+maintainer="reedts <j.reedts@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://www.zotero.org"
+nopie=yes
+
+do_fetch() {
+ git clone -b ${version} --recursive \
+ https://github.com/zotero/zotero ${wrksrc}/zotero-client
+
+ git clone -b ${version} --recursive \
+ https://github.com/zotero/zotero-standalone-build \
+ ${wrksrc}/zotero-standalone-build
+
+ git clone --recursive \
+ https://github.com/zotero/zotero-build \
+ ${wrksrc}/zotero-build
+}
+
+do_configure() {
+ cd ${wrksrc}/zotero-client
+ npm i
+}
+
+do_build() {
+ cd ${wrksrc}/zotero-client
+ npm run build
+
+ cd ${wrksrc}/zotero-standalone-build
+ ./fetch_mar_tools
+ ./fetch_xulrunner.sh -p l
+ ./fetch_pdftools
+ ./scripts/dir_build
+}
+
+do_install() {
+ vmkdir opt/zotero
+ vmkdir usr/bin
+ vcopy ${wrksrc}/zotero-standalone-build/staging/Zotero_linux-${arch}/* opt/zotero
+ ln -s "${DESTDIR}/opt/zotero/zotero" "${DESTDIR}/usr/bin/zotero"
+}
From b2b418c240603dd97b21c22151797bef4b87264f Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Mon, 15 Mar 2021 21:09:57 +0100
Subject: [PATCH 09/26] Add buzz with Lars' patches
---
srcpkgs/buzz/patches/no_systray.patch | 1866 +++++++++++++++++++++++++
srcpkgs/buzz/template | 15 +
2 files changed, 1881 insertions(+)
create mode 100644 srcpkgs/buzz/patches/no_systray.patch
create mode 100644 srcpkgs/buzz/template
diff --git a/srcpkgs/buzz/patches/no_systray.patch b/srcpkgs/buzz/patches/no_systray.patch
new file mode 100644
index 000000000000..f70170a38924
--- /dev/null
+++ b/srcpkgs/buzz/patches/no_systray.patch
@@ -0,0 +1,1866 @@
+diff --git .gitignore .gitignore
+index eb5a316..908d188 100644
+--- .gitignore
++++ .gitignore
+@@ -1 +1,14 @@
+-target
++### https://raw.github.com/github/gitignore/74643fe2c8a8ca02384f6367be2393c00cf8cd24/Rust.gitignore
++
++# Generated by Cargo
++# will have compiled files and executables
++/target/
++
++# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
++# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
++Cargo.lock
++
++# These are backup files generated by rustfmt
++**/*.rs.bk
++
++
+diff --git Cargo.lock Cargo.lock
+deleted file mode 100644
+index 609d424..0000000
+--- Cargo.lock
++++ /dev/null
+@@ -1,1610 +0,0 @@
+-# This file is automatically @generated by Cargo.
+-# It is not intended for manual editing.
+-[[package]]
+-name = "aho-corasick"
+-version = "0.7.15"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5"
+-dependencies = [
+- "memchr",
+-]
+-
+-[[package]]
+-name = "ansi_term"
+-version = "0.11.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
+-dependencies = [
+- "winapi",
+-]
+-
+-[[package]]
+-name = "arrayref"
+-version = "0.3.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
+-
+-[[package]]
+-name = "arrayvec"
+-version = "0.5.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
+-
+-[[package]]
+-name = "askama_escape"
+-version = "0.10.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb"
+-
+-[[package]]
+-name = "atk"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "444daefa55f229af145ea58d77efd23725024ee1f6f3102743709aa6b18c663e"
+-dependencies = [
+- "atk-sys",
+- "bitflags 1.2.1",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+-]
+-
+-[[package]]
+-name = "atk-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e552c1776737a4c80110d06b36d099f47c727335f9aaa5d942a72b6863a8ec6f"
+-dependencies = [
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "atty"
+-version = "0.2.14"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+-dependencies = [
+- "hermit-abi",
+- "libc",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "autocfg"
+-version = "1.0.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
+-
+-[[package]]
+-name = "base64"
+-version = "0.10.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
+-dependencies = [
+- "byteorder",
+-]
+-
+-[[package]]
+-name = "base64"
+-version = "0.12.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
+-
+-[[package]]
+-name = "base64"
+-version = "0.13.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
+-
+-[[package]]
+-name = "bindgen"
+-version = "0.52.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f1c85344eb535a31b62f0af37be84441ba9e7f0f4111eb0530f43d15e513fe57"
+-dependencies = [
+- "bitflags 1.2.1",
+- "cexpr",
+- "cfg-if 0.1.10",
+- "clang-sys",
+- "clap",
+- "env_logger",
+- "lazy_static",
+- "lazycell",
+- "log",
+- "peeking_take_while",
+- "proc-macro2",
+- "quote 1.0.8",
+- "regex",
+- "rustc-hash",
+- "shlex",
+- "which",
+-]
+-
+-[[package]]
+-name = "bitflags"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
+-
+-[[package]]
+-name = "bitflags"
+-version = "1.2.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
+-
+-[[package]]
+-name = "blake2b_simd"
+-version = "0.5.11"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
+-dependencies = [
+- "arrayref",
+- "arrayvec",
+- "constant_time_eq",
+-]
+-
+-[[package]]
+-name = "block"
+-version = "0.1.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+-
+-[[package]]
+-name = "bufstream"
+-version = "0.1.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "40e38929add23cdf8a366df9b0e088953150724bcbe5fc330b0d8eb3b328eec8"
+-
+-[[package]]
+-name = "buzz"
+-version = "1.5.0"
+-dependencies = [
+- "askama_escape",
+- "chrono",
+- "directories-next",
+- "imap",
+- "mailparse",
+- "native-tls",
+- "notify-rust",
+- "rayon",
+- "systray",
+- "toml",
+-]
+-
+-[[package]]
+-name = "byteorder"
+-version = "1.4.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ae44d1a3d5a19df61dd0c8beb138458ac2a53a7ac09eba97d55592540004306b"
+-
+-[[package]]
+-name = "cairo-rs"
+-version = "0.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "157049ba9618aa3a61c39d5d785102c04d3b1f40632a706c621a9aedc21e6084"
+-dependencies = [
+- "bitflags 1.2.1",
+- "cairo-sys-rs",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+-]
+-
+-[[package]]
+-name = "cairo-sys-rs"
+-version = "0.9.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ff65ba02cac715be836f63429ab00a767d48336efc5497c5637afb53b4f14d63"
+-dependencies = [
+- "glib-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "cc"
+-version = "1.0.66"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48"
+-
+-[[package]]
+-name = "cexpr"
+-version = "0.3.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fce5b5fb86b0c57c20c834c1b412fd09c77c8a59b9473f86272709e78874cd1d"
+-dependencies = [
+- "nom 4.2.3",
+-]
+-
+-[[package]]
+-name = "cfg-if"
+-version = "0.1.10"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+-
+-[[package]]
+-name = "cfg-if"
+-version = "1.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+-
+-[[package]]
+-name = "charset"
+-version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4f426e64df1c3de26cbf44593c6ffff5dbfd43bbf9de0d075058558126b3fc73"
+-dependencies = [
+- "base64 0.10.1",
+- "encoding_rs",
+-]
+-
+-[[package]]
+-name = "chrono"
+-version = "0.4.19"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
+-dependencies = [
+- "libc",
+- "num-integer",
+- "num-traits",
+- "time",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "clang-sys"
+-version = "0.28.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "81de550971c976f176130da4b2978d3b524eaa0fd9ac31f3ceb5ae1231fb4853"
+-dependencies = [
+- "glob",
+- "libc",
+- "libloading",
+-]
+-
+-[[package]]
+-name = "clap"
+-version = "2.33.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
+-dependencies = [
+- "ansi_term",
+- "atty",
+- "bitflags 1.2.1",
+- "strsim",
+- "textwrap",
+- "unicode-width",
+- "vec_map",
+-]
+-
+-[[package]]
+-name = "const_fn"
+-version = "0.4.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "28b9d6de7f49e22cf97ad17fc4036ece69300032f45f78f30b4a4482cdc3f4a6"
+-
+-[[package]]
+-name = "constant_time_eq"
+-version = "0.1.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+-
+-[[package]]
+-name = "core-foundation"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62"
+-dependencies = [
+- "core-foundation-sys",
+- "libc",
+-]
+-
+-[[package]]
+-name = "core-foundation-sys"
+-version = "0.8.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b"
+-
+-[[package]]
+-name = "crossbeam-channel"
+-version = "0.5.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "crossbeam-utils",
+-]
+-
+-[[package]]
+-name = "crossbeam-deque"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "crossbeam-epoch",
+- "crossbeam-utils",
+-]
+-
+-[[package]]
+-name = "crossbeam-epoch"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1aaa739f95311c2c7887a76863f500026092fb1dce0161dab577e559ef3569d"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "const_fn",
+- "crossbeam-utils",
+- "lazy_static",
+- "memoffset",
+- "scopeguard",
+-]
+-
+-[[package]]
+-name = "crossbeam-utils"
+-version = "0.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "02d96d1e189ef58269ebe5b97953da3274d83a93af647c2ddd6f9dab28cedb8d"
+-dependencies = [
+- "autocfg",
+- "cfg-if 1.0.0",
+- "lazy_static",
+-]
+-
+-[[package]]
+-name = "dbus"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3b1334c0161ddfccd239ac81b188d62015b049c986c5cd0b7f9447cf2c54f4a3"
+-dependencies = [
+- "libc",
+- "libdbus-sys",
+-]
+-
+-[[package]]
+-name = "directories-next"
+-version = "2.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "dirs-sys-next",
+-]
+-
+-[[package]]
+-name = "dirs"
+-version = "1.0.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
+-dependencies = [
+- "libc",
+- "redox_users 0.3.5",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "dirs-sys-next"
+-version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+-dependencies = [
+- "libc",
+- "redox_users 0.4.0",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "either"
+-version = "1.6.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
+-
+-[[package]]
+-name = "encoding_rs"
+-version = "0.8.26"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "801bbab217d7f79c0062f4f7205b5d4427c6d1a7bd7aafdd1475f7c59d62b283"
+-dependencies = [
+- "cfg-if 1.0.0",
+-]
+-
+-[[package]]
+-name = "env_logger"
+-version = "0.7.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
+-dependencies = [
+- "atty",
+- "humantime",
+- "log",
+- "regex",
+- "termcolor",
+-]
+-
+-[[package]]
+-name = "foreign-types"
+-version = "0.3.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+-dependencies = [
+- "foreign-types-shared",
+-]
+-
+-[[package]]
+-name = "foreign-types-shared"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+-
+-[[package]]
+-name = "futures-channel"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f2d31b7ec7efab6eefc7c57233bb10b847986139d88cc2f5a02a1ae6871a1846"
+-dependencies = [
+- "futures-core",
+-]
+-
+-[[package]]
+-name = "futures-core"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "79e5145dde8da7d1b3892dad07a9c98fc04bc39892b1ecc9692cf53e2b780a65"
+-
+-[[package]]
+-name = "futures-executor"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e9e59fdc009a4b3096bf94f740a0f2424c082521f20a9b08c5c07c48d90fd9b9"
+-dependencies = [
+- "futures-core",
+- "futures-task",
+- "futures-util",
+-]
+-
+-[[package]]
+-name = "futures-io"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "28be053525281ad8259d47e4de5de657b25e7bac113458555bb4b70bc6870500"
+-
+-[[package]]
+-name = "futures-macro"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c287d25add322d9f9abdcdc5927ca398917996600182178774032e9f8258fedd"
+-dependencies = [
+- "proc-macro-hack",
+- "proc-macro2",
+- "quote 1.0.8",
+- "syn 1.0.60",
+-]
+-
+-[[package]]
+-name = "futures-task"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "13de07eb8ea81ae445aca7b69f5f7bf15d7bf4912d8ca37d6645c77ae8a58d86"
+-dependencies = [
+- "once_cell",
+-]
+-
+-[[package]]
+-name = "futures-util"
+-version = "0.3.12"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "632a8cd0f2a4b3fdea1657f08bde063848c3bd00f9bbf6e256b8be78802e624b"
+-dependencies = [
+- "futures-core",
+- "futures-macro",
+- "futures-task",
+- "pin-project-lite",
+- "pin-utils",
+- "proc-macro-hack",
+- "proc-macro-nested",
+- "slab",
+-]
+-
+-[[package]]
+-name = "gdk"
+-version = "0.12.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "fbe5e8772fc0865c52460cdd7a59d7d47700f44d9809d1dd00eecceb769a7589"
+-dependencies = [
+- "bitflags 1.2.1",
+- "cairo-rs",
+- "cairo-sys-rs",
+- "gdk-pixbuf",
+- "gdk-sys",
+- "gio",
+- "gio-sys",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pango",
+-]
+-
+-[[package]]
+-name = "gdk-pixbuf"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e248220c46b329b097d4b158d2717f8c688f16dd76d0399ace82b3e98062bdd7"
+-dependencies = [
+- "gdk-pixbuf-sys",
+- "gio",
+- "gio-sys",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+-]
+-
+-[[package]]
+-name = "gdk-pixbuf-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d8991b060a9e9161bafd09bf4a202e6fd404f5b4dd1a08d53a1e84256fb34ab0"
+-dependencies = [
+- "gio-sys",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "gdk-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6adf679e91d1bff0c06860287f80403e7db54c2d2424dce0a470023b56c88fbb"
+-dependencies = [
+- "cairo-sys-rs",
+- "gdk-pixbuf-sys",
+- "gio-sys",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pango-sys",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "getrandom"
+-version = "0.1.16"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "libc",
+- "wasi 0.9.0+wasi-snapshot-preview1",
+-]
+-
+-[[package]]
+-name = "getrandom"
+-version = "0.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "libc",
+- "wasi 0.10.1+wasi-snapshot-preview1",
+-]
+-
+-[[package]]
+-name = "gio"
+-version = "0.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0cd10f9415cce39b53f8024bf39a21f84f8157afa52da53837b102e585a296a5"
+-dependencies = [
+- "bitflags 1.2.1",
+- "futures-channel",
+- "futures-core",
+- "futures-io",
+- "futures-util",
+- "gio-sys",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "lazy_static",
+- "libc",
+-]
+-
+-[[package]]
+-name = "gio-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4fad225242b9eae7ec8a063bb86974aca56885014672375e5775dc0ea3533911"
+-dependencies = [
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "glib"
+-version = "0.9.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "40fb573a09841b6386ddf15fd4bc6655b4f5b106ca962f57ecaecde32a0061c0"
+-dependencies = [
+- "bitflags 1.2.1",
+- "futures-channel",
+- "futures-core",
+- "futures-executor",
+- "futures-task",
+- "futures-util",
+- "glib-sys",
+- "gobject-sys",
+- "lazy_static",
+- "libc",
+-]
+-
+-[[package]]
+-name = "glib-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "95856f3802f446c05feffa5e24859fe6a183a7cb849c8449afc35c86b1e316e2"
+-dependencies = [
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "glob"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+-
+-[[package]]
+-name = "gobject-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "31d1a804f62034eccf370006ccaef3708a71c31d561fee88564abe71177553d9"
+-dependencies = [
+- "glib-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "gtk"
+-version = "0.8.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "87e1e8d70290239c668594002d1b174fcc7d7ef5d26670ee141490ede8facf8f"
+-dependencies = [
+- "atk",
+- "bitflags 1.2.1",
+- "cairo-rs",
+- "cairo-sys-rs",
+- "cc",
+- "gdk",
+- "gdk-pixbuf",
+- "gdk-pixbuf-sys",
+- "gdk-sys",
+- "gio",
+- "gio-sys",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "gtk-sys",
+- "lazy_static",
+- "libc",
+- "pango",
+- "pango-sys",
+-]
+-
+-[[package]]
+-name = "gtk-sys"
+-version = "0.9.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "53def660c7b48b00b510c81ef2d2fbd3c570f1527081d8d7947f471513e1a4c1"
+-dependencies = [
+- "atk-sys",
+- "cairo-sys-rs",
+- "gdk-pixbuf-sys",
+- "gdk-sys",
+- "gio-sys",
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pango-sys",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "hermit-abi"
+-version = "0.1.18"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
+-dependencies = [
+- "libc",
+-]
+-
+-[[package]]
+-name = "humantime"
+-version = "1.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
+-dependencies = [
+- "quick-error",
+-]
+-
+-[[package]]
+-name = "imap"
+-version = "2.4.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c617c55def8c42129e0dd503f11d7ee39d73f5c7e01eff55768b3879ff1d107d"
+-dependencies = [
+- "base64 0.13.0",
+- "bufstream",
+- "chrono",
+- "imap-proto",
+- "lazy_static",
+- "native-tls",
+- "nom 5.1.2",
+- "regex",
+-]
+-
+-[[package]]
+-name = "imap-proto"
+-version = "0.10.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "16a6def1d5ac8975d70b3fd101d57953fe3278ef2ee5d7816cba54b1d1dfc22f"
+-dependencies = [
+- "nom 5.1.2",
+-]
+-
+-[[package]]
+-name = "lazy_static"
+-version = "1.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+-
+-[[package]]
+-name = "lazycell"
+-version = "1.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
+-
+-[[package]]
+-name = "lexical-core"
+-version = "0.7.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "db65c6da02e61f55dae90a0ae427b2a5f6b3e8db09f58d10efab23af92592616"
+-dependencies = [
+- "arrayvec",
+- "bitflags 1.2.1",
+- "cfg-if 0.1.10",
+- "ryu",
+- "static_assertions",
+-]
+-
+-[[package]]
+-name = "libappindicator"
+-version = "0.5.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8f31c50d55007b7c159531ad0301ab6fc3c65de3788ae8956ecbf9b890304059"
+-dependencies = [
+- "glib",
+- "gtk",
+- "gtk-sys",
+- "libappindicator-sys",
+- "log",
+-]
+-
+-[[package]]
+-name = "libappindicator-sys"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "366238ec86fad8ffcf593078ff667f9852bf30836b38ebd1a70d3c9ddfec07a3"
+-dependencies = [
+- "bindgen",
+- "gtk-sys",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "libc"
+-version = "0.2.83"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7eb0c4e9c72ee9d69b767adebc5f4788462a3b45624acd919475c92597bcaf4f"
+-
+-[[package]]
+-name = "libdbus-sys"
+-version = "0.2.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dc12a3bc971424edbbf7edaf6e5740483444db63aa8e23d3751ff12a30f306f0"
+-dependencies = [
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "libloading"
+-version = "0.5.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753"
+-dependencies = [
+- "cc",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "log"
+-version = "0.4.14"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
+-dependencies = [
+- "cfg-if 1.0.0",
+-]
+-
+-[[package]]
+-name = "mac-notification-sys"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3dfb6b71a9a89cd38b395d994214297447e8e63b1ba5708a9a2b0b1048ceda76"
+-dependencies = [
+- "cc",
+- "chrono",
+- "dirs",
+- "objc-foundation",
+-]
+-
+-[[package]]
+-name = "mailparse"
+-version = "0.13.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "388a77a7f161b32d0314404306b8ed5966b34b797fc9ef6bcf6686935162da3c"
+-dependencies = [
+- "base64 0.12.3",
+- "charset",
+- "quoted_printable",
+-]
+-
+-[[package]]
+-name = "malloc_buf"
+-version = "0.0.6"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+-dependencies = [
+- "libc",
+-]
+-
+-[[package]]
+-name = "memchr"
+-version = "2.3.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
+-
+-[[package]]
+-name = "memoffset"
+-version = "0.6.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "157b4208e3059a8f9e78d559edc658e13df41410cb3ae03979c83130067fdd87"
+-dependencies = [
+- "autocfg",
+-]
+-
+-[[package]]
+-name = "native-tls"
+-version = "0.2.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4"
+-dependencies = [
+- "lazy_static",
+- "libc",
+- "log",
+- "openssl",
+- "openssl-probe",
+- "openssl-sys",
+- "schannel",
+- "security-framework",
+- "security-framework-sys",
+- "tempfile",
+-]
+-
+-[[package]]
+-name = "nom"
+-version = "4.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
+-dependencies = [
+- "memchr",
+- "version_check 0.1.5",
+-]
+-
+-[[package]]
+-name = "nom"
+-version = "5.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
+-dependencies = [
+- "lexical-core",
+- "memchr",
+- "version_check 0.9.2",
+-]
+-
+-[[package]]
+-name = "notify-rust"
+-version = "4.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "95a3a5dd7b4b415b112ce0fae1988f3e6dee90a96918bf3950b5f2289b19a04b"
+-dependencies = [
+- "dbus",
+- "mac-notification-sys",
+- "winrt-notification",
+-]
+-
+-[[package]]
+-name = "num-integer"
+-version = "0.1.44"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
+-dependencies = [
+- "autocfg",
+- "num-traits",
+-]
+-
+-[[package]]
+-name = "num-traits"
+-version = "0.2.14"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
+-dependencies = [
+- "autocfg",
+-]
+-
+-[[package]]
+-name = "num_cpus"
+-version = "1.13.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
+-dependencies = [
+- "hermit-abi",
+- "libc",
+-]
+-
+-[[package]]
+-name = "objc"
+-version = "0.2.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
+-dependencies = [
+- "malloc_buf",
+-]
+-
+-[[package]]
+-name = "objc-foundation"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
+-dependencies = [
+- "block",
+- "objc",
+- "objc_id",
+-]
+-
+-[[package]]
+-name = "objc_id"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
+-dependencies = [
+- "objc",
+-]
+-
+-[[package]]
+-name = "once_cell"
+-version = "1.5.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0"
+-
+-[[package]]
+-name = "openssl"
+-version = "0.10.32"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "038d43985d1ddca7a9900630d8cd031b56e4794eecc2e9ea39dd17aa04399a70"
+-dependencies = [
+- "bitflags 1.2.1",
+- "cfg-if 1.0.0",
+- "foreign-types",
+- "lazy_static",
+- "libc",
+- "openssl-sys",
+-]
+-
+-[[package]]
+-name = "openssl-probe"
+-version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
+-
+-[[package]]
+-name = "openssl-sys"
+-version = "0.9.60"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "921fc71883267538946025deffb622905ecad223c28efbfdef9bb59a0175f3e6"
+-dependencies = [
+- "autocfg",
+- "cc",
+- "libc",
+- "pkg-config",
+- "vcpkg",
+-]
+-
+-[[package]]
+-name = "pango"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e9c6b728f1be8edb5f9f981420b651d5ea30bdb9de89f1f1262d0084a020577"
+-dependencies = [
+- "bitflags 1.2.1",
+- "glib",
+- "glib-sys",
+- "gobject-sys",
+- "lazy_static",
+- "libc",
+- "pango-sys",
+-]
+-
+-[[package]]
+-name = "pango-sys"
+-version = "0.9.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "86b93d84907b3cf0819bff8f13598ba72843bee579d5ebc2502e4b0367b4be7d"
+-dependencies = [
+- "glib-sys",
+- "gobject-sys",
+- "libc",
+- "pkg-config",
+-]
+-
+-[[package]]
+-name = "peeking_take_while"
+-version = "0.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+-
+-[[package]]
+-name = "pin-project-lite"
+-version = "0.2.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827"
+-
+-[[package]]
+-name = "pin-utils"
+-version = "0.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+-
+-[[package]]
+-name = "pkg-config"
+-version = "0.3.19"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
+-
+-[[package]]
+-name = "ppv-lite86"
+-version = "0.2.10"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"
+-
+-[[package]]
+-name = "proc-macro-hack"
+-version = "0.5.19"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
+-
+-[[package]]
+-name = "proc-macro-nested"
+-version = "0.1.7"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086"
+-
+-[[package]]
+-name = "proc-macro2"
+-version = "1.0.24"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
+-dependencies = [
+- "unicode-xid 0.2.1",
+-]
+-
+-[[package]]
+-name = "quick-error"
+-version = "1.2.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+-
+-[[package]]
+-name = "quote"
+-version = "0.3.15"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
+-
+-[[package]]
+-name = "quote"
+-version = "1.0.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df"
+-dependencies = [
+- "proc-macro2",
+-]
+-
+-[[package]]
+-name = "quoted_printable"
+-version = "0.4.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "47b080c5db639b292ac79cbd34be0cfc5d36694768d8341109634d90b86930e2"
+-
+-[[package]]
+-name = "rand"
+-version = "0.8.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e"
+-dependencies = [
+- "libc",
+- "rand_chacha",
+- "rand_core",
+- "rand_hc",
+-]
+-
+-[[package]]
+-name = "rand_chacha"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"
+-dependencies = [
+- "ppv-lite86",
+- "rand_core",
+-]
+-
+-[[package]]
+-name = "rand_core"
+-version = "0.6.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c026d7df8b298d90ccbbc5190bd04d85e159eaf5576caeacf8741da93ccbd2e5"
+-dependencies = [
+- "getrandom 0.2.2",
+-]
+-
+-[[package]]
+-name = "rand_hc"
+-version = "0.3.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"
+-dependencies = [
+- "rand_core",
+-]
+-
+-[[package]]
+-name = "rayon"
+-version = "1.5.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674"
+-dependencies = [
+- "autocfg",
+- "crossbeam-deque",
+- "either",
+- "rayon-core",
+-]
+-
+-[[package]]
+-name = "rayon-core"
+-version = "1.9.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a"
+-dependencies = [
+- "crossbeam-channel",
+- "crossbeam-deque",
+- "crossbeam-utils",
+- "lazy_static",
+- "num_cpus",
+-]
+-
+-[[package]]
+-name = "redox_syscall"
+-version = "0.1.57"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
+-
+-[[package]]
+-name = "redox_syscall"
+-version = "0.2.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "05ec8ca9416c5ea37062b502703cd7fcb207736bc294f6e0cf367ac6fc234570"
+-dependencies = [
+- "bitflags 1.2.1",
+-]
+-
+-[[package]]
+-name = "redox_users"
+-version = "0.3.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d"
+-dependencies = [
+- "getrandom 0.1.16",
+- "redox_syscall 0.1.57",
+- "rust-argon2",
+-]
+-
+-[[package]]
+-name = "redox_users"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64"
+-dependencies = [
+- "getrandom 0.2.2",
+- "redox_syscall 0.2.4",
+-]
+-
+-[[package]]
+-name = "regex"
+-version = "1.4.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d9251239e129e16308e70d853559389de218ac275b515068abc96829d05b948a"
+-dependencies = [
+- "aho-corasick",
+- "memchr",
+- "regex-syntax",
+- "thread_local",
+-]
+-
+-[[package]]
+-name = "regex-syntax"
+-version = "0.6.22"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b5eb417147ba9860a96cfe72a0b93bf88fee1744b5636ec99ab20c1aa9376581"
+-
+-[[package]]
+-name = "remove_dir_all"
+-version = "0.5.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+-dependencies = [
+- "winapi",
+-]
+-
+-[[package]]
+-name = "rust-argon2"
+-version = "0.8.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb"
+-dependencies = [
+- "base64 0.13.0",
+- "blake2b_simd",
+- "constant_time_eq",
+- "crossbeam-utils",
+-]
+-
+-[[package]]
+-name = "rustc-hash"
+-version = "1.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
+-
+-[[package]]
+-name = "ryu"
+-version = "1.0.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
+-
+-[[package]]
+-name = "schannel"
+-version = "0.1.19"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
+-dependencies = [
+- "lazy_static",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "scopeguard"
+-version = "1.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
+-
+-[[package]]
+-name = "security-framework"
+-version = "2.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c1759c2e3c8580017a484a7ac56d3abc5a6c1feadf88db2f3633f12ae4268c69"
+-dependencies = [
+- "bitflags 1.2.1",
+- "core-foundation",
+- "core-foundation-sys",
+- "libc",
+- "security-framework-sys",
+-]
+-
+-[[package]]
+-name = "security-framework-sys"
+-version = "2.0.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f99b9d5e26d2a71633cc4f2ebae7cc9f874044e0c351a27e17892d76dce5678b"
+-dependencies = [
+- "core-foundation-sys",
+- "libc",
+-]
+-
+-[[package]]
+-name = "serde"
+-version = "1.0.123"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "92d5161132722baa40d802cc70b15262b98258453e85e5d1d365c757c73869ae"
+-
+-[[package]]
+-name = "shlex"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2"
+-
+-[[package]]
+-name = "slab"
+-version = "0.4.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
+-
+-[[package]]
+-name = "static_assertions"
+-version = "1.1.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+-
+-[[package]]
+-name = "strsim"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+-
+-[[package]]
+-name = "strum"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "4ca6e4730f517e041e547ffe23d29daab8de6b73af4b6ae2a002108169f5e7da"
+-
+-[[package]]
+-name = "strum_macros"
+-version = "0.8.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "3384590878eb0cab3b128e844412e2d010821e7e091211b9d87324173ada7db8"
+-dependencies = [
+- "quote 0.3.15",
+- "syn 0.11.11",
+-]
+-
+-[[package]]
+-name = "syn"
+-version = "0.11.11"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
+-dependencies = [
+- "quote 0.3.15",
+- "synom",
+- "unicode-xid 0.0.4",
+-]
+-
+-[[package]]
+-name = "syn"
+-version = "1.0.60"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c700597eca8a5a762beb35753ef6b94df201c81cca676604f547495a0d7f0081"
+-dependencies = [
+- "proc-macro2",
+- "quote 1.0.8",
+- "unicode-xid 0.2.1",
+-]
+-
+-[[package]]
+-name = "synom"
+-version = "0.11.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
+-dependencies = [
+- "unicode-xid 0.0.4",
+-]
+-
+-[[package]]
+-name = "systray"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e2d32363b257d5b4d444bb76a7d063663569544fd598cf4fd2f13bb5b0f2d8b5"
+-dependencies = [
+- "glib",
+- "gtk",
+- "libappindicator",
+- "libc",
+- "log",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "tempfile"
+-version = "3.2.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22"
+-dependencies = [
+- "cfg-if 1.0.0",
+- "libc",
+- "rand",
+- "redox_syscall 0.2.4",
+- "remove_dir_all",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "termcolor"
+-version = "1.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4"
+-dependencies = [
+- "winapi-util",
+-]
+-
+-[[package]]
+-name = "textwrap"
+-version = "0.11.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+-dependencies = [
+- "unicode-width",
+-]
+-
+-[[package]]
+-name = "thread_local"
+-version = "1.1.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d8208a331e1cb318dd5bd76951d2b8fc48ca38a69f5f4e4af1b6a9f8c6236915"
+-dependencies = [
+- "once_cell",
+-]
+-
+-[[package]]
+-name = "time"
+-version = "0.1.43"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
+-dependencies = [
+- "libc",
+- "winapi",
+-]
+-
+-[[package]]
+-name = "toml"
+-version = "0.5.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa"
+-dependencies = [
+- "serde",
+-]
+-
+-[[package]]
+-name = "unicode-width"
+-version = "0.1.8"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
+-
+-[[package]]
+-name = "unicode-xid"
+-version = "0.0.4"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
+-
+-[[package]]
+-name = "unicode-xid"
+-version = "0.2.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
+-
+-[[package]]
+-name = "vcpkg"
+-version = "0.2.11"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb"
+-
+-[[package]]
+-name = "vec_map"
+-version = "0.8.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+-
+-[[package]]
+-name = "version_check"
+-version = "0.1.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
+-
+-[[package]]
+-name = "version_check"
+-version = "0.9.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
+-
+-[[package]]
+-name = "wasi"
+-version = "0.9.0+wasi-snapshot-preview1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+-
+-[[package]]
+-name = "wasi"
+-version = "0.10.1+wasi-snapshot-preview1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "93c6c3420963c5c64bca373b25e77acb562081b9bb4dd5bb864187742186cea9"
+-
+-[[package]]
+-name = "which"
+-version = "3.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724"
+-dependencies = [
+- "libc",
+-]
+-
+-[[package]]
+-name = "winapi"
+-version = "0.3.9"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+-dependencies = [
+- "winapi-i686-pc-windows-gnu",
+- "winapi-x86_64-pc-windows-gnu",
+-]
+-
+-[[package]]
+-name = "winapi-i686-pc-windows-gnu"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+-
+-[[package]]
+-name = "winapi-util"
+-version = "0.1.5"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+-dependencies = [
+- "winapi",
+-]
+-
+-[[package]]
+-name = "winapi-x86_64-pc-windows-gnu"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+-
+-[[package]]
+-name = "winrt"
+-version = "0.4.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7e30cba82e22b083dc5a422c2ee77e20dc7927271a0dc981360c57c1453cb48d"
+-dependencies = [
+- "winapi",
+-]
+-
+-[[package]]
+-name = "winrt-notification"
+-version = "0.2.2"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6c31a65da50d792c6f9bd2e3216249566c4fb1d2d34f9b7d2d66d2e93f62a242"
+-dependencies = [
+- "strum",
+- "strum_macros",
+- "winapi",
+- "winrt",
+- "xml-rs",
+-]
+-
+-[[package]]
+-name = "xml-rs"
+-version = "0.6.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "e1945e12e16b951721d7976520b0832496ef79c31602c7a29d950de79ba74621"
+-dependencies = [
+- "bitflags 0.9.1",
+-]
+diff --git Cargo.toml Cargo.toml
+index c753b3f..7c08231 100644
+--- Cargo.toml
++++ Cargo.toml
+@@ -1,6 +1,6 @@
+ [package]
+ name = "buzz"
+-version = "1.5.0"
++version = "1.3.0"
+ edition = "2018"
+
+ description = "A simple system tray application for notifying about unseen e-mail"
+@@ -25,11 +25,10 @@ debug=true
+ [dependencies]
+ imap = "2.0"
+ native-tls = "0.2"
+-systray = "0.4"
+-mailparse = "0.13"
++mailparse = "0.12"
+ toml = "0.5"
+ notify-rust = "4.0.0-beta.2"
+ rayon = "1.0.0"
+ askama_escape = "0.10"
+ chrono = "0.4"
+-directories-next = "2"
++directories-next = "1.0.1"
+diff --git README.md README.md
+index 704f335..b8d367f 100644
+--- README.md
++++ README.md
+@@ -47,10 +47,9 @@ arrive for an account. The options for an account are as follows:
+ - `username`: Username for authentication.
+ - `pwcmd`: Command to execute to get password for authentication.
+ - `notificationcmd`: Additional command to be executed on new messages for this account.
+- - `folder`: Name of the folder to watch (optional; defaults to "INBOX").
+
+ # TODOs
+
+ - [ ] `click` command
+ - [ ] hover tooltip
+- - [x] customizeable folder
++ - [ ] customizeable folder
+diff --git src/main.rs src/main.rs
+index 16ab8e1..01ca920 100644
+--- src/main.rs
++++ src/main.rs
+@@ -8,7 +8,7 @@ use std::collections::BTreeMap;
+ use std::fs::File;
+ use std::io::prelude::*;
+ use std::net::TcpStream;
+-use std::process::Command;
++use std::process::{Command, Stdio};
+ use std::sync::mpsc;
+ use std::thread;
+ use std::time::Duration;
+@@ -22,7 +22,6 @@ struct Account {
+ username: String,
+ password: String,
+ notification_command: Option<String>,
+- folder: Option<String>,
+ }
+
+ impl Account {
+@@ -41,11 +40,7 @@ impl Account {
+ .join(","),
+ ));
+ }
+-
+- // if a folder is specified in config, use it otherwise use INBOX
+- let folder = self.folder.clone().unwrap_or("INBOX".into());
+- c.select(folder)?;
+-
++ c.select("INBOX")?;
+ Ok(Connection {
+ account: self.clone(),
+ socket: c,
+@@ -85,6 +80,7 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+ }
+ Err(e) => {
+ eprintln!("failed to connect to {}: {:?}", self.account.name, e);
++ println!(" ");
+ thread::sleep(Duration::from_secs(wait));
+ }
+ }
+@@ -104,8 +100,8 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+
+ loop {
+ // check current state of inbox
+- let mut uids = self.socket.uid_search("NEW 1:*")?;
+- let num_new = uids.len();
++ let mut uids = self.socket.uid_search("UNSEEN 1:*")?;
++ let num_unseen = uids.len();
+ if uids.iter().all(|&uid| uid <= last_notified) {
+ // there are no messages we haven't already notified about
+ uids.clear();
+@@ -154,7 +150,7 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+
+ if !subjects.is_empty() {
+ if let Some(notificationcmd) = &self.account.notification_command {
+- match Command::new("sh").arg("-c").arg(notificationcmd).status() {
++ match Command::new("sh").stdout(Stdio::null()).stderr(Stdio::null()).arg("-c").arg(notificationcmd).status() {
+ Ok(s) if s.success() => {}
+ Ok(s) => {
+ eprint!(
+@@ -177,7 +173,10 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+ }
+
+ use notify_rust::{Hint, Notification};
+- let title = format!("@{} has new mail ({})", self.account.name, num_new);
++ let title = format!(
++ "@{} has new mail ({} unseen)",
++ self.account.name, num_unseen
++ );
+
+ // we want the n newest e-mail in reverse chronological order
+ let mut body = String::new();
+@@ -188,8 +187,8 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+ }
+ let body = body.trim_end();
+
+- println!("! {}", title);
+- println!("{}", body);
++ // println!("! {}", title);
++ // println!("{}", body);
+ if let Some(mut n) = notification.take() {
+ n.summary(&title).body(&format!(
+ "{}",
+@@ -213,7 +212,7 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+ }
+ }
+
+- if tx.send(Some((account, num_new))).is_err() {
++ if tx.send(Some((account, num_unseen))).is_err() {
+ // we're exiting!
+ break Ok(());
+ }
+@@ -309,10 +308,6 @@ fn main() {
+ None => return parse_failed("notificationcmd", "string"),
+ },
+ ),
+- folder: t.get("folder").and_then(|raw_v| match raw_v.as_str() {
+- Some(v) => Some(v.to_string()),
+- None => return parse_failed("folder", "string"),
+- }),
+ })
+ }
+ })
+@@ -328,32 +323,7 @@ fn main() {
+ return;
+ }
+
+- // Create a new application
+- let mut app = match systray::Application::new() {
+- Ok(app) => app,
+- Err(e) => {
+- println!("Could not create gtk application: {}", e);
+- return;
+- }
+- };
+- if let Err(e) = app.set_icon_from_file("/usr/share/icons/Faenza/stock/24/stock_disconnect.png")
+- {
+- println!("Could not set application icon: {}", e);
+- }
+-
+ let (tx, rx) = mpsc::channel();
+- let tx_close = std::sync::Mutex::new(tx.clone());
+- if let Err(e) = app.add_menu_item("Quit", move |window| {
+- tx_close.lock().unwrap().send(None).unwrap();
+- window.quit();
+- Ok::<_, systray::Error>(())
+- }) {
+- println!("Could not add application Quit menu option: {}", e);
+- }
+-
+- // TODO: w.set_tooltip(&"Whatever".to_string());
+- // TODO: app.wait_for_message();
+-
+ let accounts: Vec<_> = accounts
+ .par_iter()
+ .filter_map(|account| {
+@@ -366,6 +336,7 @@ fn main() {
+ "Failed to connect account {}: {}; retrying in {}s",
+ account.name, e, wait
+ );
++ println!(" ");
+ thread::sleep(Duration::from_secs(wait));
+ }
+ Err(e) => {
+@@ -383,14 +354,14 @@ fn main() {
+
+ if accounts.is_empty() {
+ println!("No accounts in config worked; exiting...");
++ println!(" ");
+ return;
+ }
+
+ // We have now connected
+- app.set_icon_from_file("/usr/share/icons/Faenza/stock/24/stock_connect.png")
+- .ok();
++ println!("Connected...");
+
+- let mut new: Vec<_> = accounts.iter().map(|_| 0).collect();
++ let mut unseen: Vec<_> = accounts.iter().map(|_| 0).collect();
+ for (i, conn) in accounts.into_iter().enumerate() {
+ let tx = tx.clone();
+ thread::spawn(move || {
+@@ -399,18 +370,15 @@ fn main() {
+ }
+
+ for r in rx {
+- let (i, num_new) = if let Some(r) = r {
++ let (i, num_unseen) = if let Some(r) = r {
+ r
+ } else {
+ break;
+ };
+- new[i] = num_new;
+- if new.iter().sum::<usize>() == 0 {
+- app.set_icon_from_file("/usr/share/icons/oxygen/base/32x32/status/mail-unread.png")
+- .unwrap();
+- } else {
+- app.set_icon_from_file("/usr/share/icons/oxygen/base/32x32/status/mail-unread-new.png")
+- .unwrap();
++ unseen[i] = num_unseen;
++ match unseen.iter().sum::<usize>() {
++ 0 => println!(" "),
++ len @ _ => println!(" {}", len),
+ }
+ }
+ }
diff --git a/srcpkgs/buzz/template b/srcpkgs/buzz/template
new file mode 100644
index 000000000000..8f5d4ff3825c
--- /dev/null
+++ b/srcpkgs/buzz/template
@@ -0,0 +1,15 @@
+# Template file for 'buzz'
+pkgname=buzz
+version=1.5.0
+revision=1
+archs="x86_64"
+build_style=cargo
+hostmakedepends="pkg-config"
+makedepends="openssl-devel"
+depends="openssl"
+short_desc="A simple system tray application for notifying about unseen e-mail"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT"
+homepage="https://github.com/jonhoo/buzz"
+distfiles="https://github.com/jonhoo/buzz/archive/v${version}.tar.gz"
+checksum=12b4e8eb14274fd9eb1a5ab963e14e8120336e287bd9aa67d7bdd0c35e81e88f
From 10e65bb815a815d458a66574d68c45777b242a52 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sun, 21 Mar 2021 19:31:07 +0100
Subject: [PATCH 10/26] Add patch for different configfiles
---
srcpkgs/buzz/patches/args.patch | 94 +++++++++++++++++++++++++++++++++
srcpkgs/buzz/patches/series | 2 +
2 files changed, 96 insertions(+)
create mode 100644 srcpkgs/buzz/patches/args.patch
create mode 100644 srcpkgs/buzz/patches/series
diff --git a/srcpkgs/buzz/patches/args.patch b/srcpkgs/buzz/patches/args.patch
new file mode 100644
index 000000000000..af3a5373ea03
--- /dev/null
+++ b/srcpkgs/buzz/patches/args.patch
@@ -0,0 +1,94 @@
+diff --git Cargo.toml Cargo.toml
+index 7c08231..c874238 100644
+--- Cargo.toml
++++ Cargo.toml
+@@ -32,3 +32,4 @@ rayon = "1.0.0"
+ askama_escape = "0.10"
+ chrono = "0.4"
+ directories-next = "1.0.1"
++structopt = "0.3"
+diff --git src/main.rs src/main.rs
+index 01ca920..fd32b51 100644
+--- src/main.rs
++++ src/main.rs
+@@ -8,12 +8,24 @@ use std::collections::BTreeMap;
+ use std::fs::File;
+ use std::io::prelude::*;
+ use std::net::TcpStream;
++use std::path::PathBuf;
+ use std::process::{Command, Stdio};
+ use std::sync::mpsc;
+ use std::thread;
+ use std::time::Duration;
+
+ use directories_next::ProjectDirs;
++use structopt::StructOpt;
++
++#[derive(Debug, StructOpt)]
++#[structopt(
++ name = "buzz",
++ about = "A simple system tray application for notifying about unseen e-mail"
++)]
++struct Options {
++ #[structopt(short, long, parse(from_os_str))]
++ config: Option<PathBuf>,
++}
+
+ #[derive(Clone)]
+ struct Account {
+@@ -150,7 +162,13 @@ impl<T: Read + Write + imap::extensions::idle::SetReadTimeout> Connection<T> {
+
+ if !subjects.is_empty() {
+ if let Some(notificationcmd) = &self.account.notification_command {
+- match Command::new("sh").stdout(Stdio::null()).stderr(Stdio::null()).arg("-c").arg(notificationcmd).status() {
++ match Command::new("sh")
++ .stdout(Stdio::null())
++ .stderr(Stdio::null())
++ .arg("-c")
++ .arg(notificationcmd)
++ .status()
++ {
+ Ok(s) if s.success() => {}
+ Ok(s) => {
+ eprint!(
+@@ -231,28 +249,32 @@ fn parse_failed<T>(key: &str, typename: &str) -> Option<T> {
+
+ fn main() {
+ // Load the user's config
+- let config = ProjectDirs::from("", "", "buzz")
+- .expect("Could not find valid home directory.")
+- .config_dir()
+- .with_file_name("buzz.toml");
++ let opts = Options::from_args();
++
++ let config = opts.config.unwrap_or_else(||
++ ProjectDirs::from("", "", "buzz")
++ .expect("Could not find valid home directory.")
++ .config_dir()
++ .with_file_name("buzz.toml"),
++ );
+
+ let config = {
+- let mut f = match File::open(config) {
++ let mut f = match File::open(&config) {
+ Ok(f) => f,
+ Err(e) => {
+- println!("Could not open configuration file buzz.toml: {}", e);
++ println!("Could not open configuration file '{}': {}", &config.display(), e);
+ return;
+ }
+ };
+ let mut s = String::new();
+ if let Err(e) = f.read_to_string(&mut s) {
+- println!("Could not read configuration file buzz.toml: {}", e);
++ println!("Could not read configuration file '{}': {}", &config.display(), e);
+ return;
+ }
+ match s.parse::<toml::Value>() {
+ Ok(t) => t,
+ Err(e) => {
+- println!("Could not parse configuration file buzz.toml: {}", e);
++ println!("Could not parse configuration file '{}': {}", &config.display(), e);
+ return;
+ }
+ }
diff --git a/srcpkgs/buzz/patches/series b/srcpkgs/buzz/patches/series
new file mode 100644
index 000000000000..b94853fd4193
--- /dev/null
+++ b/srcpkgs/buzz/patches/series
@@ -0,0 +1,2 @@
+no_systray.patch
+args.patch
From 88fe763c9fbee0db5e1b4afa763dc4bd75182d59 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Wed, 31 Mar 2021 09:12:41 +0200
Subject: [PATCH 11/26] Add nightly neovim support
---
srcpkgs/neovim-git/template | 38 +++++++++++++++++++++++++++++
srcpkgs/python3-neovim-git/template | 15 ++++++++++++
2 files changed, 53 insertions(+)
create mode 100644 srcpkgs/neovim-git/template
create mode 100644 srcpkgs/python3-neovim-git/template
diff --git a/srcpkgs/neovim-git/template b/srcpkgs/neovim-git/template
new file mode 100644
index 000000000000..7691841bf30c
--- /dev/null
+++ b/srcpkgs/neovim-git/template
@@ -0,0 +1,38 @@
+# Template file for 'neovim-git'
+pkgname=neovim-git
+version=0.5.0
+revision=1
+build_style=gnu-makefile
+build_helper="qemu"
+make_build_args="CMAKE_BUILD_TYPE=Release CMAKE_INSTALL_PREFIX=/usr"
+hostmakedepends="LuaJIT cmake curl automake gettext git gperf libtool m4 pkg-config unzip"
+makedepends="libtermkey-devel libuv-devel libvterm-devel msgpack-devel LuaJIT-devel
+ libluv-devel libutf8proc-devel"
+depends="libvterm>=0.1.0"
+conflicts="neovim"
+short_desc="Fork of Vim aiming to improve user experience, plugins and GUIs"
+maintainer="reedts <j.reedts@gmail.com>"
+license="Apache-2.0, custom:Vim"
+homepage="https://neovim.io"
+
+alternatives="
+ vi:vi:/usr/bin/nvim
+ vi:vi.1:/usr/share/man/man1/nvim.1
+ vi:view:/usr/bin/nvim
+ vi:view.1:/usr/share/man/man1/nvim.1
+ vim:vim:/usr/bin/nvim
+ vim:vim.1:/usr/share/man/man1/nvim.1"
+
+pre_fetch() {
+ git clone https://github.com/neovim/neovim ${wrksrc}
+ cd ${wrksrc}
+}
+
+pre_configure() {
+ vsed -i runtime/CMakeLists.txt \
+ -e "s|\".*/bin/nvim|\${CMAKE_CROSSCOMPILING_EMULATOR} &|g"
+}
+
+post_install() {
+ vlicense LICENSE
+}
diff --git a/srcpkgs/python3-neovim-git/template b/srcpkgs/python3-neovim-git/template
new file mode 100644
index 000000000000..180c34192cd9
--- /dev/null
+++ b/srcpkgs/python3-neovim-git/template
@@ -0,0 +1,15 @@
+# Template file for 'python3-neovim'
+pkgname=python3-neovim-git
+version=0.4.2
+revision=1
+wrksrc="pynvim-${version}"
+build_style="python3-module"
+hostmakedepends="python3-setuptools"
+depends="neovim-git python3-greenlet python3-msgpack"
+conflicts="python3-neovim"
+short_desc="Python3 client for Neovim"
+maintainer="Steve Prybylski <sa.prybylx@gmail.com>"
+license="Apache-2.0"
+homepage="https://github.com/neovim/pynvim"
+distfiles="https://github.com/neovim/pynvim/archive/${version}.tar.gz"
+checksum=513b56741b1140e394536e6c29bae112a35b7c3602b71ba34acf2319570e26e7
From 7489f0aa8f73222978435f070cd75397da78dd13 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sun, 11 Apr 2021 21:53:14 +0200
Subject: [PATCH 12/26] Add nerdfont dejavu
---
srcpkgs/nerd-fonts-dejavu-ttf/template | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
create mode 100644 srcpkgs/nerd-fonts-dejavu-ttf/template
diff --git a/srcpkgs/nerd-fonts-dejavu-ttf/template b/srcpkgs/nerd-fonts-dejavu-ttf/template
new file mode 100644
index 000000000000..ad8b8738b5d9
--- /dev/null
+++ b/srcpkgs/nerd-fonts-dejavu-ttf/template
@@ -0,0 +1,25 @@
+# Template file for 'nerd-fonts-dejavu-ttf'
+pkgname=nerd-fonts-dejavu-ttf
+version=2.1.0
+revision=1
+depends="font-util xbps-triggers"
+conflicts="nerd-fonts-ttf"
+short_desc="Iconic font aggregator, collection and patcher"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT"
+homepage="https://nerdfonts.com"
+distfiles="https://github.com/ryanoasis/nerd-fonts/archive/v${version}.tar.gz"
+checksum="a084ca91a174b547bab4523507824c76aa91ebcf38f9256a4ffd181813f87bd8"
+wrksrc="nerd-fonts-${version}"
+
+do_install() {
+ vmkdir /usr/share/fonts/NerdFonts/ttf
+
+ # get DejaVu patched ttf fonts
+ find patched-fonts/DejaVuSansMono -name '*.ttf' -exec install -Dm644 '{}' ${DESTDIR}/usr/share/fonts/NerdFonts/ttf \;
+
+ # remove windows fonts
+ find ${DESTDIR}/usr/share/fonts/NerdFonts -name '*Windows Compatible.*tf' -delete
+
+ vlicense LICENSE
+}
From 0191d0a6c40b6423711f73d0f9cba932fa956c66 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Mon, 12 Apr 2021 13:13:09 +0200
Subject: [PATCH 13/26] Update
---
srcpkgs/nerd-fonts-dejavu-ttf/template | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/srcpkgs/nerd-fonts-dejavu-ttf/template b/srcpkgs/nerd-fonts-dejavu-ttf/template
index ad8b8738b5d9..aec5fdec454d 100644
--- a/srcpkgs/nerd-fonts-dejavu-ttf/template
+++ b/srcpkgs/nerd-fonts-dejavu-ttf/template
@@ -2,24 +2,27 @@
pkgname=nerd-fonts-dejavu-ttf
version=2.1.0
revision=1
+create_wrksrc=yes
+hostmakedepends="unzip"
depends="font-util xbps-triggers"
-conflicts="nerd-fonts-ttf"
short_desc="Iconic font aggregator, collection and patcher"
maintainer="reedts <j.reedts@gmail.com>"
license="MIT"
homepage="https://nerdfonts.com"
-distfiles="https://github.com/ryanoasis/nerd-fonts/archive/v${version}.tar.gz"
-checksum="a084ca91a174b547bab4523507824c76aa91ebcf38f9256a4ffd181813f87bd8"
-wrksrc="nerd-fonts-${version}"
+distfiles="https://github.com/ryanoasis/nerd-fonts/releases/download/v${version}/DejaVuSansMono.zip"
+checksum=3fbcc4904c88f68d24c8b479784a1aba37f2d78b1162d21f6fc85a58ffcc0e0f
+conflicts="nerd-fonts-ttf"
+font_dirs="/usr/share/fonts/NerdFonts/ttf"
+
+do_extract() {
+ unzip -d ${wrksrc} ${XBPS_SRCDISTDIR}/${pkgname}-${version}/DejaVuSansMono.zip
+}
do_install() {
vmkdir /usr/share/fonts/NerdFonts/ttf
- # get DejaVu patched ttf fonts
- find patched-fonts/DejaVuSansMono -name '*.ttf' -exec install -Dm644 '{}' ${DESTDIR}/usr/share/fonts/NerdFonts/ttf \;
+ find . -name '*.ttf' -exec install -Dm644 '{}' ${DESTDIR}/usr/share/fonts/NerdFonts/ttf \;
# remove windows fonts
find ${DESTDIR}/usr/share/fonts/NerdFonts -name '*Windows Compatible.*tf' -delete
-
- vlicense LICENSE
}
From 6388906255f83c5c3390e3e359832d2777f72abf Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Mon, 12 Apr 2021 13:15:11 +0200
Subject: [PATCH 14/26] Merge two find commands
---
srcpkgs/nerd-fonts-dejavu-ttf/template | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/srcpkgs/nerd-fonts-dejavu-ttf/template b/srcpkgs/nerd-fonts-dejavu-ttf/template
index aec5fdec454d..3c9bbec53170 100644
--- a/srcpkgs/nerd-fonts-dejavu-ttf/template
+++ b/srcpkgs/nerd-fonts-dejavu-ttf/template
@@ -21,8 +21,5 @@ do_extract() {
do_install() {
vmkdir /usr/share/fonts/NerdFonts/ttf
- find . -name '*.ttf' -exec install -Dm644 '{}' ${DESTDIR}/usr/share/fonts/NerdFonts/ttf \;
-
- # remove windows fonts
- find ${DESTDIR}/usr/share/fonts/NerdFonts -name '*Windows Compatible.*tf' -delete
+ find . -name "*.ttf" -not -name "*Windows Compatible.*tf" -exec install -Dm644 '{}' ${DESTDIR}/usr/share/fonts/NerdFonts/ttf \;
}
From a39a38b2697a0778cd0da3aee3225c14710adc55 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Mon, 12 Apr 2021 16:22:06 +0200
Subject: [PATCH 15/26] Add symbols only nerd font
---
srcpkgs/nerd-fonts-symbols-mono-ttf/template | 24 ++++++++++++++++++++
1 file changed, 24 insertions(+)
create mode 100644 srcpkgs/nerd-fonts-symbols-mono-ttf/template
diff --git a/srcpkgs/nerd-fonts-symbols-mono-ttf/template b/srcpkgs/nerd-fonts-symbols-mono-ttf/template
new file mode 100644
index 000000000000..84815fafdb54
--- /dev/null
+++ b/srcpkgs/nerd-fonts-symbols-mono-ttf/template
@@ -0,0 +1,24 @@
+# Template file for 'nerd-fonts-symbols-mono-ttf'
+pkgname=nerd-fonts-symbols-mono-ttf
+version=2.1.0
+revision=1
+create_wrksrc=yes
+depends="font-util xbps-triggers"
+short_desc="High number of extra glyphs from popular 'iconic fonts'"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT"
+homepage="https://nerdfonts.com"
+distfiles="https://github.com/ryanoasis/nerd-fonts/raw/v${version}/src/glyphs/Symbols-1000-em%20Nerd%20Font%20Complete.ttf>Symbols-1000-em_Nerd_Font_Complete-${version}.ttf"
+checksum="7d8ae85caba4df96fe51e07c863ec0f36741f771d7a7ba75dbc0b317abb055f5"
+conflicts="nerd-fonts-ttf"
+font_dirs="/usr/share/fonts/NerdFonts/ttf"
+
+do_extract() {
+ cp ${XBPS_SRCDISTDIR}/${pkgname}-${version}/Symbols-1000-em_Nerd_Font_Complete-${version}.ttf ${wrksrc}
+}
+
+do_install() {
+ vmkdir /usr/share/fonts/NerdFonts/ttf
+
+ vinstall Symbols-1000-em_Nerd_Font_Complete-${version}.ttf 644 /usr/share/fonts/NerdFonts/ttf "Symbols-1000-em Nerd Font Complete.ttf"
+}
From 12f6b9edf37b8bac6e955f10b1f7d5c15fe55a5e Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Tue, 15 Jun 2021 14:01:03 +0200
Subject: [PATCH 16/26] Signal-Desktop: update to 5.4.1.
---
.../patches/build-from-tarball.patch | 9 ------
.../expire-from-source-date-epoch.patch | 13 +++++++++
srcpkgs/Signal-Desktop/template | 28 ++++++++++++-------
3 files changed, 31 insertions(+), 19 deletions(-)
delete mode 100644 srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
create mode 100644 srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
diff --git a/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch b/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
deleted file mode 100644
index e8c3db0e087e..000000000000
--- a/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- Gruntfile.js.orig 2020-04-26 23:32:09.861789510 +0200
-+++ Gruntfile.js 2020-04-26 23:32:21.424734031 +0200
-@@ -452,6 +452,5 @@
- 'concat',
- 'copy:deps',
- 'sass',
-- 'date',
- ]);
- };
diff --git a/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch b/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
new file mode 100644
index 000000000000..a8a11ab72c45
--- /dev/null
+++ b/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
@@ -0,0 +1,13 @@
+--- Gruntfile.js
++++ Gruntfile.js
+@@ -203,9 +203,7 @@ module.exports = grunt => {
+ });
+
+ grunt.registerTask('getExpireTime', () => {
+- grunt.task.requires('gitinfo');
+- const gitinfo = grunt.config.get('gitinfo');
+- const committed = gitinfo.local.branch.current.lastCommitTime;
++ const committed = parseInt(process.env.SOURCE_DATE_EPOCH, 10) * 1000;
+ const time = Date.parse(committed) + 1000 * 60 * 60 * 24 * 90;
+ grunt.file.write(
+ 'config/local-production.json',
diff --git a/srcpkgs/Signal-Desktop/template b/srcpkgs/Signal-Desktop/template
index 8999b6e483ff..57ad77a410b5 100644
--- a/srcpkgs/Signal-Desktop/template
+++ b/srcpkgs/Signal-Desktop/template
@@ -1,33 +1,39 @@
# Template file for 'Signal-Desktop'
pkgname=Signal-Desktop
-version=1.39.5
+version=5.4.1
revision=1
# Due to electron
# 32-bit is not supported https://github.com/signalapp/Signal-Desktop/issues/1661
archs="x86_64"
-hostmakedepends="git nodejs python tar yarn"
-depends="libnotify libappindicator"
+hostmakedepends="git git-lfs nodejs python3 tar yarn"
+depends="libvips"
short_desc="Signal Private Messenger for Linux"
maintainer="Julio Galvan <juliogalvan@protonmail.com>"
-license="GPL-3.0-only"
+license="AGPL-3.0-only"
homepage="https://github.com/signalapp/Signal-Desktop"
distfiles="https://github.com/signalapp/Signal-Desktop/archive/v${version}.tar.gz"
-checksum=f9f55c0195579b43712bf370b753337432eda4bcf89809d1c8f3deb0b4ee4400
+checksum=60c3772c5951d95469e2ab491b2f09d7ee93c998909de8cb169e23b461b7ebbc
nostrip_files="signal-desktop"
-pre_build() {
- vsed -e 's/"node": "/&>=/' -i package.json
+post_extract() {
+ # git-lfs hook needs to be installed for one of the dependencies
+ git lfs install
+
+ vsed 's/"node": "/&>=/' -i package.json
+
+ yarn install --ignore-engines
}
do_build() {
- yarn install --ignore-engines
- yarn grunt
- yarn build-release --dir
+ yarn generate
+ yarn build-release
}
do_install() {
vmkdir usr/lib/signal-desktop
+ rm -rf release/linux-unpacked/resources/app.asar.unpacked/node_modules/ffi-napi/prebuilds/{darwin-x64,linux-arm64,win32-ia32,win32-x64}
+ rm -rf release/linux-unpacked/resources/app.asar.unpacked/node_modules/ref-napi/prebuilds/{darwin-x64,linux-arm64,win32-ia32,win32-x64}
vcopy release/linux-unpacked/* usr/lib/signal-desktop
vmkdir usr/bin
@@ -40,4 +46,6 @@ do_install() {
for size in 16 32 48 128 256 1024; do
vinstall images/icon_${size}.png 644 usr/share/icons/hicolor/${size}x${size}/apps/ signal.png
done
+
+ vlicense LICENSE
}
From 91e10fa049e2eee343917f2fa721d4447b0a866f Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Wed, 16 Jun 2021 09:56:32 +0200
Subject: [PATCH 17/26] Signal-Desktop: update to 5.4.1.
---
.../patches/build-from-tarball.patch | 9 -----
.../expire-from-source-date-epoch.patch | 13 +++++++
srcpkgs/Signal-Desktop/template | 35 +++++++++++++------
3 files changed, 38 insertions(+), 19 deletions(-)
delete mode 100644 srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
create mode 100644 srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
diff --git a/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch b/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
deleted file mode 100644
index e8c3db0e087e..000000000000
--- a/srcpkgs/Signal-Desktop/patches/build-from-tarball.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- Gruntfile.js.orig 2020-04-26 23:32:09.861789510 +0200
-+++ Gruntfile.js 2020-04-26 23:32:21.424734031 +0200
-@@ -452,6 +452,5 @@
- 'concat',
- 'copy:deps',
- 'sass',
-- 'date',
- ]);
- };
diff --git a/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch b/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
new file mode 100644
index 000000000000..a8a11ab72c45
--- /dev/null
+++ b/srcpkgs/Signal-Desktop/patches/expire-from-source-date-epoch.patch
@@ -0,0 +1,13 @@
+--- Gruntfile.js
++++ Gruntfile.js
+@@ -203,9 +203,7 @@ module.exports = grunt => {
+ });
+
+ grunt.registerTask('getExpireTime', () => {
+- grunt.task.requires('gitinfo');
+- const gitinfo = grunt.config.get('gitinfo');
+- const committed = gitinfo.local.branch.current.lastCommitTime;
++ const committed = parseInt(process.env.SOURCE_DATE_EPOCH, 10) * 1000;
+ const time = Date.parse(committed) + 1000 * 60 * 60 * 24 * 90;
+ grunt.file.write(
+ 'config/local-production.json',
diff --git a/srcpkgs/Signal-Desktop/template b/srcpkgs/Signal-Desktop/template
index 8999b6e483ff..43af7b54ce62 100644
--- a/srcpkgs/Signal-Desktop/template
+++ b/srcpkgs/Signal-Desktop/template
@@ -1,32 +1,45 @@
# Template file for 'Signal-Desktop'
pkgname=Signal-Desktop
-version=1.39.5
+version=5.4.1
revision=1
-# Due to electron
+# Signal officially only supports x86_64 (also due to Electron)
+# discontinued Electron 32-bit support: https://www.electronjs.org/blog/linux-32bit-support
# 32-bit is not supported https://github.com/signalapp/Signal-Desktop/issues/1661
+# armv7hf/arm64: https://github.com/signalapp/Signal-Desktop/issues/3410
archs="x86_64"
-hostmakedepends="git nodejs python tar yarn"
-depends="libnotify libappindicator"
+hostmakedepends="git git-lfs nodejs python3 tar yarn"
+depends="cairo gtk+3 libvips pango"
short_desc="Signal Private Messenger for Linux"
maintainer="Julio Galvan <juliogalvan@protonmail.com>"
-license="GPL-3.0-only"
+license="AGPL-3.0-only"
homepage="https://github.com/signalapp/Signal-Desktop"
distfiles="https://github.com/signalapp/Signal-Desktop/archive/v${version}.tar.gz"
-checksum=f9f55c0195579b43712bf370b753337432eda4bcf89809d1c8f3deb0b4ee4400
+checksum=60c3772c5951d95469e2ab491b2f09d7ee93c998909de8cb169e23b461b7ebbc
nostrip_files="signal-desktop"
-pre_build() {
- vsed -e 's/"node": "/&>=/' -i package.json
+post_extract() {
+ # git-lfs hook needs to be installed for one of the dependencies
+ git lfs install
+
+ vsed 's/"node": "/&>=/' -i package.json
+
+ # Dependencies have to be installed before applying patch
+ yarn install --ignore-engines --frozen-lockfile
}
do_build() {
- yarn install --ignore-engines
yarn grunt
- yarn build-release --dir
+ yarn generate
+ yarn build-release
}
do_install() {
vmkdir usr/lib/signal-desktop
+
+ # Remove prebuilt binaries for foreign architectures (to not confuse strip)
+ for prebin in darwin-x64 linux-arm64 win32-ia32 win32-x64; do
+ rm -rf release/linux-unpacked/resources/app.asar.unpacked/node_modules/{ffi-napi,ref-napi}/prebuilds/$prebin
+ done
vcopy release/linux-unpacked/* usr/lib/signal-desktop
@@ -40,4 +53,6 @@ do_install() {
for size in 16 32 48 128 256 1024; do
vinstall images/icon_${size}.png 644 usr/share/icons/hicolor/${size}x${size}/apps/ signal.png
done
+
+ vlicense LICENSE
}
From 251cbfc150a3e91fb1a501cf2a9b63494d082a33 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Tue, 6 Jul 2021 10:25:42 +0200
Subject: [PATCH 18/26] Remove git modules as stable version is upstream
---
srcpkgs/neovim-git/template | 38 -----------------------------
srcpkgs/python3-neovim-git/template | 15 ------------
2 files changed, 53 deletions(-)
delete mode 100644 srcpkgs/neovim-git/template
delete mode 100644 srcpkgs/python3-neovim-git/template
diff --git a/srcpkgs/neovim-git/template b/srcpkgs/neovim-git/template
deleted file mode 100644
index 7691841bf30c..000000000000
--- a/srcpkgs/neovim-git/template
+++ /dev/null
@@ -1,38 +0,0 @@
-# Template file for 'neovim-git'
-pkgname=neovim-git
-version=0.5.0
-revision=1
-build_style=gnu-makefile
-build_helper="qemu"
-make_build_args="CMAKE_BUILD_TYPE=Release CMAKE_INSTALL_PREFIX=/usr"
-hostmakedepends="LuaJIT cmake curl automake gettext git gperf libtool m4 pkg-config unzip"
-makedepends="libtermkey-devel libuv-devel libvterm-devel msgpack-devel LuaJIT-devel
- libluv-devel libutf8proc-devel"
-depends="libvterm>=0.1.0"
-conflicts="neovim"
-short_desc="Fork of Vim aiming to improve user experience, plugins and GUIs"
-maintainer="reedts <j.reedts@gmail.com>"
-license="Apache-2.0, custom:Vim"
-homepage="https://neovim.io"
-
-alternatives="
- vi:vi:/usr/bin/nvim
- vi:vi.1:/usr/share/man/man1/nvim.1
- vi:view:/usr/bin/nvim
- vi:view.1:/usr/share/man/man1/nvim.1
- vim:vim:/usr/bin/nvim
- vim:vim.1:/usr/share/man/man1/nvim.1"
-
-pre_fetch() {
- git clone https://github.com/neovim/neovim ${wrksrc}
- cd ${wrksrc}
-}
-
-pre_configure() {
- vsed -i runtime/CMakeLists.txt \
- -e "s|\".*/bin/nvim|\${CMAKE_CROSSCOMPILING_EMULATOR} &|g"
-}
-
-post_install() {
- vlicense LICENSE
-}
diff --git a/srcpkgs/python3-neovim-git/template b/srcpkgs/python3-neovim-git/template
deleted file mode 100644
index 180c34192cd9..000000000000
--- a/srcpkgs/python3-neovim-git/template
+++ /dev/null
@@ -1,15 +0,0 @@
-# Template file for 'python3-neovim'
-pkgname=python3-neovim-git
-version=0.4.2
-revision=1
-wrksrc="pynvim-${version}"
-build_style="python3-module"
-hostmakedepends="python3-setuptools"
-depends="neovim-git python3-greenlet python3-msgpack"
-conflicts="python3-neovim"
-short_desc="Python3 client for Neovim"
-maintainer="Steve Prybylski <sa.prybylx@gmail.com>"
-license="Apache-2.0"
-homepage="https://github.com/neovim/pynvim"
-distfiles="https://github.com/neovim/pynvim/archive/${version}.tar.gz"
-checksum=513b56741b1140e394536e6c29bae112a35b7c3602b71ba34acf2319570e26e7
From 82c35813256b8055f91046d935484f14ddd149b3 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Thu, 21 Jul 2022 12:53:28 +0200
Subject: [PATCH 19/26] New package: mensa-2d79250
---
srcpkgs/mensa/template | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
create mode 100644 srcpkgs/mensa/template
diff --git a/srcpkgs/mensa/template b/srcpkgs/mensa/template
new file mode 100644
index 000000000000..e6ff453b0f35
--- /dev/null
+++ b/srcpkgs/mensa/template
@@ -0,0 +1,16 @@
+# Template file for 'mensa'
+pkgname=mensa
+version=2d79250
+revision=1
+wrksrc="mensa"
+depends="python3 python3-requests python3-BeautifulSoup4"
+short_desc="Mensa menu fetch and "
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT"
+homepage="https://git.rcx.one/eike/mensa"
+distfiles="https://git.rcx.one/eike/mensa/archive/${version}.tar.gz"
+checksum=e491adca53f6ccf81874329528aca25a2bee399e481b61f2b745a5c8948d2e46
+
+do_install() {
+ vbin menu.py mensa
+}
From a7ed58cba580123d0817b7342f47a5bac688e173 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Thu, 22 Sep 2022 14:46:15 +0200
Subject: [PATCH 20/26] New package: ripdrag-0.2.0
---
srcpkgs/ripdrag/template | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 srcpkgs/ripdrag/template
diff --git a/srcpkgs/ripdrag/template b/srcpkgs/ripdrag/template
new file mode 100644
index 000000000000..a857d71c2c49
--- /dev/null
+++ b/srcpkgs/ripdrag/template
@@ -0,0 +1,13 @@
+# Template file for 'ripdrag'
+pkgname=ripdrag
+version=0.2.0
+revision=1
+build_style=cargo
+hostmakedepends="pkg-config"
+makedepends="glib-devel gtk4-devel"
+short_desc="Drag and drop files from and to the terminal"
+maintainer="reedts <j.reedts@gmail.com>"
+license="GPL-3.0-or-later"
+homepage="https://github.com/nik012003/ripdrag"
+distfiles="https://static.crates.io/crates/ripdrag/ripdrag-${version}.crate"
+checksum=70c6ba5240b6aef40e58d623de5b76db10531db4e0db839204d7778651b3f752
From 5a19845f4d0252b0ea3bdb0acd56bfc15474c1b8 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Tue, 4 Oct 2022 11:50:26 +0200
Subject: [PATCH 21/26] New package: apptainer-1.1.0
---
srcpkgs/apptainer/template | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
create mode 100644 srcpkgs/apptainer/template
diff --git a/srcpkgs/apptainer/template b/srcpkgs/apptainer/template
new file mode 100644
index 000000000000..bd06878c288e
--- /dev/null
+++ b/srcpkgs/apptainer/template
@@ -0,0 +1,36 @@
+# Template file for 'apptainer'
+pkgname=apptainer
+version=1.1.0
+revision=1
+build_style=go
+go_import_path=github.com/apptainer/apptainer
+hostmakedepends="git pkg-config cryptsetup"
+makedepends="openssl-devel"
+depends="fakeroot fuse-overlayfs squashfs-tools"
+short_desc="Open source container platform"
+maintainer="reedts <j.reedts@gmail.com>"
+license="BSD-3-Clause"
+homepage="https://github.com/apptainer/apptainer"
+distfiles="https://github.com/apptainer/apptainer/releases/download/v${version}/${pkgname}-${version}.tar.gz"
+checksum=1772f25c8770f976abb82c29053b77183930426a83eb3e43b9f8068c3e88ac30
+
+do_build() {
+ ./mconfig \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var/lib \
+ -P release-stripped \
+ --without-suid \
+ -v
+
+ make -C builddir
+}
+
+do_install() {
+ make -C builddir DESTDIR="${DESTDIR}" install
+}
+
+post_install() {
+ vlicense LICENSE.md
+}
From d2f46300fe98b54dd2d54d91b4e102de30655c27 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Tue, 4 Oct 2022 14:57:16 +0200
Subject: [PATCH 22/26] New package: squashfuse-0.1.105
---
srcpkgs/squashfuse/template | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
create mode 100644 srcpkgs/squashfuse/template
diff --git a/srcpkgs/squashfuse/template b/srcpkgs/squashfuse/template
new file mode 100644
index 000000000000..d577213b7b84
--- /dev/null
+++ b/srcpkgs/squashfuse/template
@@ -0,0 +1,28 @@
+# Template file for 'squashfuse'
+pkgname=squashfuse
+version=0.1.105
+revision=1
+build_style=gnu-configure
+#configure_args=""
+#make_build_args=""
+#make_install_args=""
+#conf_files=""
+hostmakedepends="autoconf automake libtool pkg-config"
+makedepends="fuse-devel zlib-devel"
+short_desc="FUSE filesystem to mount squashfs archives"
+maintainer="reedts <j.reedts@gmail.com>"
+license="custom:"
+homepage="https://github.com/vasi/squashfuse"
+#changelog=""
+distfiles="https://github.com/vasi/squashfuse/archive/refs/tags/${version}.tar.gz"
+checksum=3f776892ab2044ecca417be348e482fee2839db75e35d165b53737cb8153ab1e
+
+pre_configure() {
+ # fix wrong version string
+ vsed -i ./configure.ac -e 's/0.1.104/0.1.105/'
+ ./autogen.sh
+}
+
+post_install() {
+ vlicense LICENSE
+}
From f486e3fc2e2b822c86d025f0d3ad115880d35021 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Tue, 4 Oct 2022 14:59:46 +0200
Subject: [PATCH 23/26] apptainer: update to 1.1.0.
---
srcpkgs/apptainer/template | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/apptainer/template b/srcpkgs/apptainer/template
index bd06878c288e..d04bdff0d739 100644
--- a/srcpkgs/apptainer/template
+++ b/srcpkgs/apptainer/template
@@ -5,14 +5,15 @@ revision=1
build_style=go
go_import_path=github.com/apptainer/apptainer
hostmakedepends="git pkg-config cryptsetup"
-makedepends="openssl-devel"
-depends="fakeroot fuse-overlayfs squashfs-tools"
+makedepends="openssl-devel libseccomp-devel"
+depends="fakeroot fuse-overlayfs squashfs-tools squashfuse"
short_desc="Open source container platform"
maintainer="reedts <j.reedts@gmail.com>"
license="BSD-3-Clause"
homepage="https://github.com/apptainer/apptainer"
distfiles="https://github.com/apptainer/apptainer/releases/download/v${version}/${pkgname}-${version}.tar.gz"
checksum=1772f25c8770f976abb82c29053b77183930426a83eb3e43b9f8068c3e88ac30
+make_dirs="/var/lib/apptainer/mnt/session 755 root root"
do_build() {
./mconfig \
From 296a96ae84cf4ba46af9f4226af4fe09b2c60fb3 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Wed, 2 Nov 2022 14:41:27 +0100
Subject: [PATCH 24/26] Bump version
---
srcpkgs/mensa/template | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/mensa/template b/srcpkgs/mensa/template
index e6ff453b0f35..d00e60b020d5 100644
--- a/srcpkgs/mensa/template
+++ b/srcpkgs/mensa/template
@@ -1,6 +1,6 @@
# Template file for 'mensa'
pkgname=mensa
-version=2d79250
+version=e83f806f16
revision=1
wrksrc="mensa"
depends="python3 python3-requests python3-BeautifulSoup4"
@@ -9,7 +9,7 @@ maintainer="reedts <j.reedts@gmail.com>"
license="MIT"
homepage="https://git.rcx.one/eike/mensa"
distfiles="https://git.rcx.one/eike/mensa/archive/${version}.tar.gz"
-checksum=e491adca53f6ccf81874329528aca25a2bee399e481b61f2b745a5c8948d2e46
+checksum=a5ac71bd41bdcd1de113ef7d9d5ce5114e3b7bdfe183fc2d5d288a0a78434eed
do_install() {
vbin menu.py mensa
From 3c57789794a3ca220a2d743e81b64fca3f594636 Mon Sep 17 00:00:00 2001
From: Julian Bigge <julian.bigge@uni-muenster.de>
Date: Wed, 2 Nov 2022 15:36:51 +0100
Subject: [PATCH 25/26] zotero: update to 6.0.16.
---
srcpkgs/zotero/template | 48 ++++++++++++-----------------------------
1 file changed, 14 insertions(+), 34 deletions(-)
diff --git a/srcpkgs/zotero/template b/srcpkgs/zotero/template
index 96e7c34c0ef0..a0015b85c488 100644
--- a/srcpkgs/zotero/template
+++ b/srcpkgs/zotero/template
@@ -1,49 +1,29 @@
# Template file for 'zotero'
pkgname=zotero
-version=5.0.95.3
+version=6.0.16
revision=1
arch="x86_64"
-hostmakedepends="awk curl git nodejs-lts openssh perl python python3 rsync tar unzip wget which zip"
-makedepends="nodejs-lts"
-depends="nodejs-lts"
short_desc="A tool to help you collect, organize, cite, and share your research sources."
maintainer="reedts <j.reedts@gmail.com>"
license="GPL-3.0-or-later"
homepage="https://www.zotero.org"
+distfiles="${homepage}/download/client/dl?channel=release&platform=linux-${arch}&version=${version}>Zotero-${version}_linux_${arch}.tar.bz2"
nopie=yes
-
-do_fetch() {
- git clone -b ${version} --recursive \
- https://github.com/zotero/zotero ${wrksrc}/zotero-client
-
- git clone -b ${version} --recursive \
- https://github.com/zotero/zotero-standalone-build \
- ${wrksrc}/zotero-standalone-build
-
- git clone --recursive \
- https://github.com/zotero/zotero-build \
- ${wrksrc}/zotero-build
-}
-
-do_configure() {
- cd ${wrksrc}/zotero-client
- npm i
-}
-
-do_build() {
- cd ${wrksrc}/zotero-client
- npm run build
-
- cd ${wrksrc}/zotero-standalone-build
- ./fetch_mar_tools
- ./fetch_xulrunner.sh -p l
- ./fetch_pdftools
- ./scripts/dir_build
-}
+checksum=3ea0bb3eaa514a6fd8b77a4af13bb372b86d7c949e257ead876c5bda7fc1ba5f
+wrksrc="Zotero_linux-${arch}"
do_install() {
vmkdir opt/zotero
vmkdir usr/bin
- vcopy ${wrksrc}/zotero-standalone-build/staging/Zotero_linux-${arch}/* opt/zotero
+ vcopy ${wrksrc}/* opt/zotero
ln -s "${DESTDIR}/opt/zotero/zotero" "${DESTDIR}/usr/bin/zotero"
+ vinstall "${wrksrc}/zotero.desktop" 755 "/usr/share/applications/zotero.desktop"
+
+ for size in 16 32 48 256; do
+ vmkdir usr/share/icons/hicolor/${size}x${size}/apps
+ mv "${DESTDIR}/opt/zotero/chrome/icons/default/default${size}.png" "${DESTDIR}/usr/share/icons/hicolor/${size}x${size}/apps/zotero.png"
+ done
+
+ # Disable APP update
+ vsed -i ${DESTDIR}/opt/zotero/defaults/preferences/prefs.js -e '/pref("app.update.enabled", true);/c\pref("app.update.enabled", false);'
}
From 914d0c44b37257d65018207af8478f1cf19f6728 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sat, 4 Mar 2023 15:53:23 +0100
Subject: [PATCH 26/26] New package: cargo-flamegraph-0.6.2
---
srcpkgs/cargo-flamegraph/template | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
create mode 100644 srcpkgs/cargo-flamegraph/template
diff --git a/srcpkgs/cargo-flamegraph/template b/srcpkgs/cargo-flamegraph/template
new file mode 100644
index 000000000000..73b1ef6cb52d
--- /dev/null
+++ b/srcpkgs/cargo-flamegraph/template
@@ -0,0 +1,23 @@
+# Template file for 'cargo-flamegraph'
+pkgname=cargo-flamegraph
+version=0.6.2
+revision=1
+build_style=cargo
+build_helper=qemu
+depends="perf"
+short_desc="Easy flamegraphs for Rust projects and everything else"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT, Apache-2.0"
+homepage="https://github.com/flamegraph-rs/flamegraph"
+distfiles="https://github.com/flamegraph-rs/flamegraph/archive/refs/tags/v${version}.tar.gz"
+checksum=ec9626f8bc6e52b4c6ebbd5b35ac87f0e17e70ac1fd9eb5f26a8d7dd898f7911
+
+post_install() {
+ vlicense LICENSE-MIT
+
+ local flamegraph="${DESTDIR}/usr/bin/flamegraph"
+ for shell in bash fish zsh; do
+ vtargetrun ${flamegraph} --completions ${shell} > flamegraph.${shell}
+ vcompletion flamegraph.${shell} ${shell} flamegraph
+ done
+}
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PR PATCH] [Updated] New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
` (3 preceding siblings ...)
2023-03-04 16:31 ` reedts
@ 2023-03-04 16:33 ` reedts
2023-03-05 6:06 ` [PR PATCH] [Merged]: " classabbyamp
5 siblings, 0 replies; 7+ messages in thread
From: reedts @ 2023-03-04 16:33 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 918 bytes --]
There is an updated pull request by reedts against master on the void-packages repository
https://github.com/reedts/void-packages cargo-flamegraph_v0.6.2
https://github.com/void-linux/void-packages/pull/42585
New package: cargo-flamegraph-0.6.2
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
A patch file from https://github.com/void-linux/void-packages/pull/42585.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-cargo-flamegraph_v0.6.2-42585.patch --]
[-- Type: text/x-diff, Size: 1338 bytes --]
From 542afa5ec5b4deb2cdaf65d2592dcaddf1f6a4b4 Mon Sep 17 00:00:00 2001
From: reedts <j.reedts@gmail.com>
Date: Sat, 4 Mar 2023 17:33:07 +0100
Subject: [PATCH] New package: cargo-flamegraph-0.6.2
---
srcpkgs/cargo-flamegraph/template | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
create mode 100644 srcpkgs/cargo-flamegraph/template
diff --git a/srcpkgs/cargo-flamegraph/template b/srcpkgs/cargo-flamegraph/template
new file mode 100644
index 000000000000..73b1ef6cb52d
--- /dev/null
+++ b/srcpkgs/cargo-flamegraph/template
@@ -0,0 +1,23 @@
+# Template file for 'cargo-flamegraph'
+pkgname=cargo-flamegraph
+version=0.6.2
+revision=1
+build_style=cargo
+build_helper=qemu
+depends="perf"
+short_desc="Easy flamegraphs for Rust projects and everything else"
+maintainer="reedts <j.reedts@gmail.com>"
+license="MIT, Apache-2.0"
+homepage="https://github.com/flamegraph-rs/flamegraph"
+distfiles="https://github.com/flamegraph-rs/flamegraph/archive/refs/tags/v${version}.tar.gz"
+checksum=ec9626f8bc6e52b4c6ebbd5b35ac87f0e17e70ac1fd9eb5f26a8d7dd898f7911
+
+post_install() {
+ vlicense LICENSE-MIT
+
+ local flamegraph="${DESTDIR}/usr/bin/flamegraph"
+ for shell in bash fish zsh; do
+ vtargetrun ${flamegraph} --completions ${shell} > flamegraph.${shell}
+ vcompletion flamegraph.${shell} ${shell} flamegraph
+ done
+}
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PR PATCH] [Merged]: New package: cargo-flamegraph-0.6.2
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
` (4 preceding siblings ...)
2023-03-04 16:33 ` reedts
@ 2023-03-05 6:06 ` classabbyamp
5 siblings, 0 replies; 7+ messages in thread
From: classabbyamp @ 2023-03-05 6:06 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 748 bytes --]
There's a merged pull request on the void-packages repository
New package: cargo-flamegraph-0.6.2
https://github.com/void-linux/void-packages/pull/42585
Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64
- aarch64-musl
- armv7l
- armv7l-musl
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-03-05 6:06 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-04 15:27 [PR PATCH] New package: cargo-flamegraph-0.6.2 reedts
2023-03-04 15:32 ` [PR REVIEW] " tranzystorek-io
2023-03-04 15:35 ` tranzystorek-io
2023-03-04 15:52 ` [PR PATCH] [Updated] " reedts
2023-03-04 16:31 ` reedts
2023-03-04 16:33 ` reedts
2023-03-05 6:06 ` [PR PATCH] [Merged]: " classabbyamp
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).