Vim插件无法使用病原体

时间:2015-09-02 19:43:26

标签: windows git vim nerdtree pathogen

我有一台装有Windows 7的计算机,我最近安装了Git(将Gim放在Git目录中)。我尝试了安装的病原体,显然它已正确安装,因为自动加载中没有病原体的错误消息。我的_vimrc位于Users / 用户名,即$ HOME,以下内容与病原体有关。

execute pathogen#infect() //_vimrc starts with this line
call pathogen#helptags()
syntax on
filetype plugin indent on

自动加载和捆绑的路径是: C:/ progra~1 / git / usr / share / vim / vim74 / autoload(和vim74 / bundle)

当我将一个插件克隆(例如NerdTree)捆绑时,当我打开Vim时会出现以下消息。

Error detected while processing /usr/share/vim/vim74/bundle/nerdtree/plugin/NERD_tree.vim:
line   16:
E15: Invalid expression: exists("loaded_nerd_tree")^M
line  211:
E171: Missing :endif

我也在vim中开始会话并使用

:help NERD_tree.txt 

但它会返回"对不起,没有帮助NERD_tree.txt"

有人知道导致问题的原因并有解决方案吗?

1 个答案:

答案 0 :(得分:2)

<强>第一

所有配置都应该在$HOME/.vim/(插件,colorschemes等)和$HOME/.vimrc(选项,映射等)中进行。另请注意,自Vim 7.4起,您可以将vimrc直接放在$HOME/.vim/内,这样可以更轻松地管理您的配置。

无论你在/usr/share/vim/做了什么,都应该尽快恢复。

<强>第二

但是您的问题是由行结尾引起的:克隆过程将作者使用的内容 - lf - 更改为Windows上的标准版 - crlf。由于Vim只接受lf,因此无法获取您的插件。

原因很可能是Git设置中core.autocrlf的值。

以下命令应阻止Git在lf / crlf / checkout /等时将clone转换为pull

 git config --global core.autocrlf false