Remix.run Logo
submeta 3 hours ago

Ghostty is fast and feels native, but WezTerm occupies a different niche: it's a terminal you program rather than configure.

The Lua config isn't just "dynamic" in the abstract sense. I built a tmuxinator-style workspace manager that spawns project-specific layouts - named tabs, splits, working directories, startup commands - from a fuzzy launcher. Session state auto-saves every 10 minutes with timestamped snapshots and crash recovery. Theme toggling between dark and light mode triggers a system-wide theme switch script. These are runtime behaviors, not static settings - try doing any of that in TOML.

The built-in multiplexer is the other major differentiator. Splits, directional navigation, pane zoom, pane selection with alphabet overlays, moving panes between tabs or windows, all without a tmux prefix key. It's not just "WezTerm has splits too, it's that the interaction model is fundamentally more fluid when there's no mode switching.

WezTerm isn't trying to be the fastest terminal. It's trying to be the most programmable one, and for people who want their terminal to work as a development environment rather than a PTY renderer, that tradeoff is worth it.