.vimrc backupdir几个目录

时间:2014-07-06 17:56:02

标签: vim directory backup

我想在vim中:w之后的几个目录中创建备份文件,if语句为true。 Vim :help说,你需要在目录之间加上逗号而不是别的。但这对我不起作用。它只读取第一个目录。我尝试了不同的方法,例如使用set backupdir+=~/.代替.

set backup
set nowritebackup
set backupdir=~/Dropbox
if expand("%")==".vimrc"
    set backupdir=.,~/.vim/backUpDir/,~/Dropbox
endif

在.vimrc中展开返回

:echo expand("%")==".vimrc"
1

vim --version
VIM - Vi IMproved 7.4
MacOS X (unix) version

1 个答案:

答案 0 :(得分:0)

如果没有自定义插件,我不相信这是可能的。如果您仔细阅读vim帮助,则表示将在列表中的 first 目录中创建备份文件。因此,您所看到的行为按设计

                        *'backupdir'* *'bdir'*
'backupdir' 'bdir'  string  (default for Amiga: ".,t:",
                 for MS-DOS and Win32: ".,c:/tmp,c:/temp"
                 for Unix: ".,~/tmp,~/")
            global
            {not in Vi}
    List of directories for the backup file, separated with commas.
    - The backup file will be created in the first directory in the list
      where this is possible.  The directory must exist, Vim will not
      create it for you.

如果您真的希望能够备份到多个目录,我建议您编写一个函数来执行此操作,并将其附加到BufWritePre