🇯🇵 日本語 | 🇺🇸 English | 🇪🇸 Español | 🇵🇹 Português | 🇹🇭 ไทย | 🇨🇳 中文

¡Potencia tu Shell Fish! Guía de Inicio a la Personalización con Fisher y Oh My Fish 🐟

¡Hola, creadores web! ¿Usan la terminal (¡esa pantalla negra!) en su trabajo de desarrollo diario?
De hecho, personalizar esta terminal a su gusto puede mejorar drásticamente la eficiencia de su desarrollo y, sobre todo, hacer que su trabajo sea más agradable.

Esta vez, explicaremos a fondo cómo personalizar el shell "Fish", que tiene fama de ser moderno y fácil de usar. En particular, con los gestores de plugins como "Fisher" y "Oh My Fish", puedes añadir temas y funciones útiles con la misma facilidad que si instalaras aplicaciones en tu smartphone.

El objetivo de este artículo es que incluso los principiantes experimenten que las cosas "funcionan" simplemente copiando y pegando. ¡Dejemos las teorías difíciles para después! Primero, cambiemos la apariencia y añadamos funciones convenientes para experimentar la diversión de la personalización.


🚀 Primero, preparémonos: ¿Qué es un gestor de plugins?

Antes de empezar a personalizar Fish, expliquemos brevemente qué es un "gestor de plugins".

Es una herramienta que permite añadir, gestionar y eliminar fácilmente la apariencia (temas) y las funciones (plugins) de Fish. Sin él, tendrías que pasar por el tedioso proceso de descargar archivos manualmente, colocarlos en ubicaciones específicas y reescribir los archivos de configuración.

Con un gestor de plugins, puedes automatizar todo ese trabajo problemático simplemente ejecutando un solo comando. Esta vez, presentaremos dos de los más populares.

Ambas son herramientas excelentes, pero tienen características diferentes. Este artículo explicará cómo usar ambas, para que puedas elegir la que mejor se adapte a ti.

*Este artículo asume que el shell Fish ya está instalado. Si aún no lo has instalado, puedes hacerlo fácilmente con Homebrew (macOS) o el gestor de paquetes de tu distribución de Linux.

# Para macOS (Homebrew)
brew install fish

🎣 ¡Probemos Fisher! Personalización al estilo "Simple es mejor"

Primero, probemos Fisher, que atrae por su simplicidad. Todas las configuraciones se consolidan en el archivo `~/.config/fish/config.fish`, lo que facilita su gestión.

1. Instalar Fisher

La instalación es tan sencilla como pegar el siguiente comando en tu terminal y ejecutarlo.

curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher

2. Cambiar la apariencia instalando un tema

Ahora que Fisher está listo, cambiemos la apariencia de tu terminal de inmediato. Aquí, instalaremos un tema simple y popular llamado "nospace".

fisher install jorgebucaran/nospace.fish

En el momento en que ejecutes el comando, la apariencia de tu prompt (la parte `>` o `$` antes de escribir un comando) debería haber cambiado. Como puedes ver, puedes añadir fácilmente temas y plugins simplemente especificando el `nombre_usuario/repositorio` de GitHub después de `fisher install`.

Hay muchos otros temas disponibles. Por ejemplo, probemos también el popular tema "bobthefish", que muestra mucha información.

fisher install oh-my-fish/theme-bobthefish

Nota: Los temas de alta funcionalidad como bobthefish pueden requerir la instalación por separado de fuentes especiales como "Nerd Fonts". Si la visualización se corrompe, intenta revisar la configuración de fuentes de tu aplicación de terminal.


3. Añadir funcionalidad con plugins

Después de cambiar la apariencia, añadamos algunas funciones útiles. Aquí, instalaremos un plugin llamado "z", que te permite volver fácilmente a los directorios que has visitado antes.

fisher install jethrokuan/z

Después de la instalación, intenta moverte por algunos directorios con el comando `cd`. Luego, escribiendo `z` seguido de una parte del nombre de un directorio y presionando la tecla Tab, autocompletará candidatos de tu historial. Por ejemplo, si has navegado previamente a `/var/www/html/my-project`, puedes simplemente escribir `z my-p` y presionar Tab para ir allí, lo cual es muy eficiente.


4. Comprobar y eliminar paquetes instalados

Para comprobar lo que está instalado actualmente, usa el comando `list`.

fisher list

También es fácil eliminar temas o plugins que ya no necesites. Especifica el nombre del paquete después de `remove`. Eliminemos el tema `bobthefish` que acabamos de instalar.

fisher remove oh-my-fish/theme-bobthefish

🐠 ¡Probemos Oh My Fish! Personalización divertida con una gran cantidad de opciones

