Vim 插件不适用于病原体
Vim plugins not working with pathogen
我有一台 windows 7 的计算机,我最近在其中安装了 Git(Vim 在 Git 目录中)。我尝试安装病原体,显然它安装正确,因为在自动加载中没有关于病原体的错误消息。我的 _vimrc 位于 Users/Username 这是 $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
但是 returns "Sorry, no help for NERD_tree.txt"
有没有人知道是什么导致了这个问题并有解决方案?
第一
您的所有配置都应该在 $HOME/.vim/
(插件、配色方案等)和 $HOME/.vimrc
(选项、映射等)中进行。另请注意,自 Vim 7.4 起,可以将您的 vimrc
直接放在 $HOME/.vim/
中,这使得管理您的配置更加容易。
您在 /usr/share/vim/
中所做的一切都应尽快恢复。
第二
但是您的问题是由行尾引起的:克隆过程将作者使用的行尾 — lf
— 更改为 Windows 上的标准行尾 — crlf
。因为 Vim 只接受 lf
它无法获取您的插件。
原因很可能是您 Git 设置中 core.autocrlf
的值。
下面的命令应该防止 Git 在 checkout
/clone
/pull
/等时将 lf
转换为 crlf
:
git config --global core.autocrlf false
我有一台 windows 7 的计算机,我最近在其中安装了 Git(Vim 在 Git 目录中)。我尝试安装病原体,显然它安装正确,因为在自动加载中没有关于病原体的错误消息。我的 _vimrc 位于 Users/Username 这是 $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
但是 returns "Sorry, no help for NERD_tree.txt"
有没有人知道是什么导致了这个问题并有解决方案?
第一
您的所有配置都应该在 $HOME/.vim/
(插件、配色方案等)和 $HOME/.vimrc
(选项、映射等)中进行。另请注意,自 Vim 7.4 起,可以将您的 vimrc
直接放在 $HOME/.vim/
中,这使得管理您的配置更加容易。
您在 /usr/share/vim/
中所做的一切都应尽快恢复。
第二
但是您的问题是由行尾引起的:克隆过程将作者使用的行尾 — lf
— 更改为 Windows 上的标准行尾 — crlf
。因为 Vim 只接受 lf
它无法获取您的插件。
原因很可能是您 Git 设置中 core.autocrlf
的值。
下面的命令应该防止 Git 在 checkout
/clone
/pull
/等时将 lf
转换为 crlf
:
git config --global core.autocrlf false