如何在vim中防止重新计算窗口大小?

3
我将逐步展示发生的情况以解释这个案例:
这是我的布局:

enter image description here

当我运行:vs new在一个独立窗口中创建新文件后:

enter image description here

现在你可以看到,最左边的带有目录树的窗口意外地展开了几列。当我关闭new缓冲区时,使用^Wc:close右侧的窗口再次扩展!

enter image description here

发生了什么?有没有办法“固定”窗口大小。窗口像水一样-它们不断地调整大小。


4
“set noea” 是什么意思? - ryuichiro
更好了!)您可以将其发布为答案。怎么样在水平或垂直方向上同等地设置窗口高度/宽度而不是同时设置?例如:^W=(仅影响水平),^W=|(仅影响垂直)。 - Timur Fayzrakhmanov
2
请查看 :h eadirection,这可能是您想要的。 - ryuichiro
2
你也可以使用 :set winfixwidth winfixheight 来固定窗口的高度和宽度。请参阅帮助文档。 - Christian Brabandt
1个回答

6

选项equalalways被设置时,Vim会在关闭或打开窗口时使窗口大小平衡。你可以通过使用以下命令来关闭它:

set noea

或者您可以通过添加eadirection选项来改变其行为,以控制窗口应该在哪个方向上平衡。


我不太懂vim。请问你能否解释一下如何将窗口的v/h方程分配给不同的按键? - Timur Fayzrakhmanov
1
我看到你的问题已经得到了回答。如果你正在寻找如何进行映射的方法,我建议你看一下非常好的《Learn Vimscript the hard way》或者vim.wikia上的《Mapping keys in Vim - Tutorial (Part 1)》。只是在这些教程中,我可能会使用<Leader>代替<C-W>(即^W)。 - ryuichiro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接