/etc/vimrc
来做到这一点吗?我在
set nobackup
中添加了/etc/vimrc
,但是当我查看分布式文件系统日志时,仍然生成了备份文件,但随后将其删除。#1 楼
尝试在您的vimrc中添加以下内容:set nobackup nowritebackup
。有关Jason Lefler答案的更新
如果需要为防止在已编辑文件旁边创建备份/撤消/交换文件,请考虑为它们设置目录:
let &directory = expand('~/.vimdata/swap//')
set backup
let &backupdir = expand('~/.vimdata/backup//')
set undofile
let &undodir = expand('~/.vimdata/undo//')
if !isdirectory(&undodir) | call mkdir(&undodir, "p") | endif
if !isdirectory(&backupdir) | call mkdir(&backupdir, "p") | endif
if !isdirectory(&directory) | call mkdir(&directory, "p") | endif
将
:h directory
,:h backupdir
,:h undodir
设置为任意目录喜欢。请注意,在不同路径中编辑相同文件名时,需要在末尾加双斜杠//
(~/.vimdata/swap//
)以防止冲突,例如,将在C%%Users%%username%%docs%%test.adoc~
中创建类似C%%Users%%username%%docs%%awesome%%test.adoc~
和backupdir
的文件。然后,如果这些目录不存在,则创建它们。
.vimdata
目录是我用来将所有这些文件放在一个地方的目录,您当然可以更改。#2 楼
Maxim的答案适用于完全禁用备份,但是,如果您只是想停止混乱的工作目录而又需要备份功能,那么您也可以重新定位备份目录。set backupdir=~/.vim/backup
我也对临时文件也这样做。
set directory=~/.vim/tmp
(这些目录可能已经存在。)
评论
欢迎来到Vi和Vim!好的第一个答案-我也希望保留这些备份。对于我的undodir,我实际上做了一个if!isdirectory(expand(&undodir))|。调用mkdir(expand(&undodir),“ p”)| endif在我的vimrc中(因此您可以通过编程方式执行此操作)
– D. Ben Knoble♦
19-10-30在15:15
哦,undodir对我来说是新手。要调查那个。我的单片vimrc文件还有更多行!
–user25466
19-10-30在15:21
我也一样 :)
– Maxim Kim
19-10-30在16:04
如果要编辑名称相同的不同目录中的文件(例如,各个项目目录中的pom.xml文件),此解决方案是否会引起问题?
– jeffB
19-10-30在16:58
取决于您的backupdir的路径。如果以双斜杠结尾,则没有问题。参见相应的帮助章节@jeffB
– Maxim Kim
19-10-30在17:07