571 - Batalla de terminales en Linux. Wezterm
La #terminal es una herramienta fundamental en #linux, y es la que mas utilizo. Recientemente reemplacé #kitty por #wezterm por algunos caracteres
Llevo mas de cuatro años, como mínimo menos utilizando Kitty, y muy a pesar mío, tengo que cambiarlo por otro terminal. Parece una tontería, pero la realidad es que no me ha resultado fácil, este cambio. He estado probando todo tipo soluciones antes de tomar esta decisión, pero lo cierto es que no he tenido mas remedio. Estaba haciendo piruetas informática para mantener Kitty, intentando obviar la realidad, y es que algo no estaba funcionando correctamente. Así, que en en este episodio te voy a contar porque he abandonado Kitty, y porque finalmente me he decantado por Wezterm, en lugar de regresar a otro de mis favoritos como es Alacritty.
Batalla de terminales en Linux. Bienvenido Wezterm
Un paseo por el pasado
Como sabes, la terminal, es una herramienta fundamental para mi. Básicamente trabajo siempre en la terminal, tanto para escribir, como para editar código, etc. Actualmente, la estoy utilizando para casi cualquier cosa, aunque como bien sabes, principalmente el objetivo es escribir código con Neovim.
En este caso, en el de escribir código, suelo tener de dos a tres terminales abiertas, y suelo abrir y cerrar continuamente alguna de ellas. Para ejecutar código, para ver el comportamiento, etc.
En las últimas semanas tenía un problema con la aparición de algunos caracteres extraños al pulsar la tecla mayúsculas, y de forma completamente aleatoria.
Inicialmente responsabilicé a Neovim, y en este sentido desactivé todos los complementos que utilizo, volviendo a activarlos uno a uno, para comprobar o intentar localizar al responsable.
Sin embargo nada de esto dio fruto, mas que nada por la aleatoriedad de los sucesos, así que decidí probar con otro terminal, y esto dio lugar a la batalla de terminales.
Batalla de terminales
En este punto decidí, dar un repaso no solo a los terminales que había estado utilizando hasta el momento, sino que también estuve mirando que había actualmente en el mercado. Siempre y cuando cumplieran una serie de requisitos básicos para mi, como por ejemplo, que muestre imágenes directamente en la terminal, o que soporte la ligadura en fuentes. Y parece mentira, esas dos condiciones ya han acabado con muchas de las opciones que actualmente existen.
Tengo que decir, que tanto Kitty como WezTerm son tremendamente similares en lo que a sus posibilidades, aunque no tanto en su implementación. Por ejemplo, tanto uno como otro soportan tanto pestañas como paneles, ligaduras y mucho mas. Aunque tengo que decir, que la aproximación de uno a otro son ligeramente distintas.
WezTerm
WezTerm es un emulador de terminal de código abierto y multiplataforma diseñado para proporcionar una experiencia de terminal moderna y eficiente. Está desarrollado por Wez Furlong y se centra en ofrecer características avanzadas, alto rendimiento y una interfaz visual agradable para usuarios que trabajan con la línea de comandos de forma regular.
Algunas de las características de este terminal, y que seguro verás reflejado en Kitty son las siguientes,
- Rendimiento Mejorado: WezTerm utiliza técnicas como la aceleración por GPU para mejorar el rendimiento, permitiendo el renderizado rápido y suave de texto y gráficos.
- Soporte para Ligaduras de Fuentes: WezTerm tiene soporte nativo para ligaduras de fuentes, lo que mejora la legibilidad y estética del texto.
- Gestión Avanzada de Pestañas y Paneles: Ofrece pestañas y paneles como características integradas, permitiendo a los usuarios organizar y trabajar con múltiples terminales en una sola ventana.
- Explorador de Archivos Integrado: WezTerm incluye un explorador de archivos integrado que permite la navegación y gestión de archivos directamente desde el terminal.
- Representación de Imágenes Integrada: Tiene un sistema integrado para la representación de imágenes, permitiendo que programas muestren imágenes directamente en el terminal.
- Configuración Personalizable: Es altamente personalizable a través de archivos de configuración en formato TOML, lo que permite a los usuarios ajustar la apariencia y el comportamiento según sus preferencias. La configuración se realiza con Lua, otro punto a favor, dado que como sabes, para configurar Neovim, también se utiliza Lua.
- Compatibilidad Multiplataforma: WezTerm es compatible con Windows, macOS y Linux, lo que lo hace accesible para una amplia variedad de usuarios.
- Soporte para Wayland: Ofrece compatibilidad con el servidor de pantalla Wayland, una característica que puede ser especialmente útil para aquellos que utilizan entornos de escritorio que se basan en Wayland en lugar de X11. Esta es otra de las características diferenciales de WezTerm, respecto a Kitty.
- Desarrollo Activo y Comunidad: WezTerm cuenta con un desarrollo activo y una comunidad de usuarios en crecimiento. La documentación está bien mantenida para ayudar a los usuarios a aprovechar al máximo el emulador de terminal.
Instalación
En el caso de ArchLinux, la instalación es tan sencilla como ejecutar el siguiente comando en una terminal,
sudo pacman -S wezterm
O en el caso de que quieras instalarlo desde los repositorios AUR, lo puedes hacer con,
paru -S wezterm
En el caso de Ubuntu, lo puedes instalar desde los repositorios oficiales, ejecutando los siguientes comandos,
sudo apt update
sudo apt install wezterm
También tienes la opción de instalar la última versión descargando el paquete deb desde la página de versiones de GitHub, seleccionando el .deb
correspondiente de la última versión. Aunque como sabes esta no es, ni mucho menos mi opción preferida.
Por último, tanto en el caso de ArchLinux, como en el caso de Ubuntu, y dado que se trata de una herramienta implementada en Rust, siempre la puedes instalar utilizando cargo
.
Algunos detalles
Un detalle interesante que me he encontrado es que aunque lances varias terminales únicamente verás un proceso corriendo, al contrario de lo que sucede con otros emuladores de terminal.
Sobre la configuración, ya te puedes imaginar que esto es un empezar y no terminar. La cuestión es que ya solo configurando los atajos de teclado para que no coincidan con los de Neovim, la cosa se está poniendo realmente complicada. Creo que esta tarde he tenido un esguince de dedos. En este caso, he configurado los atajos de teclado necesarios para poder utilizar tanto las pestañas como los paneles, de forma sencilla… o todo lo sencilla que he podido.
Ahora mismo tengo poco configurado, en particular, el tema, en concreto una variante de Ayu, que es el tema que tengo configurado en casi cualquier sitio que te puedas imaginar. La tipografía, que en este caso es JetBrains Mono, en una variante Nerd. Así como algunas configuraciones básicas.
Más información,
Había escrito un comentario, pero olvidé clicar el animal correspondiente y me borró el contenido, así que no lo voy a volver a escribir 🙁 La vagueza de los informáticos.
La verdad después de oír este capitulo del podcast he decidido pasar también a wezterm yo uso wayland, ya que me funciona mejor el escalado de pantalla del ordenador, prefiero usar aplicaciones nativas en lugar de un sistema que muestre las aplicaciones que a veces es un problemon y se ven pixeladas, siendo este un buen punto para Wezterm además Wezterm me va más rapido que kitty y funciona bastante bien