Vim:如何以分割模式打开以前打开的文件?

Vim:如何以分割模式打开以前打开的文件?

假设我打开了一个名为文件1.txt存在于某个目录 X 中,编辑后,我关闭文件。
一段时间后,我打开了另一个名为文件2.txt存在于另一个目录 Y 中。

现在如何打开文件1.txtvsplit如果我记不住目录 X,则使用。有办法吗?

答案1

使用

:sbp

或者

:sbprevious

这意味着分割并编辑先前的缓冲区。它将水平分割当前缓冲区并打开顶部缓冲区中先前编辑的文件。

完整的命令允许您跳回到N前一个缓冲区:

:Nsbp

或者

:sbp N

如果您不确定您编辑了多少个“文件之前”的其他文件,您可以使用

:bp

重复,直到返回到曾经编辑过的文件(如果您在同一会话期间编辑了许多文件)。

这只能在一个vim会话内起作用。

答案2

你关闭的时候有没有关闭Vim文件1.txt

如果你没有完全关闭 Vim,下面的代码将会起作用:

如果您仍在同一个窗口中,例如您有foo.txt和另一个文件栏.txt在另一个分割窗口中。你可以关闭foo.txt:wq。那么你就有了栏.txt仍然打开。现在您可以打开一个文件巴兹.txt:e /path/baz.txt。您:bp可以跳转到前一个缓冲区(:bn到下一个)。所以现在如果你有巴兹.txt在你的 Vim 中打开,你可以:vsplit使用命令使用之前的缓冲区:vsplit | bp

但如果你完全关闭 Vim,那么这个解决方案就不起作用。

相关内容