Oh My Zsh es un marco de código de abierto, motivo por el cual es mantenido por la comunidad, esto nos permite administrar y mejorar nuestra configuración con la shell zsh.
La shell zsh solo está disponible para sistemas operativos basados en UNIX; en el caso de Linux describiremos la instalación para las distros basados en Debian (Ubuntu) y Fedora (Centos).
Siga los siguientes pasos para poder instalar tanto la shell como Oh My Zsh:
1. Instalar Oh My Zsh
Ubuntu
sudo apt-get install zsh
En la última versión de la distro ya no es necesario instalar git, pero en caso lo necesite
sudo apt-get install git-core
Centos
sudo yum install zsh
sudo yum install git-core
2. Instalar shell Zsh
Recuerda que al momento de instalar Oh My Zsh, este se instala para el usuario actual que está utilizando la distro.
Vía curl
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Vía wget
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
En ocasiones es necesario establecer zsh como shell por defecto, a continuación varios comandos a tomar en cuenta:
chsh -s `which zsh`
chsh -s $(which zsh)
usermod -s $(which zsh) $(whoami)
Si te aparece el mensaje non-standard shell, tendrás que añadir la nueva shell a la lista de shells permitidas por el sistema operativo, para ello copia la ruta completa de la shell (que puedes averiguar con el comando which zsh) y pégala en el archivo /etc/shells, una vez realizado esto vuelve a ejecutar el comando antes mencionado.
También puedes editar manualmente el archivo /etc/passwd
3. Instalar plugins
Ya ubicados con la shell zsh, clonamos los siguientes plugins adicionales:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/antigen.git $ZSH_CUSTOM/plugins/antigen
Editamos con vim el siguiente archivo ~/.zshrc:
vim ~/.zshrc
Configuramos en los siguientes puntos:
Configuramos la sección de plugins:
git zsh-syntax-highlighting zsh-autosuggestions
Antigen es un gestor de plugins para zsh, que actúa de intermediario entre nosotros y el fichero de configuración .zshrc (con antigen es mucho más fácil su gestión).
source ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/antigen/antigen.zsh
Recargamos la configuración:
source ~/.zshrc
Documentación del producto en Oh My Zsh
Social Plugin