我正在使用CentOS 6.由于CentOS repos有一个旧版本的vim(7.2),我编译了自己的版本。但是,我有一个奇怪的问题。运行并退出vim后,我发现我的shell提示已经消失。此外,当我输入时,它不会出现在终端中,也不会出现任何输出。有点奇怪的是,它似乎正在输出某些东西,因为光标会在屏幕上向下移动,但我不能看到任何东西。
它必须与编译X版本有关,因为当我在没有X窗口支持的情况下编译vim时它会发生 not (但我也希望有gvim)。以下是我在编译时提供的配置选项:
./configure --prefix=$OPT/Cellar/vim/7.4 --with-features=huge --enable-gui=auto --with-x --enable-xim
我也尝试过没有Xim的编译。我也试过明确设置--enable-gui=gtk2
(这是CentOS repos使用的gvim 7.2)。
我正在使用KDE4。运行tcsh和bash时都会出现问题。我尝试将$TERM
同时设置为xterm
和xterm-256color
。
此外,既不运行reset
也不运行stty sane
会使shell恢复正常行为。
知道运行vim时我的提示会消失的原因吗?因为我错过了配置标志或其他一些编译问题?
答案 0 :(得分:2)
我最终将此追溯到我的~/.vimrc
文件中的错误。我有一些像这样的行:
if has('gui_running')
# Gvim customization
endif
if has('gui_gtk2')
# GTK2-specific Gvim customization
endif
每次加载vim时都会运行第二个块。因为它改变了一些窗口几何形状,它最终弄乱了bash;当我退回到bash时,bash认为它只有大约53列可以使用(可能还有其他一些东西搞砸了)。
解决方案:第二个if
块应位于第一个块内。