如何让VIM默认在当前下创建一个新窗口?

Wra*_*eng 3 vim

VIM 默认在当前窗口上方或左侧创建新窗口。为了更自然地使用 VIM,我希望它相反地工作,并且我已经设置

:set splitright
:set splitbelow
Run Code Online (Sandbox Code Playgroud)

这在我使用命令拆分窗口时有效

:split
Run Code Online (Sandbox Code Playgroud)

或者

:vsplit
Run Code Online (Sandbox Code Playgroud)

但是,当我使用命令创建一个新的空窗口时,这会失败

:new
Run Code Online (Sandbox Code Playgroud)

或者

:vnew
Run Code Online (Sandbox Code Playgroud)

第二种情况有什么解决办法吗?

Men*_*ックス 5

您只需在命令前添加“下面”:

:below new 

:below vnew
Run Code Online (Sandbox Code Playgroud)

并从 :help below

:rightb[elow] {cmd}
:bel[owright] {cmd}

执行{cmd}。如果它包含拆分窗口的命令, 它将在当前窗口的右侧(垂直拆分)或下方(水平拆分)打开。否决“splitbelow”和“splitright”。不适用于 |:execute| 和|:正常|。

对于评论中讨论的映射,您可以使用这个:

:cnoremap new ^Bbelow ^Enew
Run Code Online (Sandbox Code Playgroud)

你得到:

^B 通过键入ctrl+ v ctrl+ b

^E by ctrl+ v ctrl+ e

  • 你已经提醒我了。是我的粗心造成了这个问题。我之前配置了设置,但是没有添加到vimrc文件中,所以重启Vim的时候还是不行。它现在可以工作了,因为我再次设置它并将其添加到 vimrc 文件中。谢谢你。 (2认同)