Как я могу разделить по горизонтали через несколько вертикально разделенных окон в Vim?

В принципе, я хочу перейти от 1) к 2) Обычно я делаю это, сначала разбивая по горизонтали, а затем по вертикали, но поскольку я хочу, чтобы это делало трехсторонние различия, гораздо проще запустить vim, запустив:

$ vimdiff file1 file2 file3

И затем сделайте что-нибудь, чтобы открыть окно разделения ниже.

1)
    +----+----+----+
    ¦    ¦    ¦    ¦
    ¦ f1 ¦ f2 ¦ f3 ¦
    ¦    ¦    ¦    ¦
    +----+----+----+

2)
    +----+----+----+
    ¦    ¦    ¦    ¦
    ¦ f1 ¦ f2 ¦ f3 ¦
    +----+----+----+
    ¦      f4      ¦
    +--------------+

Кто-нибудь знает об этом?

Ответы

Ответ 1

используйте :botright split или :bo sp, он делает то, что вы хотите

Ответ 2

В дополнение к Hasturkun отличный ответ, вы можете найти некоторые команды Ctrl-W весьма полезными:

Это Ctrl-W, за которым следуют (capital) H, J, K или L. Они перемещают текущее окно в крайнее левое, нижнее, верхнее или правое соответственно. Поэтому, чтобы перейти от 1 до 2, в качестве альтернативы использованию :botright, вы можете сделать обычный :sp или :vsp, а затем сделать Ctrl-W J, и окно будет перемещено в нижнюю часть.

:help CTRL-W_H
:help CTRL-W_J
:help CTRL-W_K
:help CTRL-W_L