L’emulatore di terminale è lo strumento che la maggior parte degli sviluppatori usa costantemente ma raramente riconsidера. Molti ne scelgono uno nel primo anno e non cambiano mai. Ma il panorama dei terminali è cambiato radicalmente — rendering accelerato via GPU, multiplexing integrato e protocolli per immagini hanno reso i terminali più vecchi decisamente lenti.

Questa guida confronta otto emulatori di terminale in termini di supporto alle piattaforme, funzionalità ed esperienza sviluppatore nel mondo reale.

Panoramica rapida

TerminalePiattaformaRendering GPUIdeale per
GhosttymacOS/LinuxUtenti macOS che cercano un’esperienza nativa
WezTermMultipiattaformaMultipiattaforma + configurazione Lua
KittymacOS/LinuxUtenti avanzati, protocollo immagini
AlacrittyMultipiattaformaMinimalisti con tmux
iTerm2macOSUtenti macOS con configurazione GUI
Windows TerminalWindowsSviluppatori Windows
footLinux (Wayland)Minimalisti Wayland
RioMultipiattaformaAppassionati di Rust

Una nota sulla latenza di input

La latenza di input — il ritardo tra la pressione del tasto e la comparsa del carattere sullo schermo — influisce sull’esperienza sviluppatore. Tuttavia, misurazioni affidabili della latenza sono difficili da produrre e variano significativamente in base a hardware, sistema operativo, compositor, frequenza di aggiornamento e metodologia di misurazione.

Un benchmark della community di moktavizen su GitHub ha testato diversi emulatori di terminale Wayland su hardware datato (ThinkPad T430, Linux) usando lo strumento basato su fotocamera Is It Snappy. In quel test specifico, foot e Alacritty hanno mostrato la latenza più bassa, mentre WezTerm e Ghostty erano più alti. Tuttavia, questi risultati sono specifici per una combinazione hardware/OS/compositor e non dovrebbero essere considerati classifiche universali.

In generale, tutti i terminali con accelerazione GPU elencati qui offrono un’esperienza di digitazione reattiva in condizioni normali. La differenza percepibile tra di essi è minima per la maggior parte degli sviluppatori.


Ghostty — Esperienza nativa su macOS

Ghostty è passato da progetto secondario a uno degli emulatori di terminale più discussi del 2025. Scritto in Zig, dà priorità all’integrazione nativa con la piattaforma.

Cosa lo distingue:

  • Integrazione nativa. Su macOS usa AppKit — non un toolkit multipiattaforma. Gestione finestre, tab e split si comportano come un’app Apple di prima parte
  • Rendering veloce con accelerazione GPU e gestione efficiente dell’input
  • Impostazioni predefinite sensate. Funziona bene subito con configurazione minima
  • Eccellente rendering dei font su macOS tramite Core Text

Limitazioni:

  • Nessun supporto Windows (e nessuno pianificato al momento)
  • La configurazione è volutamente minimale. Nessuno scripting o logica complessa per le scorciatoie
  • Relativamente nuovo. Possibili problemi occasionali con sequenze di escape insolite

Esempio di configurazione (~/.config/ghostty/config):

font-family = JetBrains Mono
font-size = 14
theme = catppuccin-mocha
window-padding-x = 8
window-padding-y = 4

Il minimalismo è una feature qui — l’intera configurazione può essere di poche righe.


WezTerm — Il miglior terminale multipiattaforma

WezTerm è la scelta ideale per gli sviluppatori che hanno bisogno dello stesso terminale su macOS, Linux e Windows — e lo vogliono genuinamente capace su tutte e tre.

Punti di forza:

  • Configurazione Lua è un superpotere. Titoli tab dinamici, tabelle di tasti personalizzate, cambio workspace — tutto programmabile
  • Multiplexer integrato che elimina la necessità di tmux in molti flussi di lavoro
  • Supporto protocollo immagini (iTerm2 + protocolli Kitty)
  • Integrazione SSH con multiplexing — le sessioni remote sono fluide

