Por que escolhi o WezTerm como meu terminal padrão.

Durante anos experimentei diversos terminais no Linux: GNOME Terminal, Tilix, Alacritty, Kitty... mas nenhum entregou o equilíbrio que encontrei no WezTerm. Ele é rápido, bonito, altamente personalizável e moderno. E mais: finalmente encontrei um terminal que respeita meu gosto por estética (tema Catppuccin + fonte Maple Mono NF).
Performance com GPU que faz diferença
O WezTerm é acelerado por GPU, então mesmo com vários splits rodando logs pesados, conexões SSH e comandos em loop, tudo continua fluido. É uma experiência superior em comparação a terminais baseados em CPU puro.
Visual impecável com Catppuccin + Maple Mono NF
Sou apaixonado por estética clean no terminal. Uso:
- Tema:
Catppuccin Mocha
- Fonte:
Maple Mono Nerd Font
Esse conjunto entrega:
- Ligaduras funcionais (
===
,=>
, etc.). - Ícones perfeitos no prompt com Zsh/Fish.
- Visual que não cansa a vista durante longas sessões.
-- Importa o módulo principal do WezTerm
local wezterm = require("wezterm")
-- Retorna a configuração do terminal
return {
-- Define a fonte usada no terminal
-- "Maple Mono NF" é uma Nerd Font com suporte a ícones e ligaduras
font = wezterm.font("Maple Mono NF"),
-- Tamanho da fonte
font_size = 12.5,
-- Tema de cores: "Catppuccin Mocha" (tons escuros e suaves)
color_scheme = "Catppuccin Mocha",
-- Exibe a barra de abas no topo da janela
enable_tab_bar = true,
-- Define a opacidade da janela (0.0 = totalmente transparente, 1.0 = opaco)
window_background_opacity = 0.95,
-- Define os elementos decorativos da janela (aqui, apenas redimensionamento)
window_decorations = "RESIZE",
-- Evita que a janela mude de tamanho ao ajustar a fonte (mantém layout estável)
adjust_window_size_when_changing_font_size = false,
-- Atalhos de teclado personalizados
keys = {
{
-- Alt + Enter → divide o terminal horizontalmente
key = "Enter",
mods = "ALT",
action = wezterm.action.SplitHorizontal { domain = "CurrentPaneDomain" },
},
{
-- Alt + Shift + Enter → divide o terminal verticalmente
key = "Enter",
mods = "ALT|SHIFT",
action = wezterm.action.SplitVertical { domain = "CurrentPaneDomain" },
},
},
}
Splits, Abas e Multiplexador sem tmux
Com essa config, eu crio splits diretamente no WezTerm:
Alt + Enter
: split horizontalAlt + Shift + Enter
: split verticalCtrl + Shift + T
: nova abaCtrl + Shift + W
: fechar aba
E ainda posso mover entre painéis com atalhos personalizados, sem depender de tmux
💡 Outras vantagens reais
- Suporte total ao Wayland no Arch Linux (onde uso o Mutter como compositor).
- Configuração com condições lógicas, ideal para quem usa WSL, múltiplos monitores ou ambientes remotos.
- Atualizações frequentes com melhorias reais (e não só correções).
Por que abandonei os outros?
Terminal | Motivo da troca |
---|---|
Tilix | Interface parada no tempo, sem GPU |
GNOME Terminal | Limitado demais, visual básico |
Alacritty | Rápido, mas sem splits nem tabs |
Kitty | Bom, mas pesado e instável no meu setup |