Vim: Переместить окно влево/вправо?

В Vim можно "переместить" окно влево или вправо? Например, аналогично <c-w> r или <c-w> x, но влево/вправо, а не вверх/вниз?

Например, если у меня есть этот макет:

+---+---+---+
|   |   +---+
| A +---+---+
|   |   |   |
+---+---+---+

Я хотел бы включить его в это:

+---+---+---+
|   |   +---+
+---+ A +---+
|   |   |   |
+---+---+---+

Это сложно/неприятно делать с <c-w> {H,J,K,L}.

Ответ 1

Ctrl W предоставляет вам "режим командной строки Windows", допускающий следующие модификаторы:

  • Ctrl W + R - Повернуть окна вверх/влево.

  • Ctrl W + R - Повернуть окна вниз/вправо.

Вы также можете использовать "режим командной строки Windows" с помощью клавиш навигации, чтобы изменить положение окна:

  • Ctrl W + L - Переместить текущее окно в "правый крайний"

  • Ctrl W + H - Переместить текущее окно в "левый крайний"

  • Ctrl W + J - Переместить текущее окно в "очень низкое"

  • Ctrl W + K - Переместить текущее окно в "очень верхний"

За дополнительной информацией обращайтесь :help window-moving

Ответ 2

Этот самый полезный для меня (и, вероятно, правильный ответ на вопрос):

  • Ctrl W + x ИЛИ Ctrl W + Ctrl x - Поворачивает текущее сфокусированное окно с ближайшим окном вправо.

Ответ 3

Вы хотите переместить само окно или только свою позицию курсора?

Рядом с вращающимися или циклическими движениями, как вы уже упоминали, можно только переместить окно непосредственно в верхнюю, нижнюю, левую или правую области соответственно:

^W K
^W J
^W H
^W L

Я не думаю, что есть встроенный способ по умолчанию для перемещения окна на одно место справа.

Ответ 4

  • ctrl + h переместите курсор в следующее окно (справа)

  • ctrl + l переместить курсор в предыдущее окно (слева)

о дополнительной информации, пожалуйста, обращайтесь: :help window-moving