Vim: explicación de ventanas, pestañas y buffers

[Pincha aquí para ver otros artículos sobre Vim]

Cuando uno empieza a usar el potentísimo editor de texto Vim y consigue pasar de esa primera fase en la que nos horrorizamos de que todo sea tan distinto y poco intuitivo a la segunda fase en la que entendemos la filosofía de trabajo del editor (y es resto de editores nos empiezan a parecer poco intuitivos), es aún posible que nos líemos un poco con los conceptos de Vim de vista, ventana, buffer y pestaña.

Vamos a ver que es cada cosa y cómo suelen usarlas los usuarios avanzados de Vim, pero antes de explicarlo pongo un dibujito muy mono (pincha para ampliarlo mucho, es grande pero ocupa poco):

  • Vista: La vista en Vim es lo que vemos en el monitor. Una vista estará siempre dentro de una pestaña (si sólo tenemos una pestaña abierta la vista estará en la única pestaña) y a su vez puede contener una o más ventanas dentro.

  • Ventanas: En Vim una ventana es una subdivisión de la pantalla total que el programa puede usar. Es decir, si estás editando un fichero entero y éste ocupa toda la pantalla que ocupe el Vim, tienes una ventana. Si haces :split o :vsplit, tendrás ahora dos ventanas, viendo el mismo fichero (buffer). Si ahora en una de ellas haces de nuevo :split, tendrás tres ventanas. La utilidad de las ventanas es que nos permiten ver varios buffers o varias partes de un mismo buffer simultáneamente, lo cual en ocasiones es muy útil para programar. Como mínimo vas a tener siempre una ventana porque si cierras la última se cierra el programa y en cualquier momento estamos trabajando a través de una (o varias) ventanas. Incluso cuando estamos en una pestaña, realmente estamos en una ventana que está dentro de una pestaña.

  • Buffers: Los buffers son el concepto más importante de los de esta lista porque son los que contienen realmente los ficheros que abrimos, por lo que podemos pensar en los buffers como los ficheros cargados en memoria; si cerramos un buffer se cierra realmente el fichero y si abrimos un buffer se abre otro fichero. Esto no sucede con ventanas y pestañas porque cuando cerramos una pestaña a través de la cual estamos viendo un buffer el buffer sigue existiendo porque sólo hemos cerrado la ventana. Podemos hacer una metáfora diciendo que las ventanas son las ventanas de una casa y los buffers son las personas; si cierras la ventana la persona sigue estando detrás. La única excepción es cuando cerramos la última ventana abierta en la única pestaña que queda; en ese caso Vim considera que ya no vamos a trabajar más, dado que siempre trabajamos a través de una ventana, y por lo tanto cierra también todos los buffers que hubiera abiertos.

  • Pestañas: Las pestañas, una funcionalidad relativamente reciente de Vim permiten mantener simultaneamente varias vistas, cada una de las cuales puede contener una o más ventanas, y en esa única o múltiples pestañas podemos estar viendo uno o más buffers.

Receta 100% Italiana: Pasta al pomodoro / Pasta al tomate

Voy a poner una receta italiana de mi italiana favorita... bueno, de mi persona favorita en general, mi novia. Es una receta sencilla pero que en España (y muchos otros países, imagino) nunca la encontrareis bien hecha (la pasta estará blanda y deshecha, el tomate ácido o frito, la salsa mal mezclada, etc, etc).

Imagino que en Italia habrá tantas recetas de pasta al pomodoro como mammas, pero esta es una muy buena y sencilla.

Article continues inside; click here to read it and comment (1052 words)

Configuración absurdamente rápida del firewall Shorewall

Shorewall es un software que permite crear más o menos fácilmente un firewall a partir del firewall interno de Linux (IPTables). Shorewall viene con casi todas las distribuciones de Linux, así­ que si no lo tienes instalado busca el paquete que por ahí andará. Este artículo detalla solamente (y de forma muy básica) la configuración de Shorewall para un ordenador conectado a Internet a través de una pasarela (sea esta un router DSL u otro ordenador) y que está integrado en una red sencilla. No se detallará la instalación, así que, insisto, si puedes instala el paquete de tu distribución.

Lo primero que debo decir es que no soy un experto, ni mucho menos, de shorewall; de hecho aprendí a medio usarlo ayer y este artículo es más que nada una referencia futura. Pero esta configuración a mi me funciona y me imagino que podrá ser útil a más gente.

Article continues inside; click here to read it and comment (1522 words)

Vim en 2 minutos

Accede al cuerpo del mensaje para ver el contenido completo.
Article continues inside; click here to read it and comment (3515 words)

The End Is Near: I switched from Mandriva to Ubuntu

  • 1995: I installed a Red Hat distribution. It was crap mostly because of the RPM-hell, but better than MS-DOS or Windows 95, so I kept it.
  • 1996: I installed Debian. No RPM-hell but nice apt-get. Loved it.
  • 2004: My blood boiled after and entire afternoon trying to make a scanner work, which I knew was supported by SANE. Deleted the Debian and installed Mandriva. The scanner, and almost everything else, worked at once.
  • 2009: After five years using and advocating Mandriva and making fun of the average Ubuntu user I switched to KUbuntu 9.04. Talk about consistency.
So, why?. Well, it's not like Ubuntu has been better all the time that Mandriva and I just keept resisting for brand loyalty; I've been testing almost every major Ubuntu release, and still found the current (at the time) Mandriva version superior. Superior for me means that more hardware was detected and configured to work, the KDE desktop was better configured and integrated (I don't use the lobotomized Gnome), and the Mandriva administration tools were superior.

But two weeks ago I tested KUbuntu 9.04 and found it superior. The hell froze. It was superior because:

o All the things that Mandriva never got really right on my Sony Vaio just worked on Ubuntu. This include:

  • The suspend to disk and RAM (in Mandriva about 30% of the time the computer would never came back from suspend to RAM, and suspend to disk never worked.)
  • The sound; Mandriva pulseaudio configuration would sometimes leave me without sound, usually when opening a flash video from Firefox or coming back from suspend to RAM. I fixed that killing pulseaudio and restarting the sound system, but it was a pain.
  • The Firefox addons. Ubuntu uses an special Firefox extensions that install Flash, Java, and other things automatically the first time you need it. It shows a wizard and installs everything, like in Windows. With Mandriva you need to go chasing the plugins on the net and install them yourself, or fiddle with repositories. Ubuntu has some other user-friendly niceties like these, like the NVidia/ATI driver installer and configurator (envy-ng.)
o The speed. Holy cow, this thing is fast! It's not only much faster than Mandriva (much faster booting, faster desktop, much better user experience all around) is also much faster than previous Ubuntu versions.

There is only one thing I'll miss from Mandriva, and it's its awesome DrakConf. KUbuntu has a loosy collection of configuration programs under "System", some other things you're supossed to configure with KDE "SystemSettings" and some other things you are supossed to configure clicking on some taskbar icons, but Mandriva DrakConf got most of these under a single, user friendly GUI and it also got a lot more configuration modules than Ubuntu have.

So, Ubuntu users, you can mock me now. I'll not reply, as a penitence.