我正在尝试使用 Pathogen 来管理我的 Vim 扩展。我的包文件夹如下所示:
.../捆/ ── vim-病原体 │ └── 自动加载 │ └── 病原体.vim └── vim-smoothscroll └── 自动加载 └── smooth_scroll.vim
我的 vimrc 文件包含以下内容:
让 s:root = fnamemodify(resolve(expand(":p")), ":h") “引发病原体。 执行“源”。s:root。“/vimfiles/bundle/vim-pathogen/autoload/pathogen.vim” 执行病原体#infect()
我的 vimrc 文件是位于的符号链接~但指向我的 Dropbox 文件夹内的文件夹。
当我启动 Vim 时,这似乎有效。Pathogen 已添加vim-smoothscroll
到我的运行时路径中:
:设置运行时路径? 运行时路径 = 〜/ Dropbox / Personal / config_sync / vim / vimfiles,〜/ Dropbox / Personal / config_sync / vim / vimfiles / bundle / vim-p athogen,~/Dropbox/Personal/config_sync/vim/vimfiles/bundle/vim-smoothscroll,~/.vim,~/vim/share/vim/vimfiles,~/vim/ 共享/vim/vim74,~/vim/共享/vim/vimfiles/after,~/.vim/after
问题是脚本smooth_scroll.vim
尚未加载:
1:~/.vimrc 2:〜/ Dropbox / Personal / config_sync / vim / vimfiles / bundle / vim-pathogen / autoload / pathogen.vim 3:〜/ vim / share / vim / vim74 / syntax / syntax.vim 4:〜/ vim / share / vim / vim74 / syntax / synload.vim 5:~/vim/share/vim/vim74/syntax/syncolor.vim 6:〜/ vim / share / vim / vim74 / filetype.vim 7:〜/ vim / share / vim / vim74 /菜单.vim 8:〜/ vim / share / vim / vim74 / autoload / paste.vim 9:〜/ Dropbox / Personal / config_sync / vim / vimfiles / colors / codeschool.vim 10:〜/ Dropbox / Personal / config_sync / vim / _vimrc_gui 11:〜/ Dropbox / Personal / config_sync / vim / _vimrc_keybinds 12:~/vim/share/vim/vim74/plugin/getscriptPlugin.vim 13:~/vim/share/vim/vim74/plugin/gzip.vim 14:〜/ vim / share / vim / vim74 / plugin / matchparen.vim 15:~/vim/share/vim/vim74/plugin/netrwPlugin.vim 16:~/vim/share/vim/vim74/plugin/rrhelper.vim 17:~/vim/share/vim/vim74/plugin/spellfile.vim 18:~/vim/share/vim/vim74/plugin/tarPlugin.vim 19:~/vim/share/vim/vim74/plugin/tohtml.vim 20:~/vim/share/vim/vim74/plugin/vimballPlugin.vim 21:~/vim/share/vim/vim74/plugin/zipPlugin.vim 22:~/vim/share/vim/vim74/syntax/ruby.vim 23:~/vim/share/vim/vim74/syntax/vim.vim 24:~/vim/share/vim/vim74/syntax/python.vim
这是为什么?手动加载脚本可以正常工作。
答案1
你正在做疯狂的您的设置是否发生了变化。您是否发现默认方式太简单和太固定了?
Vim 的运行时文件(位于 下的所有内容
/share/vim/vim74
)应位于 中/usr/share/vim/vim74
。您是否$HOME
因为权限问题而安装了 Vim?所有个人内容(配色方案、插件、语法脚本……)都必须放入
~/.vim
。该目录可以是 Dropbox 中该目录的符号链接vimfiles
,这样就无需进行任何 hack 操作。假设您使用的是 Linux,只需执行以下操作:ln -s /home/username/Dropbox/Personal/config_sync/vim/vimfiles /home/username/.vim
pathogen.vim
是不是应该是source
这样的。它位于autoload
目录中,正是因为autoload
机制防止source
为了节省启动时间,必须这样做。此外,
pathogen.vim
应该在~/.vim/autoload/
。使用“正常”设置,或者使其在 Vim 中看起来“正常”的符号链接,就无需经历所有这些麻烦。
smooth_scroll.vim
不应该在autoload
目录中,它位于plugin
目录中,你为什么要改变它?这就是插件不起作用的原因。你知道吗 7.4 现在同时寻找
~/.vimrc
和对于~/.vim/vimrc
?通过将所有内容保存在一个目录中,可以更轻松地管理您的配置。
步骤1:vimfiles
将Dropbox 中的目录结构更改为如下所示:
/home/username/Dropbox/Personal/config_sync/vim/vimfiles/
+-autoload/
| +-pathogen.vim
+-bundle/
+-vim-smoothscroll/
+-plugin/
+-smooth_scroll.vim
第2步:将您的移动到Dropbox 中的目录vimrc
内。vimfiles
步骤3:删除该文件中所有无用的与路径相关的内容。与病原体相关的部分应如下所示:
execute pathogen#infect()
execute pathogen#helptags()
步骤4:删除你的~/.vimrc
:
$ cd
$ unlink .vimrc
第 5 步:创建到您的 dropbox-synced 目录的符号链接:
$ ln -s /home/username/Dropbox/Personal/config_sync/vim/vimfiles /home/username/.vim