Я работаю над буферами разделения (используя ^ w + v, ^ w + s), но иногда я хотел бы расширить текущее разделение или изменить его высоту. Как я могу этого достичь?
112
Есть несколько оконных команд, которые позволяют вам сделать это:
20<C-w>+
)30<C-w><
)50<C-w>_
)50<C-w>|
)Смотрите также: :help CTRL-W
:help CTRL-W
и нет:help CTRL_W
vimdiff -o bigfile1.bash bigfile2.bash
::ctrl-w =
открывает 3-е окно MiniBufExplorer вверху (и 3 окна теперь равны по размеру), и закрывая его, окно первого файла .bash на 2 раза больше, чем второй файл .bash окно. Та же самая операция с 2 файлами .vim дает те же результаты. :( То же самое сvim -o
Вы также можете использовать
resize
команды::resize [+-]N
- изменить размер горизонтального разделения, увеличив или уменьшив высоту на N символов.:vertical resize [+-]N
- изменить размер вертикального разделения, увеличив или уменьшив высоту на N символов.:resize N
- изменить размер горизонтального разделения, установив высоту N символов.:vertical resize N
- изменить размер вертикального разделения, установив ширину в N символов.Это эквивалентно Ctrlwкомандам. См
:help window-resize
.источник
Это одна из немногих причин, по которой мне нравится использовать режим мыши vim.
Если вы используете версию с графическим интерфейсом или ваш терминал поддерживает отправку событий перетаскивания (таких как xterm или rxvt-unicode), вы можете щелкнуть по разделенной линии и перетащить, чтобы изменить размер окна именно там, где вы хотите, без большой работы с угадыванием с помощью ctrl. -W плюс, минус, меньше, большие комбинации.
В терминальных версиях вы должны правильно установить режим мыши, чтобы это работало
(Я использую 'n', но 'a' также работает)
и вы должны установить тип мыши tty
Многие люди говорят, что с помощью мыши тратится много времени (в основном из-за времени, которое требуется, чтобы переместить руку с клавиатуры на мышь и обратно), но я считаю, что в этом случае время, сэкономленное немедленная обратная связь при настройке размера окна и быстрота изменения размера (продолжайте перемещать мышь вместо ввода другой последовательности клавиш) перевешивает задержку перемещения руки.
источник
:set mouse=n
достаточно, но для включения нужно использовать tmux:set ttymouse=xterm2
.Кажется, никто не упомянул
z{nr}<CR>
.Если вы
:h ^w_
, то увидитеz{nr}<CR>
чуть ниже, которые имеют тот же эффект, что и CTRL-W_.Если вам не нужна z=проверка орфографии, и добавьте ниже
.vimrc
,Тогда для изменения высоты окна:
источник
z
немного не интуитивно понятно. Я думаю, что мы должны придерживатьсяC-W
отображений. Приятно знать, что там, хотя.Изменение размера делится быстрее: http://vim.wikia.com/wiki/Resize_splits_more_quickly
Вы можете использовать
:resize
команду или ее ярлык,:res
чтобы изменить высоту окна. Чтобы изменить высоту до 60 строк, используйте::resize 60
Вы также можете изменить высоту с шагом. Чтобы изменить высоту с шагом 5, используйте:
:res +5 :res -5
Вы можете использовать: вертикальное изменение размера, чтобы изменить ширину текущего окна. Чтобы изменить ширину до 80 столбцов, используйте:
:vertical resize 80
Вы также можете изменить ширину с шагом. Чтобы изменить ширину с шагом 5, используйте:
:vertical resize +5 :vertical resize -5
источник
Resize splits more quickly
, если только эти команды не связаны с сочетаниями клавиш, что было сделано из коробкиПо некоторым причинам (вероятно, плагин) стандарт
C-w >
(и т. Д.) Не работал в моем~/.vimrc
.Эти
.vimrc
дополнения сработали (Ctrl-Shift-Left
... гдеLeft | Right
= левая и правая клавиши со стрелками, соответственно.источник