Emoji wird bei Verwendung von vim oder tmux nicht richtig angezeigt

Emoji wird bei Verwendung von vim oder tmux nicht richtig angezeigt

ich renneTilixunter Arch Linux. Ich habe Probleme mit der Emoji-Anzeige, wenn ich vim oder tmux ausführe, obwohl die Dinge im selben Terminal ohne vim oder tmux ordnungsgemäß funktionieren.

Zu Demonstrationszwecken habe ich ein Shell-Skript namens, smiledas so aussieht:

#!/bin/sh

echo '

Antwort1

Sie benötigen korrektes Unicode im gesamten Stack, von OS-Locale über Terminal und Tmux bis hin zu Vim. Jeder Teil der Kette muss Unicode korrekt unterstützen.

Für Ihr Betriebssystem-Gebietsschema

Sie benötigen so etwas wie: set LANG="en_US.UTF-8"

Für Tmux

Versuchen Sie, tmux mit zu starten tmux -u, wie Jon vorgeschlagen hat. Wenn das nicht funktioniert, müssen Sie möglicherweise Ihre Konfigurationsdateien überprüfen .tmux.confoder auf die Standardeinstellungen zurücksetzen.

FÜR VIM

Sie müssen vim mit Multibyte-Unterstützung kompilieren.

Der einfachste Weg, dies zu tun, ist

./configure --with-features=big
make

Dadurch wird Vim mit der richtigen Unterstützung erstellt.

Sie können die korrekte Kompilierung überprüfen mit

:version

in vim oder durch Ausführen

vim --version

und suche nach +multi_byte. Wenn dort steht, dass -multi_bytees nicht funktioniert.

Antwort2

Versuchen Sie, tmux mit dem Flag -u zu starten, um die Unicode-Kodierung zu aktivieren

verwandte Informationen