借助于“ .vimrc”中的rightb vert term
,Vim中有两个分割的窗口(左边的是my_file.txt,右边的是终端)。为了关闭两个窗口,我通常在终端中使用exit
,然后为my_file.txt使用:q
。但是,如果我以其他顺序关闭窗口(首先是:q
用于文件,然后是exit
用于终端),进程“ Vim”仍然有效,并打开带有my_file的窗口。因此,我需要再使用:q
次来关闭my_file窗口。你能猜出原因吗?
答案 0 :(得分:0)
在:quit
窗口中打开另一个窗口时,Vim会记住在该窗口中编辑的缓冲区。您可以通过:ls
命令看到它。现在,当您从终端exit
进行操作时,它不像:quit
那样工作,而是关闭了该窗口,Vim会调用以前编辑并退出的原始缓冲区。 (即使作业仍在运行,您也可以从终端强制:quit!
;然后,Vim将退出,因为最后一个窗口已关闭。)
如果您已经用完缓冲区,并且不希望它“回来”(当另一个窗口变为空闲并且Vim搜索要显示的缓冲区时),请使用:bdelete
而不是:quit
。
或者,如果您知道您已完全完成Vim会话并且不关心已记住的缓冲区,只需使用:quitall
(简称:qa
)。< / p>