Una de las formas más efectivas para ser productivo en el computador, es con el uso de la terminal.
Utilizar la terminal nos permite ser rápidos y eficientes. Con tan solo escribir un par de comandos, podemos realizar múltiples acciones a la vez en vez de andar de click en click con el el entorno gráfico con el mouse.
Muchos programadores saben esto. El uso del teclado es veloz en comparación del mouse.
Si eres un programador, lo más probable es que lo sepas. En caso contrario, aprendiste algo nuevo. Así que te invito a intentarlo. No tengas miedo y verás que te solucionara muchos problemas que no puedes hacer con el mouse.
La mayor parte de los programadores utilizan la terminal en su dia a dia, aunque sea para lo mínimo. Sin embargo, quedarse con la configuración que viene por defecto, no es suficiente.
Necesitas darle sabor, gusto y estilo como si de tu comida favorita, o algo que te guste personalizar, se tratase.
Hace tiempo te invité a . Hoy quiero enseñarte como potenciar ese superpoder.
Llevo unas semanas utilizando ZSH en la terminal y he de admitir que es una maravilla. Puedo dar estos ejemplos para mostrar un pequeña parte de lo que puedes hacer:
- Puedo escribir comandos cortos en vez de largos.
- Autocompletado.
- Navegación inteligente. Al presionar
tab
, te muestra un listado de lo que quieres decir. - Resaltado en los comandos, indicando si lo estas escribiendo bien o no (muy util).
- Historial de comandos.
- Personalización (extra xD).
- Y MAS.
En lo personal, dar estilos y configurar mi terminal, me ha servido en el momento de trabajar. Escribo menos y produzco más. En adicional, es un estilo diferente en el cual estoy acostumbrado a ver.
Esto me lleva a querer compartir con ustedes cómo instalar ZSH y Oh-my-zsh. Así podrán probarlo para que los ayude a ser productivos, escribiendo menos y produciendo más.
Aclaratoria. se debe cumplir ciertos requisitos:
Tener sistemas operativos UNIX. Como Linux, MacOS, y para el caso de Windows, WSL2.
- Instalar ZSH.
En mi caso, lo instalé en Linux. Empecemos.
Instalación de ZSH
Antes de iniciar con oh-my-zsh:
1. Instalemos ZSH.
sudo apt install zsh
2. Para confirmar que lo hemos instalado bien, escribe en la consola:
zsh --version
Si te sale la versión, es porque lo instalaste correctamente (No importa el numero que te salga), de lo contrario te dirá el comando no existe. En mi caso, la tengo en la versión 5.4.2.
3. Conviértelo en shell por defecto.
chsh -s $(which zsh)
4. Reinicia el computador y vuelve abrir a terminal (Puedes abrir la terminal con ctrl+t
o ctrl+cmd
).
Felicidades. Desbloqueaste la habilidad de zsh. Pasemos ahora con oh-my-zsh.
Instalación de Oh-my-zsh
Hay dos formas de realizar la instalación: con wget o con curl.
Para curl:
sh -c \"$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)\"
Para wget:
sh -c \"$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)\"
Nota: En el caso de que uno no te funcione, como un error de que el comando no existe, prueba con la otra opción. Yo lo instale con curl.
En el caso en que no te salga la presentación de arriba, cerramos y volvernos abrir la terminal, y… TA DA. ¡Está lista!.
Es momento de ponerle temas para darle un diseño diferente y mamadisima con los plugins Para asi tener una terminal hermosa y mamadisima (?).
Themes
Por defecto se encuentra el tema de robbyrussel
. Si quieres cambiarlo con otro, debes dirigirte al archivo .zshrc
(acá se guarda toda la configuración de zsh). Antes de ponernos a ello, instalemos Powerline Fonts para evitar futuros problemas.
sudo apt install fonts-powerline
Una vez completado, accedemos desde la terminal para, con el editor de tu preferencia, para cambiar el tema. Debes escribir:
nano ~/.zshrc
Deberás ver algo como esto:
Dirigete a ZSH_THEME=\"robbyrussel
y cambia robbyrussel
por agnoster.
Guardamos con ctrl+o,
presionamos enter
y luego salimos con ctrl+x
¡Y listo! Ya tienes un tema diferente para la terminal. Pero, apuesto a que quieres algo como esto:
Si es asi, se recomienda altamente, pero no necesario, de Meslo Nerd Fonts
. Descargandolo 👉👈 .
Seguimos. Instalamos powerlevel10k:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
Y lo luego lo colocamos como tema:
nano ~/.zshrcZSH_THEME=\"powerlevel10k/powerlevel10k\"
Reiniciamos la terminal y te debe salir esto:
Si no te sale el símbolo del rombo del inicio, es porque no tienes Meslo Nerd Fonts. Si no te importa, puedes continuar. De igual forma funcionará sin problemas.
Lo configuras según tus gustos y la terminal será mucho más agradable que la que vemos a dia a dia.
Plugins
El momento que todos estabamos esperando ha llegado. Es hora de poner MAMADISIMA al shell con plugins.
Una shell con plugins puede ser mucho mas productiva que una simple. Incluso eficiente y rápida. Por ello enseñaré que necesitan. Instalemos zsh-syntax-highlighting
y zsh-autosuggestions
zsh-syntax-highlighting:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
zsh-autosuggestions:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
Lo añadimos a la lista de plugins de .zshrc
.
plugins(
... zsh-autosuggestions zsh-syntax-highlighting )
¡Perfecto!. Hemos logrado tener el diseño de mi terminal de trabajo.
Puedes añadir otros plugins además de los que vienen por defecto. Pueden encontrar más información en
Mis Plugins
Por ultimo, compartiré mi configuraciòn de ZSH. Este es mi listado de plugins:
Terminal
zsh-syntax-highlighting
——- Colores a los comandos.zsh-autosuggestions
————- Sugerencia de comandos y autocompletado.zsh reload
—————————- Recarga zsh sin necesidad de reiniciar la terminal.alias-tips
—————————- Recomienda alias y para git.
Herramientas
extract
——————————- Plugin para descomprimir diversas extensiones archivos comprimidos.colored-man-pages
————— Le agrega color al comando man. Comando de ayuda.sudo
———————————— Permite ejecutar un comando en sudo con presionar dos veces \»escape\».history
——————————- Muestra el historial de comandos de forma mas descriptiva.catimg
———————————- Muestra las imagenes desde la terminal (No todas salen bien pero es util).urltools
—————————— Decode and encode url.
Entornos de trabajo
git
————————————- Añade alias de git para mejorar productividad.nvm
————————————- Añade autocompletado para nvm.npm
————————————- Añade alias para npm.sublime
——————————- Añade alias para sublime.fancy-ctrl-z
———————- Realiza un cambio de la terminal a vim.
Documentación
frontend-search
—————— Realiza busquedas de lo que necesites del frontend al navegador.node
———————————– Busca la documentacion o muestra el path del mismo en el terminal.
Otros
chucknorris
———————— Broma de chuck norris xd.emoji
———————————- Listado de emojis.