屏幕中的vim:当I';我正在屏幕会话中 当我在屏幕会话中使用VIM时,我无法看到任何语言(如Python、C++和SH)中的任何语法高亮。但行号是彩色的。 我确信我的终端(也在屏幕中)能够显示256色方案(我使用这里找到的256colors perl脚本进行了测试:)
如何解决这个问题?好的,下面是问题/解决方案: 我曾经使用屏幕中的vim:当I';我正在屏幕会话中 当我在屏幕会话中使用VIM时,我无法看到任何语言(如Python、C++和SH)中的任何语法高亮。但行号是彩色的。 我确信我的终端(也在屏幕中)能够显示256色方案(我使用这里找到的256colors perl脚本进行了测试:),vim,gnu-screen,Vim,Gnu Screen,如何解决这个问题?好的,下面是问题/解决方案: 我曾经使用$vi调用vim,实际上: $ which vi alias vi='vim' /usr/bin/vim 但是: 我刚刚了解到屏幕没有加载这个系统级别名,这很棘手。我遇到了这个问题。在我的例子中,我运行的是brew的screen版本。brew不使用~/.screenrc作为启动文件。所以有两种解决方案 1) 在brew_屏幕期望的屏幕RC中设置术语。这可能是/opt/etc/screenrc。我没有试过这个方法,所以我不确定 2
$vi
调用vim,实际上:
$ which vi
alias vi='vim'
/usr/bin/vim
但是:
我刚刚了解到屏幕没有加载这个系统级别名,这很棘手。我遇到了这个问题。在我的例子中,我运行的是brew的screen版本。brew不使用~/.screenrc作为启动文件。所以有两种解决方案 1) 在brew_屏幕期望的屏幕RC中设置术语。这可能是/opt/etc/screenrc。我没有试过这个方法,所以我不确定 2) 为screen创建一个别名,将术语设置为您想要的名称。在这种情况下,screen-256颜色就足够了。我将以下行添加到我的bash_配置文件中,该配置文件与我的bashrc(mac问题)符号链接:
在终端和屏幕中,
$echo$TERM
的输出是什么?在vim中,:echo$TERM
的输出是什么?可能是重复的否,它不是重复的:1:我尝试了该线程中给出的解决方案,2:我不使用油灰。我确实有两个不同的答案echo$TERM
:在终端中是xterm-256color
,在屏幕中是屏幕bce
。好的,只需确保屏幕上显示的是screen-256color
。对于未来的用户,OP或其他人可以发布解决方案吗?这和我现在遇到的问题是一样的,但现在我需要到网络世界去寻找解决方法;)我在我的.bashrc中添加了别名,但可能有一个更适合屏幕的解决方案。这与为什么vi语法突出显示不起作用无关。即使他们运行的是不同版本的vim,:syntax enable仍然可以工作。问题是VIM不认为当前的术语是颜色兼容的。
$ screen
$ which vi
/bin/vi
alias screen='screen -T screen-256color'