Personalizado tu terminal con zsh en Linux

0





 

Vamos a necesitar unos Pre-Requisitos para poder instalar zsh y el framework oh-my-zsh que sirve para darle aún más funcionalidad a la terminal por medio de plugins.

sudo apt install git curl wget -y

1. Instalación de ZSH

sudo apt install zsh

2. Descargar y ejecutar Oh My ZSH

## CON CURL

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

 

 

## Instalar usando wget

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/

install.sh -O -)"



3. Desinstalación de Oh My ZSH

uninstall_oh_my_zsh

4. Fuentes necesarias

Es posible que cada Tema que instalemos necesite alguna fuente adicional porque a veces vamos a ver símbolos raros, la más común es powerline, que la instalamos con apt.

sudo apt install fonts-powerline

5. Una vez instalado Oh My Zsh!, se creará un archivo de configuración oculto en la carpeta del usuario (~/.zshrc).

cat ~/.zshrc

Y además vamos a tener una carpeta donde vamos a poder ver entre otras cosas los plugins, los temas, templates.

ls ~/.oh-my-zsh/plugins

ls ~/.oh-my-zsh


6- Temas y plugins

Al momento de instalar un tema o un plugin es necesario decirle a zsh que los tome, esto lo hacemos en el archivo de configuración (~/.zshrc) el cual ingresamos a modificar con nuestro editor preferido:

nano ~/.zshrc

Y los parámetros a modificar por lo general son

ZSH_THEME= "......." o plugins=(............)

6.1- TEMAS

Tene en cuenta que a veces son necesarias algunas funciones adicionales como comenté anteriormente, pero una vez aplicadas podemos especificar el tema en el archivo de configuración .zshrc, dependerá del tema que uses, por ejemplo el que viene por defecto es:

ZSH_THEME="robbyrussell"

Aunque uno de los más populares es agnoster, recordá tener la fuente mencionada.

ZSH_THEME="agnoster"

Para ver los temas disponibles vamos a themes

ls ~/.oh-my-zsh/themes

6.2- PLUGINS

Ejemplo 1: zsh-syntax-highlighting muestra qué comandos están bien escritos o si existen y además los que están mal escritos o no existen.

Lo instalamos haciendo:

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

Ejemplo 2: zsh-autosuggestions muestra sugerencias y predice los que quieres hacer en base a los comandos más utilizados. Con la flecha para la derecha tomamos el comando, y con Ctrl + r vemos el history igual que en bash.

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

Abra actualizamos el archivo ~/.zshrc

nano ~/.zshrc

Agregamos el nombre del plugin a la lista, separados por un espacio.

plugins=(plugins...zsh-syntax-highlighting zsh-autosuggestions)

7- Comandos necesarios para entender la shell de Linux
7.1- Saber que shells están instaladas en el sistema.


cat /etc/shells

7.2- Saber la shell actual

echo $SHELL

Otra forma es usando ps

ps -p $$

7.3- Cambia la shell a zsh

Cambiamos la shell del usuario actual

chsh -s `which zsh`

En el caso de querer cambiarle la shell a otro usuario:

sudo chsh -s /usr/bin/zsh USUARIO

7.4- Para que los cambios surtan efecto

Es necesario cerrar la terminal y volver a abrirla. Aunque a veces es necesario reiniciar el Sistema Operativo.
Pero podemos usar el comando source para que aplique los cambios de inmediato

source ~/.zshrc

7.5- Si nos gusta Zsh, podemos volver a bash de la siguiente forma:

chsh -s `which bash`

7.6- Saber la versión de ZSH

zsh --version

8- Template

Por defecto vamos a contar con un template que viene apenas instalamos, esta en ~/.oh-my-zsh/templates/zshrc.zsh-template el cual podemos copiar para otros usuarios.

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

Ahora a jugar hasta encontrar el punto justo para nuestro estilo. Recomiendo hacer configuraciones para tu usuario y para el root, así diferenciamos bien los usuarios.
 

9- Alias en ZSH

Recordá que los alias que tenías en .bashrc no van a funcionar por lo que los tenes que copiar en el archivo de configuración de .zshrc, podes colocarlos al final y recordá usar el comando source para cargarlos en la sesión actual.


Entradas que pueden interesarte

Sin comentarios