1

我的.vimrc.

" keeping pathogen only for its 'syntax on' bug workaround
Bundle "tpope/vim-pathogen"
execute pathogen#infect()

我现在一定已经删除并重新添加了这 3 行大约十几次。我使用的是最新版本的 Vim,但由于某些原因,某些语法突出显示无法正常工作。

在 MacOS 上,Go语法高亮不工作,而在 Arch Linux 上。但在 Arch 上,coffeescript没有突出显示。出于某种原因,执行pathogen#infect()解决了两个平台上的所有问题。

这对我来说有点像黑魔法,所以我想知道为什么会这样。有没有更好的方法来解决这个问题?

答: 我查看了我的vimrc,发现了错误。我有这条线

filetype plugin indent on

beforeBundle,它应该是afterBundles。

4

1 回答 1

3

默认情况下,Vim 在启动时不查找 .vim/bundle 目录。所以这意味着你的“ftdetect”不会被加载。

Pathogen 会查看每个 bundle 目录并加载它们。

如果您想亲自查看,请启动 Vim 两次,一次使用 ,一次不使用,然后在启动后pathogen:infect()键入。:scriptnames您将看到已加载脚本的列表。

您甚至可以:redir在调用之前将输出写入文件:scriptnames以获取加载脚本的确切差异。

于 2013-10-11T09:08:15.150 回答