Cómo hacer que nuestra terminal luzca mejor? Parte2

2- Haciendo que nuestra terminal sea atractiva (Zsh + Oh-my-zsh)

Ya conocemos una herramienta para mejorar nuestra productividad (tmux), ahora toca otra parte divertida, modificar la terminal para que sea más atractiva e incluso, más productiva!!!

2.1- Instalando Zsh

ZSH, también llamado Zshell, es una versión extendida de BourneShell (sh), con muchas características nuevas y soporte para plugins y temas. Dado que se basa en el mismo shell que Bash, ZSH tiene muchas de las mismas características. Empezar a utilizarlo es muy sencillo.

Tiene muchas similitudes con bash y ksh e incorpora muchas de sus características principales. Algunas de sus ventajas principales incluyen una lista de autocompletar navegable. A diferencia de bash, que únicamente lista los comandos disponibles.

Antes de instalarlo, comprobamos si no se encuentra instalado ya:

cat /etc/shells

# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/usr/bin/tmux
/usr/bin/screen

Como no se encuentra, simplemente se instala:

apt install zsh -y

Se puede checkear la versión:

zsh --version
zsh 5.8 (x86_64-ubuntu-linux-gnu)

Podemos hacer que Zsh sea nuestra terminal por defecto:

chsh -s $(which zsh)

Si se desea por alguna razón regresar a utilizar la terminal por defecto, los siguientes comandos harán la magia:

# Se puede usar:
chsh -s /bin/bash or exec bash

# O
chsh -s /bin/zsh or exec zsh

2.2- Instalando y configurando Oh my Zsh

En las propias palabras de sus creados, Oh my Zsh:

Una vez instalado, su terminal se convertirá en la comidilla de la ciudad o le devolveremos su dinero. Con cada pulsación de tecla en el símbolo del sistema, se beneficiará de los cientos de potentes complementos y hermosos temas. Los extraños se acercarán a ti en los cafés y te preguntarán: «¡Eso es increíble! ¿Eres una especie de genio?»

OhMyZsh es un framework de Zsh que habilita y potencia mucho a esta terminal

Para instalarlo correr:

sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

Aunque también se puede hacer manualmente:

wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh && \
chmod +x install.sh &&\
./install.xh

Una ves instalado:

2.3- Temas de OhMyZsh

El tema (ZSH_THEME) es una variable del archivo zshrc (omz). Para agregar o actualizar el tema, primero se debe instalar (si el tema no está instalado) el tema y luego actualizar la variable del tema (ZSH_THEME).

OhMyZsh viene con temas predefinidos. Pueden ser configurados cambiando la variable ZSH_THEME.

Los temas predeterminados y populares de OhMyZsh son robbyrussell y agnoster que vienen con la instalación de omz.

Vamos cambiar el tema que viene por defecto. Simplemente:

nano ~/.zshrc

# Se busca la variable
ZSH_THEME=" robbyrussell "
# Y se cambia por:
ZSH_THEME="agnoster"

Para aplicar los cambios basta con:

source ~/.zshrc

Hay infinidad de temas, algunos hay que descargarlos, por supuesto…

2.4- El tema Powerlevel10k

Powerlevel10k es un tema para Zsh. Enfatiza la velocidad, la flexibilidad y la experiencia lista para usar.

Primeramente, aunque no es necesario, es altamente recomendado, instalar las fuentes necesarias. Para ello, primeramente, las descargamos:

MesloLGS NF Regular.ttf | MesloLGS NF Bold.ttf | MesloLGS NF Italic.ttf | MesloLGS NF Bold Italic.ttf

Y luego las instalamos, solo dándole doble click y luego haciendo click en Install/Instalar. En mi caso, desde Windows, utilizo XShell. Para que XShell reconozca las fuentes recientemente instaladas, solo basta con reiniciar el programa y luego seleccionarla así:

NOTA: Las fuentes pueden ser instaladas en varios emuladores de terminales: Termius, Moba, Yakuake, Gnome Terminal….

Una vez instaladas las fuentes, se procede a clonar el proyecto:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Ahora solo resta decirle a OhMyZsh que acepte el tema recién descargado:

nano ~/.zshrc
ZSH_THEME="powerlevel10k/powerlevel10k"

Realizado lo anterior salimos de la terminal enviando un exit (NO REINICIAR source ~/.zshrc) y cuando nos logueamos nuevamente nos aparecerá el wizard:

Realizara algunas preguntas de calibración, casi todas relacionadas con las fuentes. Y cuando termine la configuración se tendrá una terminal más funcional, que tiene opciones de autocompletado mejoradas y que muestra más detalles:

2.5- Plugins

Uno de los elementos más buenos de Zsh es que permite la incorporación de plugins.

Zsh-autosuggestion

Uno de los mejores plugins (Zsh-autosuggestion) que existen es el que te va mostrando opciones de auto completamiento mientras se escribe en la terminal.

Para utilizarlo primeramente se descarga y luego se setea en una variable llamada plugins en el archivo de configuración del Zsh:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
nano ~/.zshrc
# Se busca por la variable llamada plugins y se agrega el nombre del plugin, en este caso quedaría de la siguiente forma:
plugins=(git zsh-autosuggestions)

Ejemplo de autocompletamiento:

Zsh-syntax-highlighting

Ya tenemos un plugin para autocompletar, pero y si además le damos color?! Para eso es el plugin Syntax-highlighting.

Primeramente descargamos el plugin:

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

Y luego solo:

nano ~/.zshrc
# Se busca por la variable llamada plugins y se agrega el nombre del plugin, en este caso quedaría de la siguiente forma:
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

Una vez aplicado el cambio, se sale del usuario y se vuelve a acceder al mismo. A modo de prueba:

Antes del plugin:

Después del plugin:

Hay muchos mas plugins, pueden revisar aquí, aquí y aquí.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Autores:

  • Frank Morales
  • Franco Díaz

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Sé el primero en comentar

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*