假设我打开了一个名为文件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,那么这个解决方案就不起作用。