【发布时间】:2022-01-14 14:12:30
【问题描述】:
我的机器上安装了两个终端,一个是 ubuntu 的默认终端,另一个是 alacritty。想检查vim是从哪个终端打开的。因为我可以与航空公司合作,所以如果是这种情况,我不会使用let g:airline_powerline_fonts = 1 并将这个变量设置为零。怎么办?
【问题讨论】:
标签: vim terminal neovim terminal-emulator
我的机器上安装了两个终端,一个是 ubuntu 的默认终端,另一个是 alacritty。想检查vim是从哪个终端打开的。因为我可以与航空公司合作,所以如果是这种情况,我不会使用let g:airline_powerline_fonts = 1 并将这个变量设置为零。怎么办?
【问题讨论】:
标签: vim terminal neovim terminal-emulator
alacritty 终端模拟器通常将$TERM 变量设置为alacritty(而不是xterm 或xterm-256color 或变体。)
因此,假设这是您的配置(您可能会得到不正确的 $TERM 设置,特别是如果您通过 SSH 连接到远程机器,或使用诸如 tmux 或 screen 之类的多路复用器),您可以在你的 vimrc 中使用它来检查你是否在 Alacritty 中运行。
您可以从 shell 中检查:
$ echo $TERM
alacritty
甚至在 Vim 内部,使用 :echo $TERM。
如果确实按预期设置了 $TERM 变量,您可以使用如下所示的 sn-p 根据该设置有条件地设置航空公司变量:
if $TERM ==# 'alacritty'
let g:airline_powerline_fonts = 1
endif
【讨论】: