LinuxCommandLibrary

wezterm

Provide a GPU-accelerated terminal emulator

TLDR

Start a new Wezterm process and create a window

$ wezterm
copy

Establish an ssh session
$ wezterm ssh [user]@[host]:[port]
copy

Connect to the multiplexer (wezterm-mux-server)
$ wezterm connect [domain_name]
copy

Output an image to the terminal
$ wezterm imgcat [path/to/image]
copy

Record a terminal session as an asciicat (by default recordings are found in /tmp)
$ wezterm record
copy

Replay an asciicat terminal session
$ wezterm replay [path/to/cast_file]
copy

Specify the configuration file to use (overrides the normal configuration file resolution)
$ wezterm --config-file [path/to/config_file]
copy

Display help
$ wezterm help
copy

SYNOPSIS

wezterm [OPTIONS] [COMMAND]

PARAMETERS

--config-file
    Specifies the path to the configuration file. If not provided, wezterm will search for a default configuration file in platform-specific locations.

--version
    Displays the wezterm version and exits.

--help
    Displays help information about the available commands and options.

start
    Starts a new wezterm window.

connect
    Connects to a remote wezterm multiplexer.

gui-server
    Starts a GUI server process.

cli
    Executes a command via the command line interface.

DESCRIPTION

wezterm is a modern, cross-platform terminal emulator that leverages the GPU for accelerated rendering. This results in smoother scrolling, lower latency, and improved overall performance compared to traditional CPU-based terminal emulators. wezterm is highly configurable via a Lua configuration file, allowing users to customize everything from color schemes and fonts to keybindings and window behavior. It supports features like tabs, panes, multiple splits, unicode, true color, and ligatures. It is compatible with Linux, macOS, Windows, and FreeBSD. wezterm aims to provide a powerful and flexible terminal experience that caters to both casual and power users, offering a blend of performance, customization, and modern features that are usually missing in traditional emulators. The ability to script many aspects of the emulator offers a high degree of flexibility for advanced use cases.

CAVEATS

wezterm requires a modern OpenGL implementation for GPU acceleration. Some older or virtualized environments may not provide adequate support.
The Lua configuration can be complex, requiring familiarity with the Lua programming language for advanced customization.

KEY BINDINGS

Key bindings can be configured using the `keys` table in the wezterm Lua configuration file. Refer to the wezterm documentation for the available key actions and modifiers.

COLOR SCHEMES

wezterm supports true color and allows customization of color schemes via the `colors` table in the Lua configuration file.
Pre-built color schemes can be imported or custom color schemes can be defined.

FONT CONFIGURATION

The font and font size can be customized using the `font` and `font_size` options in the wezterm Lua configuration.
wezterm also supports font ligatures, which can be enabled via configuration.

HISTORY

wezterm is a relatively recent terminal emulator. It was created to address the limitations and performance issues found in existing terminal emulators, with a focus on leveraging modern GPU technology for rendering.
Its development has been driven by a desire to provide a highly customizable and performant terminal experience across multiple platforms.
It has grown rapidly in popularity due to its responsiveness, configurability and modern feature set.

SEE ALSO

xterm(1), tmux(1), screen(1)

Copied to clipboard