我已经打开了一个文件并对其进行了修改 - 现在我想在不分割的情况下进行:Explore
。
它分裂 - 因为我有一个未保存的缓冲区。默认情况下这很好,因为Vim通常不允许切换文件,直到您使用修改后的缓冲区执行某些操作(保存或放弃更改)。
但是我已经设置了hidden
选项,所以我可以从缓冲区跳转到缓冲区,切换文件和所有内容 - 并且在我想要的时候保存或不保存。看来Netrw没有遵循这一政策。我怎么能帮忙呢?
我知道的一种方法是将netrw explore
映射到save & explore
,但我不确定自动写入是否是一种很好的做事方式......我实际上正在使用其他自动写入设置,但我只是在重新思考,可能会摆脱它们。
答案 0 :(得分:2)
所以这就是函数,就是这样:
function! ExploreWithHidden()
let s:cw = getcwd()
lcd %:p:h
enew
Explore
cd `=s:cw`
endfunction
似乎像预期的那样工作。
答案 1 :(得分:1)
您可以使用:Texplore
代替。这与探索相同,除了在新选项卡中(并且没有拆分)。
您可以做的另一件事是使用:lcd %:p:h
将当前工作目录更改为文件目录。然后使用:enew
创建另一个缓冲区,然后打开explore。 (如果缓冲区被修改,请确保隐藏处于打开状态)
:command! BExplore :lcd %:p:h | enew | Explore
要运行命令,请使用:BExplore
。
旧缓冲区将位于后台,探索窗口指向文件所在的目录。
答案 2 :(得分:1)
你可以升级你的netrw - 它在http://www.drchip.org/astronaut/vim/index.html#NETRW达到v153,并且如果修改后的缓冲区被隐藏,它确实可以避免拆分。
答案 3 :(得分:0)
tpope的vim-vinegar就像这样运作。它将-
映射到浏览当前文件的目录。 (这与netrw用于上一个目录的密钥相同。)它使用当前窗口而不是拆分。
修改当前文件时: