50

病原体对我不起作用。我正在关注 Adam Lowe 在此处发布的提示(以及更多提示),但没有成功...

我的 vimrc:

filetype off
call pathogen#runtime_append_all_bundles()

filetype plugin indent on
set nocompatible
syntax on
set tabstop=2
set smarttab
set shiftwidth=2
set autoindent
set expandtab
set number
colorscheme darkblue

.vim 的内容 - ls .vim/*

.vim/autoload:
pathogen.vim

.vim/bundle:
nerdcommenter/  vim-haml/   vim-surround/
vim-endwise/    vim-rails/  vim-vividchalk/

bundle 中的所有插件都是通过将它们从 GitHub 克隆到 bundle 目录来安装的。

我已经尝试过病原体 1.1 和 1.2,甚至是来自 GitHub 的最新版本,但没有任何结果。Vividchalk、Vim-rails 和 nerdcommenter 不工作。我对其他插头的经验很少,所以我不确定它们,但我想它们也不起作用。

我使用的是 ArchLinux,vim 7.2.385-1(不是最新的,因为最新的需要我安装 ruby​​1.9,但它仍然是 7.2)。它已通过 pacman - ArchLinux 包管理器安装。除了使用病原体之外,没有安装任何 vim 插件(我什至用 clean 重新安装了 vim 包/usr/share/vim)。

我究竟做错了什么?

编辑:

4

19 回答 19

31

filetype on在设置病原体之前,这似乎是由某些发行版设置中的“系统”vimrc 引起的常见问题。因此,将其关闭并重新打开会强制插件正确加载:

 call pathogen#runtime_append_all_bundles()
 filetype off
 syntax on
 filetype plugin indent on

更多信息在这里

于 2011-06-15T23:37:39.423 回答
24

我遇到了类似的问题。Pathogen 正在加载我的一些插件,而不是全部。经过一番摆弄和想知道我发现(我不知道它是否在文档中提到)在每个bundle/'plugin_name'文件夹中,应该有另一个名为plugin包含 *.vim 文件的文件夹。

然后,当 vim 启动时,将不是在 bundle 中,而是在 bundle 中包含名为 plugin... 的文件夹中的那些文件夹中查看,并将创建其他文件夹(在每个插件文件夹中)。

所以,如果插件只是一个 .vim 文件,请为它创建一个文件夹......

代替:

~/.vim/bundle/vimexplorer/vimExplorer.vim

你需要:

~/.vim/bundle/vimexplorer/plugin/vimExplorer.vim

一切都像一个魅力。

于 2012-02-07T14:31:52.673 回答
14

我在加载特定插件时遇到问题:特别是带有plugin子目录的插件。例如,在全新的 MacVim 安装中,插件~/.vim/bundle/surround/plugin/surround.vim没有被加载,即使~/.vim/bundle/surround出现在:scriptnames.

问题是我正在加载 Pathogen .gvimrc,而不是.vimrc. 无论出于何种原因,.vim/bundle/*/plugin如果您这样做,子目录中的内容将不会加载,所以在.vimrc!

我在 github 上打开了一个问题——我不知道它是否可以工作,即使它从 加载.gvimrc,但对于像我这样的白痴,文档中至少应该有某种警告。

于 2011-03-11T18:50:31.247 回答
11

如果您的 .vim 基于 git repo 和子模块,请记住在克隆 repo 后git submodule init运行。git submodule updateIE

git submodule init
git submodule update

我遇到了同样的错误并尝试了以上所有方法,但没有成功。直到我初始化并更新了 git 子模块。

希望这对任何有类似错误的人有所帮助。

于 2012-05-28T11:48:53.270 回答
6

也许 Arch 的默认 vimrc(可能/etc/vim/vimrc)不能很好地与 Pathogen 配合使用。尝试在不加载配置文件的情况下启动 Vim:

vim -u NONE

然后从vim中加载你的vimrc:

:so ~/.vimrc

那么插件可以工作吗?

于 2010-08-16T19:07:50.170 回答
6

通过 github 提出问题后由 (mattn & tpope) 修复

set nocp
call pathogen#infect()
syntax on
filetype plugin indent on
call pathogen#infect()

https://github.com/tpope/vim-pathogen/issues/50#issuecomment-3137909

于 2011-12-14T10:59:53.953 回答
3

我的环境是 Vim 7.3.35 和 Ubuntu 11.04。

我花了一些时间试图解决它。我克隆项目https://github.com:r00k/dotfiles并按照说明进行安装。

当开始vi a 得到如此评论

E117:未知功能:病原体#runtime_append_all_bundles

和解决方案:

文件类型关闭

