Ответы:
Есть несколько оконных команд, которые позволяют вам сделать это:
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 плюс, минус, меньше, большие комбинации.
В терминальных версиях вы должны правильно установить режим мыши, чтобы это работало
:set mouse=n
(Я использую 'n', но 'a' также работает)
и вы должны установить тип мыши tty
:set ttymouse=xterm2
Многие люди говорят, что с помощью мыши тратится много времени (в основном из-за времени, которое требуется, чтобы переместить руку с клавиатуры на мышь и обратно), но я считаю, что в этом случае время, сэкономленное немедленная обратная связь при настройке размера окна и быстрота изменения размера (продолжайте перемещать мышь вместо ввода другой последовательности клавиш) перевешивает задержку перемещения руки.
:set mouse=n
достаточно, но для включения нужно использовать tmux :set ttymouse=xterm2
.
Кажется, никто не упомянул z{nr}<CR>
.
Если вы :h ^w_
, то увидите z{nr}<CR>
чуть ниже, которые имеют тот же эффект, что и CTRL-W_.
Если вам не нужна z=проверка орфографии, и добавьте ниже .vimrc
,
" vertical resize, z0<CR> minimize, z= equalize, z99<CR> maximize.
nnoremap z= <C-w>=
Тогда для изменения высоты окна:
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
= левая и правая клавиши со стрелками, соответственно.
" noremap <silent> <C-S-Left> :vertical resize +5<CR>
" noremap <silent> <C-S-Right> :vertical resize -5<CR>
noremap <silent> <C-S-Left> :vertical resize +1<CR>
noremap <silent> <C-S-Right> :vertical resize -1<CR>