74

我正在远程服务器上的一个项目中工作。我不想在服务器上有交换文件。我希望 Vim(当然还有 gVim)的所有交换文件都保存在指定的目录中。我怎么能那样做?

4

2 回答 2

90

您可以将directory选项设置为您希望 vim 存储其交换文件的位置,例如:

 mkdir -p $HOME/.vim/swapfiles  # this dir must exist vi does not create it

" $HOME/.vimrc
:set directory=$HOME/.vim/swapfiles//

我使用尾随双路径分隔符,因为来自帮助文档:

对于 Unix 和 Win32,如果一个目录以两个路径分隔符“//”或“\\”结尾,则交换文件名将从文件的完整路径构建,所有路径分隔符都替换为百分号 '%' 符号。这将确保保留目录中的文件名唯一性。

于 2014-01-09T17:03:31.973 回答
37

您可能还需要考虑设置 backupdir 选项:

set backupdir=Z:\backups

这使得 vim 将备份存储在特定位置而不是当前目录中。

于 2009-10-28T12:28:13.413 回答