今天介绍的插件很有意思,也非常有用,也是我最常用的插件之一——Gundo.
大家都知道按u
可以撤销操作,但是一般都不知道输入命令:undolist
会显示可撤销列表,如图
其实这还不是列表,而是整个vim 撤销树的叶子。为什么说是树,而不是列表,举个例子就明白了:
你在a状态做了一次修改到b,又回退到a,再做了一次修改到c。大多数编辑器比如sublime text,b这个状态就没了,但是vim会用一个树进行保存。
而Gundo这个插件就是一个撤销树浏览器.直接上张图:
当前位置以@
标注,其他历史以o标注。
按jk上下移动,就可以在下面的窗口看到对应修改之前的改动。这个就是普通的vim窗口,所有的移动操作都是支持的,比如G
到底部,C-U
上翻页等。
按p
可以查看选中状态和当前状态的差异,按回车就会回到选中状态,按P
更是可以一步步播放到选中状态,高上大啊……
btw,我习惯将所有的undo记录都保存下来,即使关闭了vim或者buffer也能继续撤销。
只需要稍加配置,就能将撤销树持久化存储下来:
1 | try |
今天就介绍到这里。有问题直接回复给我。