有没有办法.swp
在vim中禁用文件创建?或至少将它们全部创建在一个地方,以便我可以轻松找到和删除它们。
当我同时编辑时复制父目录时,我发现它们特别烦人。当然,我知道我可以使用find -exec查找和删除它们。但是我想要一个更实用的解决方案。
有没有办法.swp
在vim中禁用文件创建?或至少将它们全部创建在一个地方,以便我可以轻松找到和删除它们。
当我同时编辑时复制父目录时,我发现它们特别烦人。当然,我知道我可以使用find -exec查找和删除它们。但是我想要一个更实用的解决方案。
Answers:
要在vim中禁用交换文件,请输入
:set noswapfile
要永久禁用交换文件,请在~/.vimrc
文件中添加以下内容
set noswapfile
:noswapfile edit /path/to/file
在.vimrc或/ etc / vimrc中设置以下变量,以使vim将交换,备份和撤消文件放在一个特殊的位置,而不是要编辑的文件的工作目录中:
set backupdir=~/.vim/backup//
set directory=~/.vim/swap//
set undodir=~/.vim/undo//
在路径中使用双尾斜杠告诉vim在避免名称冲突的地方启用功能。例如,如果您在一个位置中编辑一个文件,而在另一个位置中编辑另一个文件,并且两个文件都具有相同的名称,则您不希望在〜/ .vim / swap /中发生名称冲突。如果在〜/ .vim / swap //后面加上两个斜杠,vim将使用正在编辑的文件的整个路径来创建交换文件,以避免冲突(文件路径中的斜杠将被百分号%代替)。
例如,如果您编辑/path/one/foobar.txt和/path/two/foobar.txt,那么您将在〜/ .vim / swap /中看到两个名为%path%one%foobar.txt的交换文件。和%path%two%foobar.txt。
我同意那些质疑为什么vim在没有其他文本编辑器困扰的情况下为什么需要所有这些“灾难恢复”内容的观点。我不想在编辑时vim在编辑文件的目录中创建任何其他文件,非常感谢。为此,我_vimrc
要禁用交换文件,并将烦人的“备份”文件移到Temp目录中:
" Uncomment below to prevent 'tilde backup files' (eg. myfile.txt~) from being created
"set nobackup
" Uncomment below to cause 'tilde backup files' to be created in a different dir so as not to clutter up the current file's directory (probably a better idea than disabling them altogether)
set backupdir=C:\Windows\Temp
" Uncomment below to disable 'swap files' (eg. .myfile.txt.swp) from being created
set noswapfile
disaster recovery
。我喜欢它!当我恢复所做的任何更改(无论是否保存)时,都无需备份文件,甚至无需保存文件。
您可以将backupdir和directory设置为null以便完全禁用交换文件,但是通常建议将它们简单地放在集中目录中。Vim会确保没有名称冲突或类似名称;因此,这是一个完全安全的选择:
set backupdir=~/.vim/backup/
set directory=~/.vim/backup/
//
在路径末尾添加双斜杠,以便可以同时修改两个具有相同名称的文件。
:help directory
是否要阅读此文档。双斜杠告诉vim将文件的完整路径编码为交换文件的名称,例如%home%sam%dotfiles%.gitignore.swp
,而不是just .gitignore.swp
。
不为特定文件创建vim交换文件
autocmd bufenter c:/aaa/Dropbox/TapNote/Todo.txt :set noswapfile
autocmd bufenter c:/aaa/Dropbox/TapNote/* :set noswapfile