A continuación, probemos Oh My Fish (OMF). Una gran ventaja de OMF es que muchos temas y plugins están catalogados oficialmente, lo que facilita que los principiantes que no saben qué instalar encuentren algo.

[Importante] No se recomienda usar Fisher y Oh My Fish al mismo tiempo. Si quieres probar OMF después de probar Fisher, se recomienda primero eliminar los plugins de Fisher y luego instalar OMF, o probarlo en un entorno diferente.

1. Instalar Oh My Fish

La instalación también se completa con un solo comando.

curl -L https://get.oh-my.fish | fish

Una vez que la instalación esté completa, se debería aplicar el tema predeterminado de OMF.


2. Encontrar y aplicar un tema

Lo bueno de OMF es que puedes encontrar y probar temas fácilmente. Primero, veamos una lista de temas disponibles.

omf theme

Se mostrará una lista de muchos nombres de temas. Para aplicar un tema que te interese, especifica el nombre del tema después de `omf theme`. Por ejemplo, probemos el popular tema `agnoster`.

omf theme agnoster

Esto por sí solo instalará y aplicará inmediatamente el tema. Prueba varios temas y encuentra tu favorito.


3. Instalar un plugin

Instalar plugins también es fácil. Especifica el nombre del plugin después de `omf install`. Aquí, instalemos el muy útil plugin "fzf", que te permite buscar interactivamente en tu historial de comandos con `Ctrl+R`. (*Requiere la instalación previa del ejecutable principal de `fzf`.)

omf install fzf

Después de la instalación, prueba a presionar `Ctrl+R` en tu terminal. Debería aparecer una lista de tus comandos ejecutados anteriormente, permitiéndote realizar una búsqueda filtrada. Esta es una función tan conveniente que no podrás vivir sin ella una vez que la uses.

Los paquetes disponibles se pueden buscar con `omf search -t` (temas) o `omf search -p` (plugins).


4. Comprobar y eliminar paquetes instalados

Puedes comprobar la lista de paquetes (temas y plugins) instalados con OMF usando el comando `list`.

omf list

Elimina los plugins que ya no necesites con `remove`.

omf remove fzf

🤔 Fisher vs Oh My Fish: ¿Cuál es mejor al final?

Hemos presentado ambas herramientas hasta ahora, pero algunos de ustedes podrían preguntarse: "Entonces, ¿cuál debo usar?". Aquí hay una guía simple para ayudarte a elegir.

Es una buena idea probar uno primero, y si sientes que no te conviene, prueba el otro.


✍️ Avanzado: ¡Personaliza aún más editando directamente `config.fish`!

Incluso sin usar un gestor de plugins, puedes realizar varias personalizaciones editando directamente el archivo de configuración de Fish, `config.fish`. Al combinar esto con la funcionalidad de los plugins, puedes construir un entorno aún más potente.

El archivo de configuración generalmente se encuentra en `~/.config/fish/config.fish`. Los comandos escritos en este archivo se cargarán automáticamente cuando se inicie Fish.

Establecer alias para acortar comandos

Es muy conveniente reemplazar los comandos largos que se usan con frecuencia por palabras clave cortas (alias). Por ejemplo, hagamos que el comando `ls -laF` se pueda ejecutar con `ll`.

Añade la siguiente línea a tu archivo `config.fish`.

alias ll="ls -laF"

Después de guardar el archivo, abre una nueva terminal o ejecuta `source ~/.config/fish/config.fish` para aplicar la configuración. Ahora, simplemente escribiendo `ll` se ejecutará `ls -laF`.

Los alias de comandos de Git también son un clásico.

alias gco="git checkout"
alias gst="git status"
alias gaa="git add ."

Establecer variables de entorno

Las variables que quieres usar en todo el sistema, como la configuración del editor, se establecen como "variables de entorno". En Fish, usas `set -x`. Por ejemplo, para establecer el editor predeterminado en `vim`, escribirías lo siguiente en `config.fish`.

set -x EDITOR "vim"

⚠️ Puntos a tener en cuenta

La personalización es divertida, pero hay algunas cosas a tener en cuenta.


🎉 Conclusión

En este artículo, como primer paso en la personalización del shell Fish, presentamos cómo usar los gestores de plugins "Fisher" y "Oh My Fish", así como los métodos básicos de personalización a través del archivo de configuración `config.fish`.

Al principio, es suficiente con probar las cosas copiando y pegando. Simplemente cambiando la apariencia de tu prompt o pudiendo usar nuevos comandos debería hacer que tu trabajo de desarrollo diario sea mucho más agradable.
A partir de aquí, explora varios temas y plugins, ¡y construye tu propio "entorno de terminal definitivo"!