2010-06-29 59 views
16

我經常看看Vim中的幫助文件,但有時我想全屏閱讀。由於:help命令會在新窗口中打開它,並關閉舊窗口,如果它是除幫助文件以外的唯一一個窗口,出於某種原因關閉Vim,我發現這樣做的唯一方法是打開幫助文件,然後在新選項卡中重新打開它。如何在現有窗口中的新緩衝區中打開Vim中的幫助文件?

我想知道,有沒有什麼辦法可以讓help命令(或另一個命令)在同一個窗口中打開幫助文件,但有一個新的緩衝區?

回答

22

您可能正在尋找:onlyCTRL-W o(相同的命令)。這使當前窗口成爲屏幕上唯一的窗口。所有其他窗口關閉。

您還可以垂直拆分幫助窗口:

:vert help {subject} 

BTW,:help實際上在新的緩衝區不開放的,它只是「不公開」。要列出所有的緩衝區,包括未上市的:

:buffers! 
3

您可以使用:help打開幫助窗口,然後按Ctrl + W_使該窗口全屏(主要是見winminheight選項)。

+0

哇,我不知道,你可以設置winminheight = 0隱藏窗口! 儘管它是一個很棒的技巧,但仍然會有一個帶有舊窗口標題的小欄,這就是爲什麼我的問題是關於打開一個新的緩衝區:P – 2010-06-29 03:14:02

15

如果我理解正確的問題,所有你需要做的是連鎖幫助命令調用與只有命令:

 
:help <subject> | only 
7

您可以通過:tab help打開一個新選項卡來尋求幫助。這將爲您提供全屏幫助。也看看:help :tab

+2

另一個選擇是後想,打開當前窗口新標籤,「Ctrl-W T」。 – 2014-07-30 20:18:24

1

我用大寫的H像這樣(:H,但它使用整個窗口的工作原理完全一樣):寫了一個自定義命令

command! -nargs=1 -complete=help H call HelpFullScreen(<f-args>) 

function! HelpFullScreen(topic) 
    exe "h " . a:topic 
    wincmd j 
    try 
     clo 
    catch /^Vim(\a\+):E444:/ " can't close last window 
    endtry 
endfunction 

就像一個魅力!

6

:help通常會打開一個新窗口除非活動窗口的緩衝區buftype已經help。因此,要真正重用一個窗口,您必須在該窗口中打開一個新的空緩衝區,並使用:enew,將buftype更改爲:set buftype=help,然後發出:help <whatever>

爲了方便,你可以定義一個命令做,在你的.vimrc

command! -nargs=1 -complete=help H :enew | :set buftype=help | :h <args> 

然後用:H {subject}從任何窗口。

使用此方法,您可以真正重複使用該窗口,並允許您使用C-^轉到備用項目。它也會尊重你的窗口布局(拆分窗口等),不像其他答案。

+0

爲了讓'C- ^'工作,您需要在':h ' – 2017-07-03 15:24:01

0

要打開全尺寸的新標籤與所需的主題:

:tab help {subject} 
:tab h {subject} 

主題是任何有效的:help說法。

分割當前窗口:

:vert help {subject} 
:vert h {subject} 
相關問題