Skip to main content
This page provides practical, ready-to-use configuration examples for WezTerm. Each example is designed to be copied directly into your ~/.wezterm.lua configuration file.

Basic Configuration

Minimal Setup

A simple starting configuration that sets up basic appearance and behavior:

Font Configurations

Font with Fallback

Configure a primary font with fallback options for better glyph coverage:
WezTerm automatically includes Nerd Font Symbols and Noto Color Emoji in the default fallback, so you don’t need specially patched fonts for powerline or Nerd Font symbols.

Bold and Italic Font Rules

Customize font selection for different text styles:

Disable Ligatures

If you prefer to disable font ligatures:

Color Schemes

Custom Color Palette

Define your own color scheme:

Multiple Color Schemes

Define multiple schemes and switch between them:

Dark/Light Mode Auto-Switching

Automatically adjust colors based on system appearance:

Tab Bar Customization

Retro Tab Bar

Custom Tab Titles with User Variables

Display custom information in tab titles:
This requires setting user variables from your shell. See the Passing Data recipe for details on setting up user variables.

Key Bindings

Leader Key Configuration

Set up tmux-style leader key bindings:

Disable Default Keybindings

Window Appearance

Transparent Background

Window transparency requires compositing support from your OS. macOS and Windows support this out of the box. On Linux, you may need to configure a compositing window manager.

Background Image

Styled Inactive Panes

Make inactive panes visually distinct:

Advanced Recipes

Click on file paths to navigate or open files:
For this recipe to work best, configure your shell with hyperlink support:
Prevent accidental hyperlink clicks:

Complete Example Configuration

A comprehensive configuration combining multiple features:

Tips for Configuration

Use wezterm ls-fonts to see which fonts are available on your system and how WezTerm will render them.
Enable debug_key_events = true in your config to see what key codes are being generated when you press keys. This is helpful for troubleshooting key bindings.
Use wezterm show-keys or wezterm show-keys --lua to see all effective key bindings defined by your configuration.