我正在寻找一个自动命令来让 Vim 做一个gg=G
on BufLeave
,FocusLost
这样它就会缩进我没有使用的缓冲区。我不喜欢在打开或保存文件时这样做,因为我认为我会对较大的文件感到不耐烦。但我认为我不喜欢我尝试过的自动命令:
:autocmd BufLeave,FocusLost * :normal gg=G
所以我想知道是否有人有任何建议来避免以下问题:
- 最大的问题是我失去了我在哪条线上。
- 此外,我似乎不得不等待缩进完成才能开始编辑另一个缓冲区。(我想几乎任何解决方案至少会使 Vim 在其他缓冲区中变慢。)
我不一定需要整个自动命令代码本身,但更多的是一个自动命令的想法,它可以在不引起更大问题的情况下完成缩进。希望答案不会超出我的想象,因为我仍在阅读Learn Vimscript the Hard Way。我一直想参与 stackoverflow,这似乎是一个相当有趣且不太可能重复的问题。