代码之家  ›  专栏  ›  技术社区  ›  farnsy

Vim如何将第二个参数添加到缓冲区列表(备用文件)?

  •  1
  • farnsy  · 技术社区  · 2 年前

    我经常在(neo)vim中一次打开两个文件

    nvim file1.py file2.py

    我想把它们放在一起 :vsplit# (我已经将其重新映射到一个击键)或使用快速从一个键切换到另一个键 <C-6> 。不幸的是,这些命令只能从当前文件切换到备用文件。默认情况下,第二个文件在参数列表中,但实际上并没有打开,也不是备用文件。我可以用打开另一个文件 :bnext 或者其他什么,然后设置一个备用文件,一切都按预期进行。

    这是一件小事,但它似乎总是出现在我的工作流程中。

    是否有一个设置或配置可以将参数列表中的所有文件放入缓冲区列表并填充备用文件变量?

    0 回复  |  直到 2 年前
        1
  •  3
  •   Maximilian Ballard    2 年前

    您可以使用手动设置备用文件 @# 因此,例如,要将备用文件设置为第二个缓冲区,我可以执行以下操作:

    :let @#=2
    

    要在启动时运行此命令,可以执行以下操作:

    vim -c 'let @#=2' file1 file2
    

    要在启动时自动执行此操作,您可以将其添加到 .vimrc :

    function! MyFunc()
        if len(@#) == 0 && bufnr("$") > 1
            let @#=2
        endif
    endfunction
    
    autocmd VimEnter * call MyFunc()
    

    该函数将首先确保备用文件不存在,然后确保有另一个缓冲区要设置。之后,它将把备用文件设置到第二个缓冲区。使用 automcd VimEnter 然后我们调用该函数,它现在将在启动Vim时自动运行。

    推荐文章