12

I'd like to be able to see emoji characters properly in mutt, but e.g. 💗 shows up as ^J in mutt's pager. Running

:set pager=view 

and re-opening the message displays the character correctly with vim.

The email in question is PGP encrypted, but I think I'd get the same with unencrypted email (https://groups.google.com/forum/#!topic/comp.mail.mutt/50_MpyYkXR4).

I also found this post (https://stackoverflow.com/questions/23526353/how-to-get-ncurses-to-output-astral-plane-unicode-characters), which explains a possible problem I'm running into, but as I said vim displays the characters fine in the same terminal window. Moreover I am using glibc 2.19, and I don't see how these two applications could be using different glibc versions on the same system.

Is there a way to get mutt's built-in pager to display these correctly?

EDIT: so I forgot to include anything at all relevant other than 'mutt' and 'vim'... I am running Debian stable with the mutt-patched package.

$ 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 ... 

A sample email:

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 💕 💕💗 꾷⚡ 

In mutt I see:

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-} ê¾·âš¡ 

I was expecting the raw email to be base64-encoded (because both accounts are gmail and the message contains non-ASCII characters), but it is the same. It also appears that no characters were harmed in transit.

3
  • Can you give an example of an email with the headers that matter (e.g. Content-Encoding, remove all headers with personal information)? The problem may be related to how the emoji are encoded. Which version of mutt are you using? Commented May 31, 2015 at 19:38
  • Could you provide your muttrc as well? Commented Mar 18, 2016 at 9:05
  • Or even just the output of mutt -Q charset. Commented Mar 18, 2016 at 9:08

1 Answer 1

3

(I don't expect my comments to be answered since the question was posted last May, and the user hasn't been active since, but this might be useful to others.)


Make sure that you have the display charset in your muttr set to "utf-8", as follows:

set charset = "utf-8" 
4
  • thank you for your comments! I don't have mutt working at the moment, but will try your suggestions when I do :) Commented Mar 18, 2016 at 14:38
  • 1
    @allicoder: If you've mutt set up again, please try the above answer and either accept it if it works, or update the question. :) Commented Jun 27, 2016 at 12:06
  • My neomutt does say neomutt -Q charset: charset="utf-8". Yet I still can't see emoticons. Is it a font issue? Commented Nov 20, 2020 at 16:43
  • @Nikos If it was a font issue you should at least see � U+FFFD replacement character. Commented Aug 7, 2024 at 18:34

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.