0

我在 Windows 10 上使用带有 GVIM 的病原体时遇到问题。

到目前为止,我已经安装了 GVIM C:/Program Files (x86)/, vim-pathogenC:/Program Files (x86)/Vim/vimfiles/autoload和我的插件C:/Program Files (x86)/Vim/vimfiles/bundle

我已将标准重命名_vimrcvimrc_original,因此它未被检测到(摘录):

source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin

set diffexpr=MyDiff()
function MyDiff()
  (<definition of function ...>)

.vimrc在我的用户目录C:/Users/User( ~\) 中放置了一个自定义,它被 GVIM 检测到(摘录):

set langmenu=en_US
let $LANG = 'en_US'

colorscheme industry

execute pathogen#infect()
filetype plugin indent on

syntax on

"<(non relevant part) ...>

但是,在调用:scriptnames时,我的插件C:/Program Files (x86)/Vim/vimfiles/bundle都没有列出;只有 GVIM 运行时文件夹中的脚本C:/Program Files (x86)/Vim/vimM80/

  1: ~\.vimrc
  2: C:\Program Files (x86)\Vim\vim80\colors\industry.vim
  3: C:\Program Files (x86)\Vim\vimfiles\autoload\pathogen.vim
  4: C:\Program Files (x86)\Vim\vim80\filetype.vim
  5: C:\Program Files (x86)\Vim\vim80\menu.vim
  6: C:\Program Files (x86)\Vim\vim80\autoload\paste.vim
  7: C:\Program Files (x86)\Vim\vim80\ftplugin.vim
  8: C:\Program Files (x86)\Vim\vim80\indent.vim
  9: C:\Program Files (x86)\Vim\vim80\syntax\syntax.vim
  10,11: (other syntax files)
 12: C:\Program Files (x86)\Vim\vim80\plugin\getscriptPlugin.vim
 13-22: (other plugin files)
 23: C:\Program Files (x86)\Vim\vim80\plugin\zipPlugin.vim

为什么我的自定义插件没有C:/Program Files (x86)/Vim/vimfiles/bundle被病原体加载,而只是 GVIM 运行时文件夹中的那些C:/Program Files (x86)/Vim/vimM80/

作为测试,我无法打开 NERDTree,但我的键盘映射有效;.vimrc 被检测到但不是插件。

笔记。

我已经尝试按照本指南中提到的步骤进行操作,但无济于事。唯一的区别是我在 Program Files 中安装了 GVIM,而不是我的主文件夹,这与我的情况无关。

更新

看到结果set runtimepath?

runtimepath=~/vimfiles,~\vimfiles\bundle\ale,~\vimfiles\bundle\ctrlp.vim,~\vimfiles\bundle\jscheck,~\vimfiles\bundle\neosnippet.vim,~\vimfiles\bundle\nerdtree,~\vimfiles\bundle\omnisharp-vim,~\vimfiles\bundle\tlib_vim,~\vimfiles\bundle\tsuquyomi,~\vimfiles\bundle\typescript-vim,~\vimfiles\bundle\vim-addon-mw-utils,~\vimfiles\bundle\vim-airline,~\vimfiles\bundle\vim-dispatch,~\vimfiles\bundle\vim-markdown,~\vimfiles\bundle\vim-snipmate,~\vimfiles\bundle\vimproc.vim,~\vimfiles\bundle\YouCompleteMe,C:\Program Files (x86)\Vim/vimfiles,C:\Program Files (x86)\Vim\vim80,C:\Program Files (x86)\Vim/vimfiles/after,~/vimfiles/after

我猜病原体毕竟在起作用。但我不明白为什么插件无法访问。如果插件在 Vim 中,runtimepath这意味着 Vim 知道在哪里可以找到插件,据我所知。

4

1 回答 1

1

C:\Program Files (x86)\Vim\是禁区。定制应该发生在%USERPROFILE%\vimfiles其他任何地方:

%USERPROFILE%\vimfiles\vimrc                    <-- your vimrc
%USERPROFILE%\vimfiles\autoload\pathogen.vim    <-- the pathogen script
%USERPROFILE%\vimfiles\bundle\                  <-- your plugins

有关一般建议,请参阅此 repo

于 2018-04-22T18:04:09.397 回答