Soy un gran fan de la interfaz de línea de comandos… ¡Odio usar el ratón de mi ordenador! Esto me motivó a buscar grandes herramientas para mejorar mi experiencia de usuario en la CLI. Me encontré con Oh-My-Zsh durante mis prácticas. Algunos amigos me convencieron de usar este shell por su simplicidad y ajustabilidad. Como un bono, el CLI es extensible con muchos plugins.
Esta es una lista de sus capacidades:
Validación de comandos
Corrección ortográfica
Compartir el historial de comandos entre todos los shells en ejecución
Preguntas temáticas (Agnoster, RobbyRussell, …)
Historia de directorios
Se pueden iniciar/apagar scripts a través de zshenv, zprofile, zshrc, zlogin, y zlogout
Fuertes capacidades de autocompletar. Puedes usar la tecla TAB para navegar por las diferentes opciones y usar enter para seleccionar la carpeta correcta. Bash, por ejemplo, imprimiría todas las opciones. Esto es bastante spam y contamina tu scrollback.
Agrega plugins: por ejemplo, el plugin Git con una enorme lista de útiles alias Git. Este plugin muestra la rama activa y da información visual sobre su estado Git: – Verde: rama si no se han producido cambios – Amarillo con un icono de círculo: archivos sin seguimiento – Amarillo con un icono de más: archivos listos para ser confirmados
Estoy realizando esta guía de instalación en mi máquina virtual Ubuntu 16.04. Para mostrar el poder subyacente de Oh-My-Zsh, instalaré el plugin Git (Git-core). Este plugin proporciona información visual sobre el estado de Git de un proyecto.
Instalar Oh-My-Zsh desde el repositorio de Robby Russell $ sh -c “$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”
Instala la fuente Powerline para aderezar tu CLI con iconos $ sudo apt install fonts-powerline
Cambia el tema de ‘robbyrussell’ a ‘agnoster’ para el legendario tema Oh-My-Zsh $ nano ~/.zshrc
Busca la variable ZSH_THEME y cámbiala:ZSH_THEME="agnoster"
No me gusta que el tema muestre mi nombre de usuario y mi host. Para deshacernos de esto, cambiamos el directorio a $ cd ~/.oh-my-zsh/themes
A continuación abrimos el archivo del tema para ‘agnoster’ en el editor $ nano agnoster.zsh-theme
Ahora podemos cambiar el ‘Main prompt’. No necesitamos prompt_context en la función build_prompt(). Simplemente comenta esta línea o elimínala. Por último, cambie la variable PROMPT a $(build_prompt).
Para ver realmente el tema, tiene que originar su archivo .zshrc así: source ~/.zshrc. Si todo ha funcionado bien, deberías ver algo como la imagen de portada
Extra: Establecer zsh como nuestro shell por defecto. Ejecuta esto en tu shell por defecto, en la mayoría de los casos este será bash. Si ejecuta este comando en zsh, no cambiará nada: $ chsh -s $(que zsh)
Nota: Si usa sudo cambiará el shell para root, pero no para su usuario de trabajo. Además de eso, asegúrese de cerrar la sesión y volver a iniciarla para ver los cambios.
Todos los plugins listados en la página Github de plugins están preinstalados con Oh-My-Zsh en ~/.oh-my-zsh/plugins. Los plugins personalizados se pueden instalar en ~/.oh-my-zsh/custom/plugins. Para utilizar un plugin, sólo tiene que añadirlo a la lista de plugins en su archivo ~/.zshrc. Añada con prudencia, ya que demasiados plugins ralentizan el inicio del shell. Deje un espacio en blanco entre cada plugin.