我发现,当在Windows上使用Vim时,Vim保存文件,一个.ext。关闭Vim窗口时删除的swp文件和.ext~文件。
我认为。ext。swp文件是一个会话备份,以防Vim崩溃。但是.ext~文件的目的是什么?这是永久备份文件吗?这很烦人,因为我想把我正在处理的所有文件复制到我的主机上,而不需要这些副本。我该如何关闭它,或者,如果它有一个很好的理由,隐藏文件?
我发现,当在Windows上使用Vim时,Vim保存文件,一个.ext。关闭Vim窗口时删除的swp文件和.ext~文件。
我认为。ext。swp文件是一个会话备份,以防Vim崩溃。但是.ext~文件的目的是什么?这是永久备份文件吗?这很烦人,因为我想把我正在处理的所有文件复制到我的主机上,而不需要这些副本。我该如何关闭它,或者,如果它有一个很好的理由,隐藏文件?
:set nobackup
将关闭备份。如果您仍然想要这些备份文件,但在中央文件夹中,您还可以设置备份目录。这样,您的工作目录中就不会充斥着~文件。
您可以在:备份下找到更多关于备份的信息。
你是正确的,.swp文件被vim用于锁定和作为恢复文件。
如果你不想要这些文件,试着在你的vimrc中放置set nobackup。如果你想要完整的独家消息,或者想要.bak文件,可以查看Vim文档中的各种备份相关选项…
要关闭这些文件,只需将这些行添加到.vimrc(基于unix操作系统的vim配置文件):
set nobackup #no backup files
set nowritebackup #only in case you don't want a backup file while editing
set noswapfile #no swap files
*。Ext ~ file是一个备份文件,包含编辑之前的文件。
* . ext。swp文件是交换文件,它作为一个锁文件,包含撤消/重做历史以及Vim需要的任何其他内部信息。在崩溃的情况下,您可以重新打开您的文件,Vim将从交换文件恢复其以前的状态(我发现这很有用,所以我没有关闭它)。
关闭自动创建备份文件,使用(在你的vimrc中):
set nobackup
set nowritebackup
其中nowritebackup修改了Vim默认的“保存”行为,即:
将缓冲区写入新文件 删除原始文件 重命名新文件
并使Vim将缓冲区写入原始文件(导致在I/O错误的情况下破坏它的风险)。但是用它可以防止在Windows桌面上“跳转文件”,这是我没有安装writebackup的主要原因。
您还可以设置不同的备份扩展名以及保存这些备份的位置(我更喜欢~/。linux上的Vimbackups)。我曾经使用“版本化”备份,通过:
au BufWritePre * let &bex = '-' . strftime("%Y%m%d-%H%M%S") . '.vimbackup'
这将设置一个动态备份扩展名(originalfilename - yyyymmdd - hmmss .vimbackup)。
我认为更好的解决方案是将这些行放在vimrc文件中
set backupdir=~/vimtmp//,.
set directory=~/vimtmp//,.
第一行用于备份文件,第二行用于交换文件。末尾的双斜杠确保在两个具有相同名称的文件的情况下没有冲突,参见注释(在此编辑时,此选项仅适用于交换文件,尚未适用于备份文件)。,。如果当前目录不存在,则允许vim使用当前目录。
您必须在您的主目录中创建一个名为vimtmp的目录才能工作。此外,检查备份是否在配置中启用(如果没有启用则添加set backup)。
通过这种方式,您可以获得两个世界的好处,您不必查看文件,但如果某些文件被futtout,您可以从vimtmp获取备份文件。别忘了时不时地把目录清理一下。
把这一行放入你的vimrc:
nowb nowf noudf“no零钱no零钱文件noundofile
在窗口中,这将是:
C:\Program Files (x86)\vim\_vimrc
文件用于所有用户的系统级vim配置。
在Windows中,设置最后一个noundofile非常重要,可以防止在编辑后创建*~ tilda文件。
我希望Vim默认包含这一行。没有人喜欢难看的目录。
首先让用户选择是否以及如何启用高级备份/撤销文件功能。
这是Vim最烦人的部分。
下一步可能是设置:
设置noeb vb t_vb= " errorbells visualbell .
禁用vim中的蜂鸣声:-)