我刚刚将 shell 更改为 ZSH。然而,当我尝试在 vim 中编辑 .py 文件时,出现了一个奇怪的错误:
“test.py”[新文件]处理 /usr/local/share/vim/vim73/ftplugin/python.vim 时检测到错误:第 21 行:E492:不是编辑器命令:def)') 第 22 行:E492:不是编辑器命令: def)') 第 23 行: E492: 不是编辑器命令: def)') 第
24 行: E492: 不是编辑器命令: def)') 第 42 行: E10: \ 后面应该跟 /, ?或者 &
但是,如果我注释掉
文件类型缩进插件
在我的 .vimrc 中,该消息消失了,不幸的是我的智能缩进也消失了。有谁知道为什么 vim 会受到 shell 变化的影响?或者有解决方法吗?
答案1
Vim 不会受到 shell 更改的影响。如果您将登录 shell 更改为 zsh,则您的~/.profile
和/etc/profile
不会再被读取; vim 可能依赖于这些文件之一中定义的环境变量,或者您的系统上有两个版本的 Vim,而您的系统PATH
现在不同,因此您正在运行不同版本的 Vim。
您可以~/.zprofile
执行~/.profile
. zsh的语法与sh不完全兼容,所以需要将zsh置于兼容模式。
read_profiles () {
emulate -LR sh
if [ -r /etc/profile ]; then . /etc/profile; fi
if [ -r ~/.profile ]; then . ~/.profile; fi
}
read_profiles
答案2
我不认为它的 zsh 放了你的插件。看起来你从第 21 行开始丢失了一些东西。尝试再次拉下 python.vim ,看看是否可以解决你的问题。