我经常看看Vim中的帮助文件,但有时我想全屏阅读。由于:help命令会在新窗口中打开它,并关闭旧窗口,如果它是除帮助文件以外的唯一一个窗口,出于某种原因关闭Vim,我发现这样做的唯一方法是打开帮助文件,然后在新选项卡中重新打开它。如何在现有窗口中的新缓冲区中打开Vim中的帮助文件?
我想知道,有没有什么办法可以让help命令(或另一个命令)在同一个窗口中打开帮助文件,但有一个新的缓冲区?
我经常看看Vim中的帮助文件,但有时我想全屏阅读。由于:help命令会在新窗口中打开它,并关闭旧窗口,如果它是除帮助文件以外的唯一一个窗口,出于某种原因关闭Vim,我发现这样做的唯一方法是打开帮助文件,然后在新选项卡中重新打开它。如何在现有窗口中的新缓冲区中打开Vim中的帮助文件?
我想知道,有没有什么办法可以让help命令(或另一个命令)在同一个窗口中打开帮助文件,但有一个新的缓冲区?
您可能正在寻找:only
或CTRL-W o
(相同的命令)。这使当前窗口成为屏幕上唯一的窗口。所有其他窗口关闭。
您还可以垂直拆分帮助窗口:
:vert help {subject}
BTW,:help
实际上在新的缓冲区不开放的,它只是“不公开”。要列出所有的缓冲区,包括未上市的:
:buffers!
您可以使用:help
打开帮助窗口,然后按Ctrl + W_使该窗口全屏(主要是见winminheight
选项)。
如果我理解正确的问题,所有你需要做的是连锁帮助命令调用与只有命令:
:help <subject> | only
您可以通过:tab help
打开一个新选项卡来寻求帮助。这将为您提供全屏帮助。也看看:help :tab
。
另一个选择是后想,打开当前窗口新标签,“Ctrl-W T”。 – 2014-07-30 20:18:24
我用大写的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
就像一个魅力!
的: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-^
转到备用项目。它也会尊重你的窗口布局(拆分窗口等),不像其他答案。
为了让'C- ^'工作,您需要在':h
要打开全尺寸的新标签与所需的主题:
:tab help {subject}
:tab h {subject}
主题是任何有效的:help
说法。
分割当前窗口:
:vert help {subject}
:vert h {subject}
哇,我不知道,你可以设置winminheight = 0隐藏窗口! 尽管它是一个很棒的技巧,但仍然会有一个带有旧窗口标题的小栏,这就是为什么我的问题是关于打开一个新的缓冲区:P – 2010-06-29 03:14:02