据我所知,使用 netrw 导航目录比在 shell 内导航要容易得多。
出于这个原因,我正在尝试将 netrw 与 shell 集成,到目前为止我所拥有的只是:
(在 Libera 聊天获得一些帮助后编辑)
augroup netrw_mapping
autocmd!
autocmd filetype netrw call NetrwMapping()
augroup END
function! NetrwMapping()
nnoremap <buffer> <leader>tr <Plug>NetrwLcd<cmd>term<CR>i
endfunction
这将在当前探索的目录中打开一个 shell。我不确定这确实是最好的解决方案,或者我是否可能遗漏了 netrw 文档中的某些内容,但我确实查看了那里,并且似乎找不到有关终端集成的任何内容。
我还有一个问题,当我想终止 shell 时,我完全丢失了窗口,而不是导航回 netrw,或从我来的其他地方。
我怀疑很多 Vim 用户正在使用带有集成终端的浏览器,其方式类似于 vscode 提供的方式?
如果我可以使用 zsh 以类似 netrw 的方式导航目录结构,那也可以解决问题。我发现我可以在 zsh 中输入目录名称来更改目录,但除此之外我认为必须有其他一些技巧可用?
看看 ranger,一个基于文本但仍然是图形化的文件管理器,它使用 vim 的键绑定进行导航:https://github.com/ranger/ranger 它使导航变得更加容易,同时具有更好的用户界面和更多功能。