He investigado algunas formas de mantener una lista de buffers abiertos en Vim, y algunas de ellas son muy buenas, pero ninguna de ellas parece comportarse como me gustaría. Es muy posible que no exista nada como lo que quiero, y no está de más preguntar.
He estado usando NERDTree en GVim, y me gusta la idea de poner la información en una delgada ventana de la izquierda. He reunido un útil diagrama de cómo me gustaría que se vea mi entorno:
|--------|---------------------------------------|
| | |
| | |
|NERDTree| Windows |
| | |
| | |
| | |
|--------| |
| | |
| | |
| List | |
| of | |
| Open | |
| Buffers| |
| | |
| | |
|--------|---------------------------------------|
Entonces mi pregunta es: ¿hay una forma nativa de vim o habilitada para complementos para mantener una lista de búferes abiertos actualmente y seleccionar / editar / cerrar desde esa lista, dentro de una ventana similar a NERDTree?
Entiendo que este enfoque puede ser incongruente con la forma en que Vim hace las cosas , y si siente que me falta algo sobre cómo administrar varios archivos en una sesión de Vim, ¡deje un comentario con sugerencias!
fuente
Respuestas:
¿Buscó en el repositorio de complementos de vim.org? Hay docenas de complementos de cambio de búfer para elegir, como BufferGator o SelectBuf . Alternativamente, la mayoría de ellos se compilan en una buena lista en el wiki de Vim .
Como mencionó en la última parte de su pregunta, ese tipo de sistema no es del gusto de todos.
Yo odio tener todos esos menús, botones y listas de tal o cual abierta en todo momento: una lista de buffers abiertos sólo es útil cuando realmente se necesita para saltar a otro buffer, dejando una abierta dicha lista parece un desperdicio de espacio para mí . Lo mismo se puede aplicar a las líneas de estado sobrealimentadas también.
Utilizo el mismo complemento para cambiar rápidamente entre buffers y explorar rápidamente el sistema de archivos alrededor del archivo que estoy editando actualmente. Invocada con
,f
(archivos) o,b
(buffers), la ventana desaparece cuando termino. Perfecto. Hay otros complementos similares , pruébalos todos si te gusta esa idea.EDITAR
Me siento obligado a agregar un GIF animado de CtrlP en acción, cambiando buffers:
ENDEDITAR
El nativo
:sb <Tab>
también es bastante ordenado pero menos sexy. No admite la coincidencia difusa, pero tiene algunas grandes ventajas: está integrado y funciona de manera similar:e <Tab>
,:vs <Tab>
y así sucesivamente.fuente
,b
para buscar búferes con ctrlp?nnoremap ,b :CtrlPBuffer<CR>
.Puedo recomendar el MiniBufExplorer . ¿Ves también una alternativa a minibufexplorer?
fuente
MiniBufExplorer
está en la parte superior (donde no desperdicia tanto espacio como a la izquierda). O tal vez no entendí tus requisitos.Hay una manera de hacer exactamente eso usando el complemento winmanager . En esta captura de pantalla , combino los complementos NERDTree y MiniBufExpl (github: techlivezheng / vim-plugin-minibufexpl, último commit atm 349a9fbb) en la misma división vertical y lo alterno con F4. En teoría, esta solución debería funcionar para cualquier otra combinación de complementos.
Ejemplo de mi .vimrc
Problemas:
El comportamiento que he logrado está lejos de ser perfecto, pero es un buen comienzo.
fuente