Cómo tener un terminal

¿Usas mucho el terminal? ¿Te gustaría tener autocompletado para un sin fin de comandos, un buscador de ficheros potente, facilidades de navegar por directorios, documentación en terminal con ejemplos y además iconitos? ¡Porque no nos olvidemos de los iconitos! Si es así, este es tu tutorial.

Una imagen vale más que mil palabras, con lo cual, unos cuantos videos valdrán muchas más:

Autocompletado de git:

Podremos navegar fácilmente por los últimos directorios usados con Z:

Tendremos un fuzzy finder para encontrar todo lo que queramos con fzf:

El buscar documentación será mucho más fácil con tldr:

¿Tú también quieres todo esto? Sigue este tutorial para tener el mejor terminal de todos.

Requisitos

Instalación de ZSH

Todo es mucho más fácil con Homebrew y si estás en Linux también disponemos de un gestor de paquetes parecido a Homebrew: Linuxbrew. Si estás en Windows, lo que estás es de mala suerte, ya que no se puede a priori. Prueba a mirar con el subsistema de de Bash para windows, quizás ahí se pueda hacer. Este tutorial te explica cómo instalar zsh en Windows.

En el resto del tutorial usaremos Homebrew —si empleas otro gestor, los pasos serán muy parecidos—. De tener problemas, tendremos que mirar en la documentación la sección de instalación de cada utilidad que se mencione.

Ahora bien, para comenzar instalaremos zsh con Homebrew. Así que abrimos el terminal e introducimos el siguiente comando:

Además instalaremos las zsh-completions, ya que son necesarias para oh my zsh (utilidad que veremos más adelante):

Lo siguiente será tener git instalado, para más tarde poder instalar oh my zsh:

Bien, ahora instalaremos oh my zsh. Oh my zsh gestiona de forma automática la configuración de zsh, además cuenta con un montón de plugins, temas y utilidades.

Para instalarlo ejecutaremos desde terminal el siguiente comando:

Ahora reiniciamos el terminal y veremos que nos ha configurado ya zsh:

Instalación de Oh my zsh

Prueba a hacer cd desde una carpeta cualquiera y dale al tabulador, podrás navegar usando o bien el tabulador o las flechas del teclado.

Nota: Si quieres volver al terminal de bash por defecto, usa el siguiente comando: chsh -s /bin/bash.

Cambiar el tema

Vamos a ir más allá y vamos a instalar un tema como el que mostraba al principio:

Clonar tema de Powerlevel9k

Una vez hecho esto, hay que editar nuestro fichero .zshrc, que sería lo equivalente al .bashrc. Usaremos nano para ello:

Editar con nano .zshrc

Modificar el tema por defecto por el siguiente:

Cambiar ZSH_THEME con nano

Reiniciamos el terminal y redoble de tambores…

Terminal reiniciado con el nuevo tema aplicado

Uff, qué feo. ¿Por qué? Pues porque este tema usa caracteres especiales para mostrarlos como iconos, con lo que tendremos que descargar una fuente de tipo powerline.

Instalación de fuentes

Y, como no, hay un tap de fuentes en Homebrew, con lo que descargar e instalar la fuente será cuestión de dos comandos. Primero registramos el repositorio de fuentes:

Brew tap caskfroom/fonts

Y, una vez hecho el tap, podemos instalar la fuente que queramos de este repositorio de fuentes. Yo uso la Meslo, con lo cual instalaré esa:

Nota: prueba a escribir brew cask install font-meslo y dale a tabulador, fíjate que te autocompleta. Esto es debeido a que oh my zsh incluye un plugin de Brew, pero hay mucho más.

Brew cask install

Actualizar la fuente en Terminal

Por último, modificamos la fuente del terminal para coger la fuente que acabamos de instalar. Con lo que debemos ir a preferencias y después a perfiles:

Pantalla de profiles dentro de las preferencias del terminal

Dentro de Texto, le damos a cambiar fuente y elegimos una de las fuentes de Meslo. Hay varios pesos, elegir el que más os guste, a mí me agrada el peso M con un tamaño de 13 puntos:

Seleccionar fuente Meslo

Ahora sí que tiene mejor pinta:

Fuente powerline en terminal

Los colores siguen sin ser de mi gusto, con lo que os invito a que elijáis un tema más apto. Yo uso un Solarized Dark personalizado. Además, en vez de hacer uso de la aplicación nativa del terminal, uso iTerm 2. El tema de Solarized Dark para terminal nativo podéis encontrarlo aquí, con tal de tener algo parecido a esto:

Terminal con tema

Qué bonico 😍.

Instalar utilidades

Instalar Z es trivial con Homebrew:

Al igual que fzf:

Y tldr no podría ser menos:

Y ya podemos hacer todo lo que mostramos al principio del tutorial. Así de fácil. Os recomiendo que echéis un vistazo a su documentación con tal de aprender las herramientas.

Conclusiones

¿Qué pasa si me cambio de máquina? ¿Tengo que hacer todos estos pasos y estar configurando todo de nuevo? No, por supuesto que no. Podemos hacer uso de un repositorio de Github para tener versionada nuestra configuración, y una vez cambiemos de máquina clonarlo y tener un script que instalaría y configuraría todo. Esto son los denominados dotfiles.

Aquí os muestro mis dotfiles, donde pongo las opciones del Mac como a mí me gustan, instalo todos los programas que suelo usar, configuro mi terminal e instalo y aplico las fuentes.

En otro tutorial os enseñaré como hacer vuestros propios dotfiles. ¡Hasta entonces!