Personalizando zsh: oh-my-zsh

En la anterior entrada os comenté que zsh es un intérprete de comandos para GNU/Linux (también para otras plataformas, como MAC OS) que permite, entre otras cosas, un nivel de personalización mucho más alto que bash.

Para este fin nació oh-my-zsh, que no es más que una aplicación (un framework en realidad) que permite personalizar fácilmente nuestro zsh.

Para ello consta de multitud de plugins y temas y permite adaptar el aspecto y funcionalidad de zsh a nuestras preferencias personales. Es una forma sencilla (*) de realizar cambios en la configuración de zsh.

Para instalarlo, nada más fácil:

$ wget --no-check-certificate http://install.ohmyz.sh -O - | sh

Una vez instalado simplemente editamos el fichero .zshrc, que tendremos en nuestro directorio home.

Para cambiar el tema del prompt modificaremos el parámetro ZSH_THEME. Por ejemplo:

ZSH_THEME=robbyrussell

Si no queremos ningún tema (estaría todo como antes de instalar oh-my-zsh) lo dejaremos así:

ZSH_THEME=""

Existe una lista de temas para poder aplicar en el prompt de nuestro shell favorito, la podéis encontrar en este enlace.

Como indican aquí, también es interesante usar el tema random, que lo que hace es ir cambiando de un tema a otro aleatoriamente. De esta forma podemos ir viéndolos todos y quedarnos al final con el que más nos guste.

Los plugins permiten añadir cosas interesantes, como autocompletado de parámetros de comandos. Por ejemplo, al escribir zypper  (instalador de paquetes de openSUSE) y a continuación escribís in y pulsáis tabulador, os dirá qué parámetros acepta.

Aquí tenéis una lista de los plugins que existen para oh-my-zsh.

Para añadir un plugin simplemente tenéis que añadir el nombre del plugin a la lista entre paréntesis que hay tras el parámetro “plugins” dentro del fichero .zshrc. Por ejemplo:

plugins=(rails git ruby)

Si conocéis más formas de usar oh-my-zsh para mejorar la experiencia con zsh sentíos libres de dejar un comentario.

 

(*) En una próxima entrega veremos una forma de personalizar zsh aún más sencilla que ésta :-O.