vim 中使用 tmux 的表情符号显示问题
Emoji display issue in vim with tmux
问题
表情符号仅在 vim 中显示不正确,仅在 tmux 中,并且仅在 vim 中显示不正确。表情符号在 tmux 之外的 vim 中按预期工作。表情符号在 tmux 内的其他程序中按预期工作。
TMUX 内部:
vim ~/echoemoji.sh
sh ./echoemoji.sh
nano ./echoemoji.sh
外部 TMUX:
vim ./echoemoji.sh
相关配置
vimrc
set encoding=utf-8
set t_Co=256
set termencoding=utf-8
:set term
term=xterm-256color
tmux.conf
set -g default-terminal "xterm-256color"
iterm2
Character Encoding: UTF-8
Report Terminal Type: xterm-256color
Font: Hack
Non-ASCII Font: Inconsolata-dz for Powerline
Use HFS+ Unicode normalization (checked)
zshrc
alias tmux="tmux -u" # Tried with and without
这是一个问题,iterm 的默认 unicode 版本是 8,而 nvim 的默认版本是 9。从 gutter 上的 emoji 字符切换可以解决这个问题。 (iTerm 3.1 将有更多可配置的表情符号版本)
https://www.reddit.com/r/vim/comments/6vkoii/vim_text_rendering_off_by_one_issue/
Select Iterm2->Profiles->Text->Use Unicode versoin 9 widths
问题
表情符号仅在 vim 中显示不正确,仅在 tmux 中,并且仅在 vim 中显示不正确。表情符号在 tmux 之外的 vim 中按预期工作。表情符号在 tmux 内的其他程序中按预期工作。
TMUX 内部:
vim ~/echoemoji.sh
sh ./echoemoji.sh
nano ./echoemoji.sh
外部 TMUX:
vim ./echoemoji.sh
相关配置
vimrc
set encoding=utf-8
set t_Co=256
set termencoding=utf-8
:set term
term=xterm-256color
tmux.conf
set -g default-terminal "xterm-256color"
iterm2
Character Encoding: UTF-8
Report Terminal Type: xterm-256color
Font: Hack
Non-ASCII Font: Inconsolata-dz for Powerline
Use HFS+ Unicode normalization (checked)
zshrc
alias tmux="tmux -u" # Tried with and without
这是一个问题,iterm 的默认 unicode 版本是 8,而 nvim 的默认版本是 9。从 gutter 上的 emoji 字符切换可以解决这个问题。 (iTerm 3.1 将有更多可配置的表情符号版本)
https://www.reddit.com/r/vim/comments/6vkoii/vim_text_rendering_off_by_one_issue/
Select Iterm2->Profiles->Text->Use Unicode versoin 9 widths