mutt: como exibir caracteres emoji corretamente?

11

Eu gostaria de poder ver os caracteres emoji corretamente no mutt, mas, por exemplo, 💗 aparece como ^ J no pager do mutt. Corrida

:set pager=view

e reabrir a mensagem exibe o caractere corretamente com o vim.

O email em questão é criptografado por PGP, mas acho que seria o mesmo com emails não criptografados ( https://groups.google.com/forum/#!topic/comp.mail.mutt/50_MpyYkXR4 ).

Também encontrei esta postagem ( /programming/23526353/how-to-get-ncurses-to-output-astral-plane-unicode-characters ), que explica um possível problema que eu estou enfrentando, mas como eu disse, o vim exibe os caracteres na mesma janela do terminal. Além disso, estou usando o glibc 2.19 e não vejo como esses dois aplicativos podem estar usando versões diferentes do glibc no mesmo sistema.

Existe uma maneira de obter pager interno do mutt para exibi-los corretamente?

EDIT: então eu esqueci de incluir qualquer coisa relevante além de 'mutt' e 'vim' ... Estou executando o Debian stable com o pacote mutt-patched.

$ uname -r
3.16.0-4-amd64


$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.0 (jessie)
Release:    8.0
Codename:   jessie


$ mutt -v
Mutt 1.5.23 (2014-03-12)
Copyright (C) 1996-2009 Michael R. Elkins and others.
Mutt comes with ABSOLUTELY NO WARRANTY; for details type `mutt -vv'.
Mutt is free software, and you are welcome to redistribute it
under certain conditions; type `mutt -vv' for details.

System: Linux 3.16.0-4-amd64 (x86_64)
ncurses: ncurses 5.9.20140913 (compiled with 5.9)
libidn: 1.29 (compiled with 1.29)
hcache backend: tokyocabinet 1.4.48

Compiler:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.9.2-4' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --with-arch-32=i586 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.9.2 (Debian 4.9.2-4) 

Configure options: '--prefix=/usr' '--sysconfdir=/etc' '--mandir=/usr/share/man' '--with-docdir=/usr/share/doc' '--with-mailpath=/var/mail' '--disable-dependency-tracking' '--enable-compressed' '--enable-debug' '--enable-fcntl' '--enable-hcache' '--enable-gpgme' '--enable-imap' '--enable-smtp' '--enable-pop' '--with-curses' '--with-gnutls' '--with-gss' '--with-idn' '--with-mixmaster' '--with-sasl' '--without-gdbm' '--without-bdb' '--without-qdbm' '--build' 'x86_64-linux-gnu' '--enable-nntp' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'LDFLAGS=-Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2 -I/usr/include/qdbm'

Compilation CFLAGS: -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wall

Compile options:
-DOMAIN
+DEBUG
-HOMESPOOL  +USE_SETGID  +USE_DOTLOCK  +DL_STANDALONE  +USE_FCNTL  -USE_FLOCK   
+USE_POP  +USE_NNTP  +USE_IMAP  +USE_SMTP  
-USE_SSL_OPENSSL  +USE_SSL_GNUTLS  +USE_SASL  +USE_GSS  +HAVE_GETADDRINFO  
+HAVE_REGCOMP  -USE_GNU_REGEX  
+HAVE_COLOR  +HAVE_START_COLOR  +HAVE_TYPEAHEAD  +HAVE_BKGDSET  
+HAVE_CURS_SET  +HAVE_META  +HAVE_RESIZETERM  
+CRYPT_BACKEND_CLASSIC_PGP  +CRYPT_BACKEND_CLASSIC_SMIME  +CRYPT_BACKEND_GPGME  
-EXACT_ADDRESS  -SUN_ATTACHMENT  
+ENABLE_NLS  -LOCALES_HACK  +COMPRESSED  +HAVE_WC_FUNCS  +HAVE_LANGINFO_CODESET  +HAVE_LANGINFO_YESEXPR  
+HAVE_ICONV  -ICONV_NONTRANS  +HAVE_LIBIDN  +HAVE_GETSID  +USE_HCACHE  
-ISPELL
SENDMAIL="/usr/sbin/sendmail"
MAILPATH="/var/mail"
PKGDATADIR="/usr/share/mutt"
SYSCONFDIR="/etc"
EXECSHELL="/bin/sh"
MIXMASTER="mixmaster"
To contact the developers, please mail to <[email protected]>.
To report a bug, please visit http://bugs.mutt.org/.

misc/am-maintainer-mode.patch
features/ifdef.patch
features/xtitles.patch
features/trash-folder.patch
features/purge-message.patch
features/imap_fast_trash.patch
features/sensible_browser_position.patch
features-old/patch-1.5.4.vk.pgp_verbose_mime.patch
features/compressed-folders.patch
features/compressed-folders.debian.patch
debian-specific/Muttrc.patch
debian-specific/Md.etc_mailname_gethostbyname.patch
debian-specific/use_usr_bin_editor.patch
debian-specific/correct_docdir_in_man_page.patch
debian-specific/dont_document_not_present_features.patch
debian-specific/document_debian_defaults.patch
debian-specific/assumed_charset-compat.patch
debian-specific/467432-write_bcc.patch
debian-specific/566076-build_doc_adjustments.patch
misc/define-pgp_getkeys_command.patch
misc/gpg.rc-paths.patch
misc/smime.rc.patch
misc/fix-configure-test-operator.patch
upstream/531430-imapuser.patch
upstream/543467-thread-segfault.patch
upstream/542817-smimekeys-tmpdir.patch
upstream/548577-gpgme-1.2.patch
upstream/553321-ansi-escape-segfault.patch
upstream/547980-smime_keys-chaining.patch
upstream/528233-readonly-open.patch
upstream/228671-pipe-mime.patch
upstream/383769-score-match.patch
upstream/603288-split-fetches.patch
upstream/611410-no-implicit_autoview-for-text-html.patch
upstream/path_max.patch
translations/update_german_translation.patch
upstream/771125-CVE-2014-9116-jessie.patch
__separator__mutt.org.patch
mutt-patched/sidebar.patch
mutt-patched/sidebar-dotpathsep.patch
mutt-patched/sidebar-utf8.patch
mutt-patched/multiple-fcc.patch
mutt-patched/sidebar-newonly.patch
mutt-patched/sidebar-delimnullwide.patch
mutt-patched/sidebar-compose.patch
mutt-patched/nntp.patch

$ aptitude show libc6
Package: libc6                           
State: installed
Automatically installed: no
Multi-Arch: same
Version: 2.19-18
...

Um email de amostra:

Date: Tue, 2 Jun 2015 17:12:41 +0100
From: <email 0>
To: <email 1>
Subject: hello
Message-ID: <20150602161241.GA3079@hostname>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
User-Agent: Mutt/1.5.23 (2014-03-12)
X-TUID: KCe+SAkIDEzH

hello

💕 💕💗

ê¾·âš¡

Na vira-lata eu vejo:

Date: Tue, 2 Jun 2015 17:12:41 +0100
From: <email 0>
To: <email 1>
Subject: hello
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
User-Agent: Mutt/1.5.23 (2014-03-12)
X-TUID: KCe+SAkIDEzH

hello

 M-}

