gvim路径管理器问题

4

我从Github下载了pathogen.vim并将其放置在~/.vim下的"autoload"目录中。但是现在当我启动gvim并执行:helptags时,它会显示"需要参数"。我的~/.vimrc文件内容如下:

call pathogen#runtime_append_all_bundles()
call pathogen#helptags()

我错过了什么吗?

谢谢。

Andy

附注:我正在这样做是为了安装Nerdtree插件

--- 编辑1 ---

根据我目前的所见,来自github的pathogen.vim插件对我没有用,所以我不得不从vim.org下载它,然后它就可以工作了。 但是现在当我执行“解压nerd_tree -d ~/.vim/bundle”然后启动gvim时,我仍然找不到nerdtree。

----- 结束 ---------

3个回答

10
根据 GitHub 网站上的病原体 README,您应该使用 :Helptags 命令而不是 :helptags。执行 :Helptags 命令后,pathogen 应该在目录 ~/.vim/bundle 下生成所有文档。

5

helptags是一个vim命令,与pathogen无关。在vim中,helptags命令以一个目录作为参数,处理.txt文件并生成标签文件。

如果想要检查pathogen是否正确加载,您可以尝试执行:call pathogen#helptags()。如果手动运行此命令不会失败,则表明已加载pathogen(如果您启动vim时没有出现错误,因为您的.vimrc已经运行了这些命令,则实际上这是不必要的)。

您需要完成的下一步是阅读提供的文档(点击此处跳转),了解如何将插件安装为捆绑包。简而言之:

  • 创建名为~/.vim/bundle的目录。
  • 将来自上游源的文件解压缩/克隆/复制到~/.vim/bundle/plugin-name/。这可能包括许多文件和目录(如ftplugin、autoload、doc等)。
  • 启动vim并测试由插件提供的功能是否可用。如果不可用,请检查是否已正确完成上述步骤。

如果您在使用pathogen时遇到问题,请记住,安装捆绑包并不比正常安装插件有什么区别。优点是您可以将与特定插件相关的所有文件和文件夹保存在其自己的目录中。这使您可以单独管理每个插件,并确信您只会接触与该插件相关的文件。


@Randy Morris:感谢您的回复。您提供的链接似乎暗示我只需要在我的.vimrc文件中添加$:call pathogen#helptags()即可。我这样做了,但现在当我启动gvim时,会出现一堆错误(“处理〜/ autoload / pathogen.vim时检测到错误.....”)。抱歉,我是Vim的新手。 - Andy
1
@Andy 具体的错误信息会更好。你可以通过运行 :messages 命令来获取它们。 - Randy Morris
@Randy Morris:实际上我把 pathogen.vim 的 github 版本和 vim.org 版本搞混了。当我使用 vim.org 版本时,pathogen 被正确安装了,通过 :call pathogen#helptags() 验证了这一点(它没有任何输出)。但是现在当我下载 nerdtree 并将其放置在 ~/.vim/bundle/ 下时,它无法加载!! - Andy
你究竟要放什么在 ~/.vim/bundle/ 目录下? - Randy Morris
我解压了nerdtree目录并将其移动到/.vim/bundle。现在我有/.vim/bundle/NERD_tree/doc、/.vim/bundle/NERD_tree/plugin和/.vim/bundle/NERD_tree/nerdtree_plugin。 - Andy
显示剩余4条评论

1

我使用pathogen,我觉得它很棒,但你完全不需要pathogen来使用NERDTree。

只需按照以下方式放置文件,然后发出:helptags ~/.vim/doc命令即可:

~/.vim/doc/NERD_tree.txt
~/.vim/nerdtree_plugin/exec_menuitem.vim
~/.vim/nerdtree_plugin/fs_menu.vim
~/.vim/plugin/NERD_tree.vim

我的 pathogen 设置非常标准:

~/.vim/bundle/NERD_tree/doc/NERD_tree.txt
~/.vim/bundle/NERD_tree/nerdtree_plugin/exec_menuitem.vim
~/.vim/bundle/NERD_tree/nerdtree_plugin/fs_menu.vim
~/.vim/bundle/NERD_tree/nerdtree_plugin/insert_image.vim <-- a custom script not included with the distribution
~/.vim/bundle/NERD_tree/plugin/NERD_tree.vim

并且运行得非常好。

如果有帮助的话,这是我~/.vimrc的前几行:

" This must be first, because it changes other options as side effect
set nocompatible

" Use pathogen to easily modify the runtime path to include all plugins under
" the ~/.vim/bundle directory
filetype off                    " force reloading *after* pathogen loaded
call pathogen#helptags()
call pathogen#runtime_append_all_bundles()
filetype plugin indent on       " enable detection, plugins and indenting in one step

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接