在vim中拆分和调整文件大小

时间:2012-05-10 13:31:50

标签: vim resize

我想做以下事情:

  • 在vim中打开9个文件,(3 x 3配置),示例文件1,2,... 9。每个文件应占用相同的空间来显示
  • 选择要查看的文件,示例文件3
  • 当我选择文件3时,我想调整大小,以便此文件占用几乎所有可用空间,以便我可以轻松阅读
  • 同样,我输入一个命令,以便文件回到相同大小的视图
  • 当我选择任何其他文件时,例如6,那么该文件应该再次占用所有可用空间。

我要说的是我知道如何选择一个文件(输入 CTRL w w 来循环浏览文件)如果我输入一个resize命令,例如:res +20等,然后该文件显示得更大,那么我应该:res -20返回到相同的视图,然后选项卡到另一个文件并重复这两个命令等,但这看起来很笨拙,我将不得不在res参数中试验这个数字。我猜有一个更方便的方法来隐藏所有其他文件,显示它们,选项卡到另一个文件,并重复该过程?

4 个答案:

答案 0 :(得分:3)

如果您总是希望打开3x3网格,当您处于最大化窗口时,可以:tabe %,那么当您完成操作时,只需关闭该选项卡(通过输入:q)它。这实际上是制表符的主要用途,可以同时显示不同的窗口排列。

答案 1 :(得分:2)

从基本到“.vim文件夹中的另一个插件”:

  1. <C-w>_垂直最大化当前窗口,<C-w>|水平相同,<C-w>=返回“均衡”布局。全部都在:help windows

  2. :set winheight=999:set winwidth=999。每次进入窗口时,它都会自动在水平和垂直方向上最大化,将所有其他窗口最小化为1列或1行。

    我的set winheight=999中有~/.vimrc,非常干净。 :set winwidth=999太可怕了。

  3. 简单的“Vim-rolodex”脚本效果很好。请务必阅读条目的其余部分。

  4. ZoomWinMultiWin似乎有相同的目的,也许有其他插件?

答案 2 :(得分:1)

您可以通过输入以下内容将所有缓冲区平铺到窗口中:

:bufdo split

您可以最大化当前窗口,以便只有它可见: Ctrl + w o

这会回答你的问题吗?

答案 3 :(得分:1)

看看

:help bufdo    (this together with split should do what you ask about)
:help only