为什么Vim会创建一个名为"〜"的空目录。在编辑目录时?

时间:2016-04-11 19:27:52

标签: vim netrw

如果我在Vim中编辑一个目录(比如说' foo'),那么Vim总会创建一个名为' foo /〜'的空目录。在我的vimrc中,我指定了' nobackup',' nowritebackup'和' backupdir = $ TEMP / vim //'。使用backupdir设置,当我启用备份文件时,它们会按预期进入临时目录。

尽管如此,在OS X和Windows上,Vim都会创建空的'〜'目录,当然,就像在我的机器周围散落着非常危险的地雷(至少在OS X上,其中' rm -rf~'将是糟糕日的开始)。

我还没有找到任何关于空的'〜'特别是目录,但一般来说备份很多。

如何禁止创建空的'〜'目录?

1 个答案:

答案 0 :(得分:1)

想出来。在我的vimrc文件中,我有以下设置:

let netrw_home = "~"

我相信我最初这样做是为了让netrw不会使用“.netrwhist”和“.netrwbook”来破坏我的主目录。问题是代字号没有扩展到我的主目录,而是netrw在当前目录中创建了一个名为“〜”的文字目录来存储这些状态文件。

我使用的修复是将netrw_home变量保留为undefined,并让它使用'runtimepath'路径列表中第一个目录的默认值。我必须添加我的主目录($ HOME)作为我的运行时路径上的第一个目录,但到目前为止似乎工作正常。

无论出于何种原因,我无法在Windows上为netrw_home工作〜或$ HOME,但这可能是我对某些Vim细节的误解。我没有时间进一步调查,现在我已经过了这个问题,所以我就会停下来。

感谢上面的Wayne Werner进行快速实验,看看他是否有同样的行为。这就是踢我正确方向的原因。