2010-06-29 15 views
16

A menudo echo un vistazo a los archivos de ayuda en Vim, pero a veces quiero leer uno en pantalla completa. Como el comando: help lo abre en una ventana nueva, y cerrando la ventana anterior, si era el único además del archivo de ayuda, por alguna razón cierra Vim, la única forma que encontré de hacerlo fue abrir el archivo de ayuda, y luego volver a abrirlo en una nueva pestaña.¿Cómo puedo abrir un archivo de ayuda en Vim en un nuevo buffer en una ventana existente?

Me pregunto, ¿hay alguna forma de hacer que el comando: help (u otro comando) abra un archivo de ayuda en la misma ventana, pero un nuevo buffer?

Respuesta

22

Quizás esté buscando :only o CTRL-W o (el mismo comando). Esto hace que la ventana actual sea la única en la pantalla. Todas las demás ventanas están cerradas.

También puede dividir verticalmente la ventana de ayuda con:

:vert help {subject} 

Por cierto, :help realidad se abre en una nueva memoria intermedia, es sólo "listado". Para una lista de todos los tampones, incluidos los no cotizados:

:buffers! 
3

Puede utilizar :help para abrir la ventana de ayuda, a continuación, Ctrl + W_ para hacer que la ventana de pantalla completa (en su mayoría, consulte la opción winminheight).

+0

Wow, no tenía ni idea de que se podía establecer winminheight = 0 para ocultar una ventana! Si bien es un gran truco, * aún * habrá una pequeña barra con el título de la ventana anterior, por eso mi pregunta era sobre la apertura de un nuevo búfer: P –

15

Si entiendo bien la pregunta, todo lo que necesita hacer es encadenar los ayuda llamada de comandos con el única comando:

 
:help <subject> | only 
7

Puede abrir una nueva pestaña para obtener ayuda con :tab help. Esto le dará una ayuda de pantalla completa. También mira :help :tab.

+2

Otra opción es como después de pensar, abrir ventana actual en nueva pestaña, 'Ctrl-W T'. –

1

me escribió un comando personalizado utilizando mayúscula al igual que (funciona exactamente igual: h excepto que utiliza toda la ventana):

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 

funciona como un encanto!

6

El :help usualmente abrirá una nueva ventana menos que el búfer de la ventana activa es buftype ya help. Para reutilizar realmente una ventana, debe abrir un nuevo búfer vacío en esa ventana con :enew, cambiar el buftype por :set buftype=help y luego emitir el :help <whatever>.

Para mayor comodidad se podría definir un comando para hacer que en su .vimrc:

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

y luego usar :H {subject} desde cualquier ventana.

Usando este método, realmente reutiliza la ventana y eso le permite usar C-^ para ir a la alternativa por ejemplo. También respetará el diseño de su ventana (ventanas divididas, etc.) a diferencia de las otras respuestas.

+0

Para que 'C- ^' funcione, necesita agregar 'keepalt' antes': h ' –

0

Para abrir una nueva pestaña de tamaño completo con su tema deseado:

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

sujeto es cualquier argumento válido :help.

Para dividir la ventana actual:

:vert help {subject} 
:vert h {subject} 
Cuestiones relacionadas