¿Hay alguna manera de que la ayuda de Vim se abra en un panel dividido vertical en lugar de uno horizontal?
:vertical
( vert
) funciona:
:vert help
También puede controlar si la ventana se divide a la izquierda / arriba o a la derecha / abajo con topleft
( to
) y botright
( bo
) . Por ejemplo, para abrir la ayuda en la ventana derecha de una división vertical:
:vert bo help
Como alternativa a las respuestas de Haroogan y Sean, puede usar el FileType
evento para el autocomando de esta manera:
autocmd FileType help wincmd L
Aunque esto cambiará la posición de cualquier ventana de ayuda además de mover la ventana después de colocarla manualmente si el archivo que está viendo cambia. Pero creo que este es un problema con cualquier solución.
:vsplit
) tiene muchos votos a favor !?
help,*
lugar de simplemente help
. Además, noté que este comando funciona cuando lo agrego a mi _vimrc
e inicio una nueva instancia de GVim, pero no cuando ejecuto el comando en mi sesión actual de GVim (tengo :set ft=help
que activar manualmente el autocmd).
*
realidad no era necesario. Por lo que puedo entender para la sesión actual frente a la nueva sesión, en la nueva sesión necesitaría volver a obtener su fuente vimrc
para que los cambios surtan efecto, además, si el archivo ya está abierto en el búfer y :help
simplemente lo lleva a un parte del archivo, esto autocmd
no tendrá ningún efecto
autocmd FileType help wincmd L
autocmd FileType h wincmd L
help
archivo, por lo tanto, en la configuración del tipo de help
archivo, este autocmd se ejecutará. Puede probar esto haciendo :sef help
en cualquier archivo mientras haya una división en su ventana, por lo tanto, el segundo autocmd de @ danbruegge no sería necesario
No es necesario reasignar ningún comando o introducir alias extraños como :Help
. Aqui esta la solucion. Cree un lugar ~/.vim/after/ftplugin/help.vim
donde pueda anular cualquier configuración de Vim especialmente para help
y agregue la siguiente línea allí:
autocmd BufWinEnter <buffer> wincmd L
Este gancho asegurará que cualquier help
archivo se abra en división vertical. Además, no tiene un efecto secundario descrito en la respuesta de Sean. Personalmente, esta es la solución perfecta para mí hasta ahora.
Espero que esto ayude. La mejor de las suertes.
Este comando debería hacerlo:
:vert help
:vsplit
hace es dividir la ventana actual verticalmente. ¿Cómo ayuda esta apertura en un panel vertical?
Pon esto en tu .vimrc
:
command -nargs=* -complete=help Help vertical belowright help <args>
Ahora puede abrir una ayuda vertical con el :Help
comando (observe que la primera letra está en mayúsculas)
Para que los archivos de ayuda siempre se abran en una división vertical a la derecha, coloque esto en su vimrc:
augroup helpfiles
au!
au BufRead,BufEnter */doc/* wincmd L
augroup END
Esto tendrá el efecto secundario de tener cualquier cosa con "doc" en su camino abierto en una división vertical, pero eso puede no ser un problema para usted. No es para mi Si prefiere que se abra en una división vertical izquierda, o cualquier otra cosa, puede cambiar wincmd L
. Puedes aprender más sobre esto con:he wincmd
:au BufEnter */doc/* if &filetype=='help' | wincmd L | endif
autocmd FileType help wincmd L
solo funciona una vez para mí, ¡esto funciona muy bien!
Pon lo siguiente en tu ~/.vim/ftplugin/help.vim
wincmd L
No puede ser más simple que esto :)
Esto mueve la ventana de ayuda una vez . Por lo tanto, puede moverlo libremente después de crear la ventana.
if has('autocmd')
function! ILikeHelpToTheRight()
if !exists('w:help_is_moved') || w:help_is_moved != "right"
wincmd L
let w:help_is_moved = "right"
endif
endfunction
augroup HelpPages
autocmd FileType help nested call ILikeHelpToTheRight()
augroup END
endif
La función ILikeHelpToTheRight()
solo se ejecutará wincmd L
una vez por ventana (para eso es el w:
prefijo).
A continuación, se llama cada vez que se abre un archivo de "ayuda". Esto no tiene los efectos secundarios de la solución de EdJoJob.
Abra dinámicamente ventanas de ayuda en la parte superior si hay más de una ventana en la pestaña actual, o a la derecha, si solo hay una ventana:
if winnr('$') > 2
wincmd K
else
wincmd L
endif
Deberá colocar esto ftplugin/help.vim
o usarlo con autocmd
, por ejemplo:
augroup my_filetype_settings
autocmd!
autocmd FileType help if winnr('$') > 2 | wincmd K | else | wincmd L | endif
augroup END
Esto está destinado a agregar a la respuesta de @ m42, pero todavía no tengo 50 representantes aquí en SO adecuado para agregar a los comentarios.
Agregar nnoremap <C-H> :vert bo help
a .vimrc
Ahora presionando Ctrl-H en el modo Normal saltará al modo Comando, prefijado para abrir la ayuda en una ventana dividida verticalmente a la derecha. Incluya un espacio final después de help·
<- al final de la línea de configuración para obtener mejores resultados.
Este mapeo le permite seguir usando :help
\ :h
para abrir una ventana dividida horizontalmente o recorrer el historial de comandos de ayuda anterior sin que el mensaje se expanda automáticamente.
cnoremap help vert help
. Esto crea una asignación de modo de comando de modo que cuando escribahelp
en modo de comando verá que se expandevert help
.cnoremap help vert help
hace que cada letra dehelp
aparezca por sí misma, por lo que la palabrahelp
no aparece en la línea de comando. ¿Hay alguna manera de arreglar eso? ¿Quizás algo más quecnoremap
?h
comovert h
::cabbrev h vert h
. Luego, cada vez que escriba:h
, se expandirá automáticamente a:vert h
.