什么是 .un~ 文件,或者为什么终端中的 Vim 会生成 .un~ 文件?
Posted
技术标签:
【中文标题】什么是 .un~ 文件,或者为什么终端中的 Vim 会生成 .un~ 文件?【英文标题】:What is a .un~ file or or why does Vim in the Terminal make the .un~ file? 【发布时间】:2013-03-17 15:23:40 【问题描述】:我注意到我有一些以.un~
结尾的点文件,例如我有一个.vividchalk.vim.un~
,但我不确定它来自哪里。似乎它们是我在终端中使用 Vim 时创建的。这些文件是什么?当我关闭我正在编辑的文件时,可以让它们自行删除吗?
【问题讨论】:
【参考方案1】:当您编辑和保存文件时,Vim 会创建一个与原始文件同名并在末尾添加 un~
扩展名的文件。
Vim 7.3 包含一个新特性persistent undo,即撤销信息
退出 Vim 时不会丢失并存储在以.un~
结尾的文件中。
你已经设置了undofile
选项,所以 Vim 在保存时会创建一个撤销文件
原始文件。您可以通过以下方式阻止 Vim 创建备份文件
清除选项:
:set noundofile
请注意,默认情况下此选项处于关闭状态。你有明确的
在其中一个初始化文件中启用了undofile
选项。如果你
希望您的撤消文件仅存储在特定目录中,您可以
将undodir
选项指向一个目录,该目录将包含您的所有
聚合的撤消文件。
来源:http://vimhelp.appspot.com/vim_faq.txt.html#faq-7.2
【讨论】:
谢谢!我是 Vim 的新手,并试图在没有货物文化的情况下理解和配置。我现在看到该设置来自vim-sensible
。阅读vim-sensible 上的自述文件非常有帮助。而且我(从 peepcode 截屏视频中)了解到我可以做到:verbose set undofile?
,然后我会看到该选项的设置位置。我想我有这个权利。
我有 Vim 7.3 并且持久撤消对我不起作用(我需要 set undofile
才能获得持久撤消)。其他设置是否会干扰新功能,例如nobackup
或 noswapfile
?
我认为 cream 非cream-vim-installer 也默认启用了这个。
天哪!现在我必须记住:set nobackup set noswapfile set noundofile
在每个 _vimrc 中,如果我不想要小狗轨道??!!您会认为其中一个可能默认为关闭或其他...
看来vim 8(至少8.0.427)默认开启了这个功能。当然是 YMMV...【参考方案2】:
我花了一段时间才找到实际放置:set noundofile
命令的位置。我是新手,我只会回复我是如何让它不做备份的。
-
打开 vim。
在命令模式下输入
:e $HOME/.vimrc
写信:set noundofile
保存并退出::wq
【讨论】:
它适用于我的用例,但有点不同:在 Windows 上的 ConEmu 中使用 Vim。谢谢! 我在 vim windows 安装程序上默认获得了撤消文件。您的向导帮助了我,谢谢! 请不要!撤消是一个非常有价值的功能。你只需要定义一个undodir。 这个答案对我有用。谢谢。【参考方案3】:另一种避免 vim 在任何地方创建撤消文件的可能方法是将undodir 设置为某个现有目录,例如
if has('persistent_undo') "check if your vim version supports
set undodir=$HOME/.vim/undo "directory where the undo files will be stored
set undofile "turn on the feature
endif
snagged from here
【讨论】:
没错。 Vim undo 是一个非常有价值的工具(当它不会乱扔你的文件夹时)。例如,我喜欢:earlier 30m
。以上是关于什么是 .un~ 文件,或者为什么终端中的 Vim 会生成 .un~ 文件?的主要内容,如果未能解决你的问题,请参考以下文章
Windows终端(用的是powershell)中的vim输入全部是乱码