Esempio di configurazione (~/.wezterm.lua):

local wezterm = require 'wezterm'
local config = wezterm.config_builder()

config.font = wezterm.font('JetBrains Mono')
config.font_size = 14.0
config.color_scheme = 'Catppuccin Mocha'

-- Titolo tab dinamico con il processo attuale
wezterm.on('format-tab-title', function(tab)
  local title = tab.active_pane.title
  if tab.is_active then
    return {{ Text = ' ' .. title .. ' ' }}
  end
  return title
end)

return config

Limitazioni:

  • Latenza di input più alta rispetto ad alcuni concorrenti — i benchmark della community lo posizionano costantemente dietro Alacritty e foot
  • Maggiore utilizzo di memoria rispetto a terminali più minimali
  • La configurazione Lua è potente ma aggiunge complessità. Operazioni semplici possono richiedere configurazione non banale

Kitty — La scelta dell’utente avanzato

Kitty è da tempo il terminale con accelerazione GPU da battere. Opinionato, ricco di funzionalità e performante.

Funzionalità di spicco:

  • Protocollo immagini Kitty è lo standard più adottato per le immagini nei terminali. Strumenti come ranger, yazi e neovim lo utilizzano
  • Kittens — piccoli programmi che girano all’interno del terminale. kitten ssh offre sessioni SSH con supporto completo delle funzionalità del terminale
  • Layout e split senza tmux

Considerazioni:

Kitty è potente, ma il suo stile di sviluppo è opinionato. La documentazione può essere concisa e i breaking change tra versioni non sono rari. Per i team che privilegiano stabilità e aggiornamenti graduali, WezTerm potrebbe essere una scelta più sicura.


Alacritty — Ancora la scelta del minimalista

Alacritty fa una cosa sola: renderizzare testo velocemente. Niente tab, niente split, niente multiplexer. Abbinalo a tmux o Zellij per quelle funzionalità.

Nel 2026, Alacritty resta la scelta giusta quando:

  • tmux o Zellij fa già parte del flusso di lavoro
  • L’obiettivo è overhead minimo tra shell e schermo
  • Il supporto immagini nel terminale non è necessario

Non è la scelta giusta per chi vuole un’esperienza terminale completa pronta all’uso.


Quelli da evitare (per la maggior parte degli sviluppatori)

iTerm2: Ancora popolare su macOS, ma privo di rendering GPU e con latenza notevolmente più alta rispetto alle alternative con accelerazione GPU secondo i benchmark della community. Il vantaggio principale resta il pannello preferenze GUI per la configurazione grafica.

Hyper: Terminale basato su Electron. L’alta latenza lo rende impraticabile per un uso intensivo del terminale.

Tabby: Anch’esso basato su Electron. Interfaccia attraente, ma le stesse limitazioni fondamentali di latenza.


Raccomandazioni per piattaforma

Su macOS: Ghostty per esperienza nativa e prestazioni. WezTerm se serve consistenza multipiattaforma.

Su Linux: Kitty per utenti avanzati. foot per minimalisti Wayland. WezTerm per chi usa anche macOS o Windows.

Su Windows: Windows Terminal è genuinamente valido e attivamente mantenuto. WezTerm come alternativa per condividere la configurazione tra piattaforme.


Raccomandazioni sui font

Il miglioramento visivo più grande spesso non è il terminale — è il font. Alcune opzioni apprezzate per la programmazione:

  1. JetBrains Mono — gratuito, legature eccellenti, ottima leggibilità a dimensioni ridotte
  2. Monaspace Argon — famiglia di font di GitHub, bellissimo a dimensioni più grandi
  3. Cascadia Code — l’offerta di Microsoft, si abbina bene a Windows Terminal
  4. Iosevka — altamente personalizzabile con supporto per varianti build-your-own

Un buon font abbinato a qualsiasi terminale con accelerazione GPU di questa lista offre un’eccellente esperienza di programmazione.

Usi un terminale non trattato qui? Scrivici a [email protected].