Guía para configurar oh-my-zsh en Ubuntu

🔥
¿Quieres que tu consola se vea así?

Pues estás en el lugar correcto 💖 Seguiremos una serie de pasos para tener una consola más funcional y bonita a la hora de programar.

Instalando oh-my-zsh

La consola por defecto de Ubuntu es bash, pero existe una más poderosa y customizable: zsh. Para instalarla corremos:

sudo apt install zsh

Luego, necesitamos un framework que gestione a zsh. Para esto, instalamos oh-my-zsh con el siguiente comando:

sh -c "$(curl -fsSL <https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh>)"

El instalador nos preguntará si queremos dejar oh-my-zsh por defecto, y le decimos que sí.

Si luego de reiniciar la terminal sigue inicializando bash, podemos hacer un logout y volver a intentarlo. Si aún así no sigue iniciando oh-my-zsh como consola principal, ejecutamos:

chsh -s $(which zsh)

Para luego reiniciar la sesión.

¡Listo! Ya tenemos oh-my-zsh funcionando en nuestro Ubuntu, pero podemos seguir personalizándolo más.

Instalando una nerd font

La font por defecto de la terminal de Ubuntu no es la más linda (en mi opinión), ni tampoco funciona para tener íconos más personalizados en la consola. Para esto, necesitamos una nerd font, que hay muchas por internet, pero la que usaremos aquí es una que me encanta: Cascadia Code, del mismísimo señor Microsoft. Para instalarla, nos dirigimos al repositorio oficial de la font:

https://github.com/microsoft/cascadia-code

Nos vamos a los Releases y descargamos la última versión. Luego, instalamos todas las fonts de la carpeta ttf. Con esto ya tenemos Cascadia Code instalado (recomiendo también dejarla como font principal en VSCode).

Para configurar la font en la terminal de Ubuntu, ve al ícono $\equiv$, luego a Preferences, y en el perfil por defecto (puedes cambiarle el nombre si deseas) activa la opción Custom font y elige Cascadia Code PL.

Instalando el tema Spaceship

En primer lugar, instalaremos el tema Spaceship para oh-my-zsh. Debemos ejecutar los siguientes dos comandos en la terminal:

# Clonar el siguiente repo
git clone <https://github.com/spaceship-prompt/spaceship-prompt.git> "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1
# Hacer un symlink de spaceship.zsh-theme a nuestro directorio de temas personalizados
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"

Ahora, en la terminal, asegurándonos que estamos en home (~), ejecutamos el comando code .zshrc para abrir el archivo de configuración de oh-my-zsh. Cambiamos la variable ZSH-THEME a "spaceship":

# ...
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See <https://github.com/ohmyzsh/ohmyzsh/wiki/Themes>
ZSH_THEME="spaceship"
# ...

Finalmente reiniciamos la terminal y quedará listo.

Instalando plugins y más configuraciones

Una de las grandes ventajas de usar oh-my-zsh es que se le pueden instalar fácilmente plugins, y tiene una comunidad gigante que los mantiene. Para esta guía, instalaremos dos plugins:

git clone <https://github.com/zsh-users/zsh-syntax-highlighting.git> ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone <https://github.com/zsh-users/zsh-autosuggestions> ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Luego de esto, en el archivo .zshrc, cambiamos plugins=(git) por plugins=(git zsh-autosuggestions zsh-syntax-highlighting).

Además, descomentamos la línea que dice COMPLETION_WAITING_DOTS="true".

Puedes visitar el repositorio oficial de Spaceship para más información de muchas más configuraciones.

Finalmente, instalamos el tema Atom One Dark para la terminal de Ubuntu con el siguiente comando:

bash -c "$(curl -fsSL <https://raw.githubusercontent.com/denysdovhan/gnome-terminal-one/master/one-dark.sh>)"

Si (por alguna extraña y sospechosa razón) deseas la versión Atom One Light, ejecuta:

bash -c "$(curl -fsSL <https://raw.githubusercontent.com/denysdovhan/gnome-terminal-one/master/one-light.sh>)"

Iniciando una nueva terminal ya debería estar listo. Estos comandos fueron extraídos del repositorio https://github.com/denysdovhan/one-gnome-terminal.


¡Y listo! Terminamos 😎 Ahora tu terminal debería verse como la imagen del principio de esta guía. Espero que todo esto te ayude para mejorar tu pega como dev. ¡Éxito! 🎉

0
Subscribe to my newsletter

Read articles from Cristóbal Rojas directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Cristóbal Rojas
Cristóbal Rojas