最近,我使用以下脚本使用 base16 配色方案配置了我的 shell : https://github.com/chriskempson/base16-shell/blob/master/scripts/base16-default-dark.sh 。和 Neovim 的配色方案使用: https://github.com/chriskempson/base16-vim

然后我在“.vimrc”或更准确的 .config/init/init.vim 中设置了以下内容:

call plug#begin('~/.local/share/nvim/plugged')
Plug 'chriskempson/base16-vim'
...
set background=dark
let base16colorspace=256
colorscheme base16-default-dark

一切正常,摘录我无法更改 LineNumber 列颜色,但这是另一个故事:

shell - Base16 和 Neovim。如何在 linux VT 和 X 终端中使用一致的颜色?-LMLPHP

我意识到当我切换到 VT (tty) 时,Neovim 中的颜色真的很困惑。我看到 VT 或 ($TERM=linux) 仅支持 8/16 色,而当我在 $TERM=screen/tmux/st(-256color) 下时,情况并非如此。因此 base16-shell 方案根据 $TERM 应用不同的颜色。所以问题是如何强制 Neovim(或配色方案本身)意识到如何在 VT 和 X 终端下应用颜色?

最佳答案

我遇到了完全相同的问题。 iTerm2 + 鱼 + nvim + tmux + fzf。使用 base16-shell 和 base16-vim 一切正常,但在 tmux 下的 nvim 中颜色困惑。我花了两天时间才弄明白。以下两个 tmux 设置为我修复了它。

set -g  default-terminal "screen-256color"
# needed for proper nvim/tmux/base16 colors
set -ga terminal-overrides ",xterm-256color:Tc"

你可能想看看我的 dotfiles

关于shell - Base16 和 Neovim。如何在 linux VT 和 X 终端中使用一致的颜色?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51711814/

10-12 22:57