Vim 的 Netrw 文件浏览器有以下错误: 运行命令 :e。将打开 Netrw,但在 Netrw 关闭后,Vim 的缓冲区列表中有一个潜在缓冲区,不能用命令 :bprev 遍历。(:bnext 工作正常。)
此错误在以下位置进行了讨论:
https://www.bountysource.com/issues/45921122-previous-doesn-t-work-with-e-buffer
https://groups.google.com/forum/#!topic/vim_use/zzeQItJQNZI
要复制此错误,请启动 Vim 并运行以下命令:
:ls!
:edit ./file1.txt | ls!
:edit ./file2.txt | ls!
:e. #(choose file3.txt in Netrw)
:edit ./file4.txt | ls!
:ls!
此时,您将看到已打开文件的缓冲区以及一些带有路径的缓冲区,以及一个带有 [No Name] 的缓冲区。尝试导航这些缓冲区
:bnext | ls!
:bprev | ls!
您会发现 :bnext 成功地循环了缓冲区,但 :bprev 挂在 Netrw 缓冲区上。是否有解决此错误的方法,以便使用 :bnext 和 :bprev 进行缓冲区导航仍然有效?
编辑 2021-11-28:这里有更好的解释: