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
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.