调用病原体#runtime_append_all_bundles()

文件类型打开

不工作。

我在我的主目录中找到了没有正确设置的.vim符号链接。安装脚本创建了一个.vim目录,其中有一个符号链接vim指向我的.dotfiles/vim。解决方案是删除.vim目录并创建一个符号链接.vim指向.dotfiles/vim

A 在我的.vimrc中也保持了文件类型的关闭/打开。

于 2011-06-05T17:00:12.283 回答
2

而不是call pathogen#runtime_append_all_bundles(),我使用call pathogen#infect('~/.vim/bundle')并且它对我有用。

于 2011-10-11T23:40:01.143 回答
2
filetype off                                                                
call pathogen#runtime_append_all_bundles()
call pathogen#helptags()
于 2010-08-02T19:03:01.187 回答
2

尝试使用命令检查您的运行时路径: :set runtimepath? 第一个条目应该类似于 ~/.vim。

我没有加载插件/病原体的问题是我将我的 vim 环境放在 ~/.dotfiles/vim 中,我的 vimrc 和其余的东西(插件等)所在的位置。在 ~/.vimrc 中创建到 ~/.dotfiles/vim/vimrc 的符号链接后,我忘记创建第二个符号链接 ~/.vim -> ~/.dotfiles/vim/ 这导致 vim 感到困惑,因为他正在寻找东西 ~ /.vim(默认)。在我做出正确的符号链接后,一切都出现在正确的位置。

我希望它能帮助像我一样忘记第二个符号链接的人;-)

于 2011-05-25T07:44:19.303 回答
1

我在 Ubuntu 上遇到了同样的问题。日志是:

linha 4: executando "/usr/share/vim/vim73/ftoff.vim"
Erro detectado ao processar /usr/share/vim/vim73/ftoff.vim:
linha   11:
E216: Grupo ou evento inexistente: filetypedetect *
fim da execução de /usr/share/vim/vim73/ftoff.vim

解决方案是在文件 /usr/share/vim/vim73/ftoff.vim 的末尾添加“\n”以正确执行它。

于 2012-11-19T16:40:53.527 回答
1
set nocp
call pathogen#infect()
syntax on
filetype plugin indent on
call pathogen#infect()

以上帮助我解决了这个问题,不能对其他人发表评论,但感谢您发布上面的代码。

于 2016-02-23T11:07:27.863 回答
0

我有它在我的:

沉默的!调用病原体#runtime_append_all_bundles()

于 2010-08-01T20:10:06.623 回答
0

在花了很长时间试图用 nerd-commenter/pathogen 解决这个问题之后,我崩溃了,只使用了 Debian 的操作系统提供的 nerd-commenter 插件:

vim-addons install nerd-commenter

如果您在使用 Debian 并且需要重新开始工作,请尝试一下。如果您还没有安装“vim-addon-manager”和“vim-scripts”软件包,则可能需要从 apt 安装。

于 2011-12-11T00:03:17.090 回答
0

我有同样的问题,通过将此文件复制到 ~/.vim/autoload 解决: https ://github.com/sontek/dotfiles/blob/master/_vim/autoload/pathogen.vim

于 2013-11-12T17:07:13.543 回答
0

我遇到了同样的问题,最后经过大量的谷歌和调整 vimrc 文件,找到了解决方案。希望下面的代码片段能解决这个问题。

set nocp source /home/ameet/.vim/autoload/pathogen.vim "location of my pathogen.vim call pathogen#infect() call pathogen#helptags()

于 2014-05-13T15:46:01.397 回答
0

在我的情况下,我克隆到一个文件夹 ~/dotfiles 但 vun 寻找一个文件夹 ~/.vim,结果他没有携带插件或配色方案来解决我这样做的问题:

ln -s ~/.dotfiles ~/.vim
于 2013-07-18T18:49:57.850 回答
0

我有同样的问题。我尝试了所有可能的组合。

最后我发现如果我mksession用来保存我的 Vim 工作区并在 Vim 启动时加载它,它会使病原体无法加载我放入 bundle 文件夹的新插件。

安装新插件后,我现在总是删除我的会话文件并重新启动 Vim,每个插件都可以正常加载。

filetype off
set nocompatible
set laststatus=2
execute pathogen#infect()
syntax on
filetype plugin indent on
于 2013-07-18T08:09:56.093 回答
0

为了完成,我将为这个问题添加我的解决方案。

我刚刚将我的 ~/.gvimrc 文件重命名为 ~/.vimrc,我的所有问题都解决了。我从 linux 复制了我的 .vim 和 .gvimrc 并做了这个改变,一切都按预期工作。

于 2012-09-23T21:10:36.713 回答