:help
浏览Vim帮助,但这会打开一个窗口。有时,我只是喜欢学习文档。如何在“全屏”模式下阅读文档?#1 楼
只需将帮助窗口扩展为唯一可见的窗口:Ctrlw-o完成后,您可以切换回其他缓冲区。
#2 楼
或者,您可以在新选项卡中打开帮助窗口::tab help foo
,然后使用:q
将其关闭。评论
默认情况下还有办法吗?这样:help foo就可以充当:tab help foo?
–马丁·图尔诺伊(Martin Tournoij)
2015年2月6日14:44
@Carpetsmoker是的,您可以执行cnoremap帮助选项卡帮助之类的操作。
–门把手
2015年2月6日14:45在
#3 楼
其他答案已经回答了您的问题,但是出于完整性考虑:如果您只是想暂时获得较大的窗口以进行查看,可以使用
Ctrl-w _
和Ctrl-w |
映射可以分别最大程度地在垂直或水平方向上最大化帮助窗口,但不会关闭现有的拆分窗口。随后当您使用
Ctrl-w c
或:q
关闭帮助窗口时,窗口布局将返回到打开帮助窗口之前的状态。如果要保留的窗口布局稍微复杂一些,这很有用。
#4 楼
您可以使用ctrl+w T
将帮助屏幕移至其自己的选项卡(请注意,T
为大写字母)。然后您可以使用
gt
在选项卡之间切换。 >#5 楼
您可以通过在帮助窗口内使用Control-wo消除所有其他拆分窗口,来使帮助窗口全宽和全高。此命令使当前窗口成为唯一窗口,并删除所有其他窗口。#6 楼
摆脱烦人的“新文件”选项卡的另一个选项是vim +"tab help | -tabc"
。#7 楼
您还可以命令:only
。 C-W C-O
对也一样。有关:h only
的更多信息评论
欢迎来到Adem网站,我们通常鼓励用户解释为什么建议使用特定命令以及其工作方式。链接相关的帮助主题(如:h:only)通常也是一种最佳做法
–statox♦
20 Jan 15'在12:28
得到它并改变。非常感谢你。
–adembudak
20年1月15日在12:36
#8 楼
我的个人变化:command! -nargs=1 -complete=help H help <args> | silent only
这使您可以像通常使用
:H
一样使用:help
。only
然后执行其他人提到的Ctrlw-o组合键。评论
欢迎来到Vi和Vim!
– D. Ben Knoble♦
20年8月28日在13:56
#9 楼
我经常在另一个工作区/屏幕中打开一个新的vim实例,只是为了弹出帮助窗口,所以本文对我有极大的帮助。新建标签,并在必要时自动关闭新的/空的缓冲区。希望它对将来的人们有用。感谢你们的帮助!" Help: Open a `help` page in a new tab, or replace the current buffer if it
" is unnamed and empty.
function! Help( query )
" Is the current buffer empty?
let l:empty = line( '$' ) ==# 1 && getline( 1 ) ==# ''
" Store the current tab number so we can close it later if need be.
let l:tabnr = tabpagenr()
let l:bufname = bufname( winbufnr( 0 ) )
try
" Open the help page in a new tab. (or bail if it's not found)
execute "tab help " . a:query
" The help page opened successfully. Close the original tab if it's empty.
if l:bufname ==# '' && l:empty
execute "tabclose " . l:tabnr
endif
endtry
endfunction
command! -nargs=1 Help call Help( <f-args> )
#10 楼
几年前,我写了一个小插件来做到这一点:vim-helptab。键入:h ...
时,它会在自己的标签中打开帮助文档。要绕过它,您可以执行:he ...
或:help ...
。#11 楼
我在vim.fandom.com网站上找到了它。通过在最大化之前进行会话来工作,然后重新加载上一个会话视图。
因为我有很多标签,所以在重新加载会话之前添加
exec "tabo"
(仅用于tab),否则最终导致选项卡数量增加一倍。
nnoremap <a-m> :call MaximizeToggle()<CR>
function! MaximizeToggle()
if exists("s:maximize_session")
exec "tabo"
exec "source " . s:maximize_session
call delete(s:maximize_session)
unlet s:maximize_session
let &hidden=s:maximize_hidden_save
unlet s:maximize_hidden_save
else
let s:maximize_hidden_save = &hidden
let s:maximize_session = tempname()
set hidden
exec "mksession! " . s:maximize_session
only
endif
endfunction
但是,何时处理大量文件时,我发现这种“重新加载会话”方法有些滞后。
也许有人可以评论如何减少延迟。
#12 楼
我很少使用制表符,但是如果我创建一个help
窗口:only
(这是我过去所做的事情),然后切换到文件缓冲区尝试我学到的内容,则help
缓冲区不见了,我必须重新打开它并重新导航到我要去的地方,然后才能继续阅读帮助内容。在阅读了所有答案之后,我发现:tab是正确的解决方案。最大的好处是,我可以在文件缓冲区选项卡和帮助选项卡之间来回交换(
gt
)而不会失去我的位置,而只需要占用一行终端房地产即可。并且,最初在新标签页:
:tab help xxyyzz
评论
同样,您可以使用Ctrl-w w切换到另一个窗口,然后使用Ctrl-w c将其关闭,只剩下帮助。
–bsmith89
2015年2月4日在23:47
选择最高投票的答案。
–Ruslan Osipov
2015年2月5日,0:06