--- /dev/null
+#!/bin/mksh
+#-
+# Copyright © 2014
+# Thorsten Glaser <t.glaser@tarent.de>
+#
+# Provided that these terms and disclaimer and all copyright notices
+# are retained or reproduced in an accompanying document, permission
+# is granted to deal in this work without restriction, including un‐
+# limited rights to use, publicly perform, distribute, sell, modify,
+# merge, give away, or sublicence.
+#
+# This work is provided “AS IS” and WITHOUT WARRANTY of any kind, to
+# the utmost extent permitted by applicable law, neither express nor
+# implied; without malicious intent or gross negligence. In no event
+# may a licensor, author or contributor be held liable for indirect,
+# direct, other damage, loss, or other issues arising in any way out
+# of dealing in the work, even if advised of the possibility of such
+# damage or existence of a defect, except proven that it results out
+# of said person’s immediate fault when using the work as intended.
+
+nl=$'\n'
+set -o pipefail
+msg=$(cat; print x)
+if [[ $msg = *'> -----BEGIN'* ]]; then
+ msg=${msg//"${nl}> "/"$nl"}
+ repl="sed 's/^/> /'"
+else
+ repl=cat
+fi
+cs=${msg##*-----BEGIN PGP MESSAGE-----}
+cs=${cs%%-----END PGP MESSAGE-----*}
+if [[ $cs != *"${nl}Charset: "*$nl* ]]; then
+ print -nr -- "${msg%x}" | gpg "$@" | eval "$repl"
+ exit $?
+fi
+cs=${cs#*"${nl}Charset:"}
+cs=${cs%%"$nl"*}
+cs=${cs##+([ ])}
+print -nr -- "${msg%x}" | gpg "$@" | iconv -f "$cs" -t utf-8 | eval "$repl"