wezterm
Provide a GPU-accelerated terminal emulator
TLDR
Start a new Wezterm process and create a window
Establish an ssh session in a new Wezterm window
Connect to the multiplexer (wezterm-mux-server)
Output an image to the terminal
Record a terminal session as an asciicast (by default recordings are saved to /tmp)
Replay an asciicast terminal session
Specify the configuration file to use (overrides the normal configuration file resolution)
Display help
SYNOPSIS
wezterm [SUBCOMMAND] [OPTIONS]
PARAMETERS
--help, -h
Print help information
--version
Print version information
cli
Interact with the wezterm multiplexer daemon
colorscheme
List available colorschemes
copy-config
Copy the default config file into place
create
Create a workspace with specified windows/domains
csi
Print CSI sequences
detect-gpu
Show information about detected GPUs
format
Format configuration using the configuration schema
gaussian-blur
Apply a gaussian blur effect to an image
help
Print help for subcommand
ls
List windows/sessions/tabs/panes
ls-fonts
List available fonts
print
Print text from stdin as styled image
prune
Prune dead ssh sessions
resize-pane-pane
Resize a pane within its tab
screenshot
Take a screenshot
seq
Print a CSI sequence
set-colors-scheme
Set the colorscheme
set-environment-variables
Set environment variables
ssh
Execute a command via ssh multiplexing
start
Start a new wezterm process (default subcommand)
validate-config
Validate the configuration file
DESCRIPTION
WezTerm is a modern, highly performant terminal emulator and multiplexer built in Rust. It utilizes GPU acceleration via Vulkan/OpenGL for smooth rendering, supporting features like ligatures, true color (24-bit), hyperlinks, scrollback search, and the Kitty image/graphics protocol. Cross-platform compatibility spans Linux, macOS, Windows, and even FreeBSD, ensuring consistent behavior everywhere.
Unlike traditional terminals, WezTerm embeds a multiplexer akin to tmux, enabling workspaces, tabs, panes, and multiplexing over SSH without external tools. Configuration is Lua-based (wezterm.lua), allowing programmatic customization of fonts, colorschemes, keybindings, leader keys, and shell integration.
The CLI (wezterm) launches instances, manages servers, queries state (e.g., window lists), and offers utilities like font enumeration, config validation, screenshots, and GPU detection. Ideal for developers needing power and portability, it prioritizes extensibility and minimal dependencies while handling large scrollbacks efficiently.
CAVEATS
Multiplexing requires a running daemon; initial setup may need config tweaks for optimal performance. GPU support varies by hardware/drivers.
CONFIGURATION
Primary config at ~/.config/wezterm/wezterm.lua; highly extensible via Lua modules.
KEY FEATURES
True color, ligatures, hyperlinks, workspaces, SSH multiplexing, Kitty protocol, scrollback regex search.
HISTORY
Developed by Wez Furlong as a personal project starting ~2017, first public release in 2020. Gained popularity for Rust efficiency and Lua config; version 20230712+ marked stable multiplexing. Actively maintained with weekly releases.


