Vim, buffers etc

Hola,

Ya hablé de las pestañas de Vim. Ahora toca hablar de los buffers y de contar como gestionarlos.

Inicialmente las pestañas en Vim, de las que hablo en el otro artículo, sirven para cambiar de estructura de pantalla o para tener una diferenciación a nivel de UI. Los buffers son una diferenciación a nivel de contenido. Los buffers representan los archivos que tiene abiertos el programa controlarlos nos permite cambiar el contenido de las diferentes ventanas y mandar archivos abiertos a un segundo plano, entre otras cosas.

Para mostrar los buffers abiertos podemos usar 'ls' o ':buffers'. Si buscáis en la ayuda podéis ver todos los diferentes flags que aparecen en el listad para entenderlo un poco mejor.

Podemos cambiar de buffer actual usando muchos comandos molones, ejemplos:

':bprevious' o ':bp': Cambia el buffer activo por el anterior en la lista.

':bnext' o ':bn': Cambia el buffer activo por el siguiente en la lista.

':b NOMBRE': Cambia al buffer que contenga NOMBRE en su nombre.

':bN': Cambia al buffer número N.

':bdelete' o ':bd': Cierra el buffer. Por defecto el actual pero se puede decidir cuál. Buscad.

Con estos podemos jugar mucho pero no se entiende el verdadero potencial hasta que se juega de verdad. Una vez entendamos cómo funcionan comprenderemos Vim por dentro y sabremos lo que ocurre cuando nos salta a otro fichero con algún comando loco como 'gf'.

Una cosa un poco molesta de esto es que por defecto te obliga a guardar los cambios en los buffers antes de abrir otros nuevos. Esto se debe a que en cierta manera “cierra” los archivos al cambiar a otro buffer. Para evitar estos molestos mensajes y la obligación de guardar los cambios o perderlos se puede activar la opción 'hidden' para que Vim considere los buffers que abandonamos buffers abiertos pero ocultos. Así se comportan normal y mantienen los cambios pero no se muestran en ninguna parte de la pantalla.

Investigad también, para setearlo:

set hidden

Además Vim tiene un explorador de ficheros integrado llamado netrw. Controlando los buffers y este explorador podemos ir cambiando de fichero sin salir nunca del programa y si dominamos los splits y las pestañas podemos crear un entorno de desarrollo realmente potente. Ejemplo: dividir la pantalla en una columna lateral con el explorador que al seleccionar un fichero nos lo abra en la parte principal y tener otras pestañas para guardar diferentes layouts.

Probad, investigad y me contáis.

Iré añadiendo más cosas en esta línea hasta que seamos todos los poderosísimos amos del editor.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s