【问题标题】:Opening a file from netrw in current window在当前窗口中从 netrw 打开文件
【发布时间】:2016-11-25 19:52:15
【问题描述】:

我的~/.vimrc 文件中有这个

" open files from netrw in a previous window
let g:netrw_browse_split = 4
" tree-like listing of directories in netrw
let g:netrw_liststyle = 3
" set width of 25% of current window width
let g:netrw_winsize = 25
"

它允许我通过:Vexplore 使用 netrw 作为项目抽屉。在文件名上按 Enter 键会在前一个窗口中打开此文件。

但是,有时我以vim . 启动vim 并立即看到netrw。现在,如果我在任何文件名上按<cr>,netrw 将使用该文件打开一个新的拆分,但我希望它在当前窗口中打开该文件。我可以使用其他键在当前窗口中打开文件,但我只是在 netrw 文档中找不到这样的键。

【问题讨论】:

  • 没有内置的方法可以做到这一点,但是你可以用autocmd BufEnter做一些事情来检测netrw是否是唯一打开的窗口并临时切换g:netrw_browse_split的值,我会留给您或其他人执行。或者去阅读this VimCasts blog post,安装vim-vinegar,从项目抽屉的邪恶魔掌中挣脱出来。

标签: vim netrw


【解决方案1】:

您可以在 ~/.vimrc 中检测到这种情况(使用当前目录打开 Vim),并相应地调整 netrw 配置:

" open files from netrw in a previous window, unless we're opening the current dir
if argv(0) ==# '.'
    let g:netrw_browse_split = 0
else
    let g:netrw_browse_split = 4
endif

【讨论】:

    猜你喜欢
    • 2011-08-26
    • 2020-03-11
    • 1970-01-01
    • 1970-01-01
    • 2022-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-08
    相关资源
    最近更新 更多