Vim (изменение размера окна): как мне легко сделать окна одинаково высокими только для одного столбца?
У меня есть вертикально разделенное окно, и окно далее горизонтально разделено в каждом столбце. Я хочу сделать высоту окон внутри одного столбца одинаковой, но не хочу изменять высоту внутри другого столбца (скажем, одно окно в другом столбце установлено на максимально возможное значение, например, с помощью CTRL-W_, и я не хочу это менять). Какой самый простой способ сделать это?
2 ответа
Если equalalways
включен (это по умолчанию), закрытие разбиения изменяет размеры оставшихся разделений, чтобы быть равными. Так что просто создайте новый сплит, а затем закройте его.
:new | q
Отображение его на ключ (например, Leader+eq) будет выглядеть так:
nnoremap <Leader>eq :new \| :q<cr>
Самый простой способ, который я могу придумать, это использовать мышь
:set mouse+=a
а затем с помощью мыши перетащите и измените размер экрана в соответствии с вашими требованиями.
Без мыши, это возможно, но требует дополнительного набора текста. Перейдите к столбцу, размер которого вы хотите изменить. затем :resize #
где # рассчитывается по выходным данным (set lines -2)/2
где 2 составляет cmdheight
и 1 для statusline
, Количество должно быть скорректировано соответственно для "cmdheights and statusline". Это громоздко
Трюк из @Ondrej предпочтителен, если в vim отключена мышь