ê¾·âš¡

Eu esperava que o email bruto fosse codificado em base64 (porque as duas contas são do Gmail e a mensagem contém caracteres não ASCII), mas é o mesmo. Parece também que nenhum personagem foi prejudicado em trânsito.

allicoder
fonte
Você pode dar um exemplo de email com os cabeçalhos importantes (por exemplo Content-Encoding, remover todos os cabeçalhos com informações pessoais)? O problema pode estar relacionado à forma como os emojis são codificados. Qual versão do mutt você está usando?
Gilles 'SO- stop be evil'
Você poderia fornecer seu muttrc também?
Kyrias 18/03/16
Ou mesmo apenas a saída de mutt -Q charset.
kyrias 18/03/16

Respostas:

2

(Não espero que meus comentários sejam respondidos desde que a pergunta foi postada em maio passado e o usuário não está ativo desde então, mas isso pode ser útil para outras pessoas.)


Certifique-se de ter o conjunto de caracteres de exibição em seu muttr definido como "utf-8", da seguinte maneira:

set charset = "utf-8"
kyrias
fonte
Obrigado por seus comentários! Eu não tenho vira-lata trabalhando no momento, mas vai tentar suas sugestões quando eu faço :)
allicoder
@allicoder: Se você tiver reativado a configuração, tente a resposta acima e aceite-a, se funcionar, ou atualize a pergunta. :)
kyrias