Открытие окна в горизонтальном расколе вертикального раскола - PullRequest
7 голосов
/ 15 мая 2011

Я хочу, чтобы NERDTree и TagList были открыты одновременно, но мне не нужно, чтобы они имели всю высоту экрана. Вместо этого я хотел бы разделить их по горизонтали в пределах одного вертикального разделения.

Точнее говоря, я хочу иметь возможность открыть один, скажем, NERDTree, и заставить его занимать всю высоту экрана. Затем, когда я открою TagList, разделить его по горизонтали с уже открытым окном NERDTree.

Есть ли способ сделать это? Возможно, даже не «специфично для этих двух плагинов»?

Ответы [ 3 ]

8 голосов
/ 16 июля 2011

NERDTree и Taglist не собираются открываться внутри сплитов.

Допустим, у вас есть разделенный буфер слева (например, для исходного кода) и Taglist справа.

Вы можете поместить это в функцию и вызвать ее с отображением:

NERDTree    " open NERDTree
wincmd J    " move NERDTree to the very bottom
wincmd k    " move the cursor to the above split (the source code buffer)
wincmd H    " move the split to the very left
wincmd l    " move the cursor back to the NERDTree split
resize 20   " resize the split height to 20
exe 'vertical resize ' . g:NERDTreeWinSize    " reset the split width

Это довольно хитроумно, но работает. Вы увидите краткий визуальный сбой, пока сплит прыгает по экрану.

1 голос
/ 18 ноября 2011

Я разместил решение в дублирующем сообщении здесь: NERDTree & TList в

Это включает в себя небольшое редактирование сценария taglist.vim для добавления новой опции разделения при открытии.

1 голос
/ 15 мая 2011

Горизонтальное разделение:

:split 

Вертикальное разделение:

:vsplit

Затем, когда вы разделите свой экран, как вы предпочитаете, откройте дерево ботаников внутри нужного кадра.(Или вы можете использовать сокращение: sp: vsp, как предложено @Vivek Pandey).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...