Skip to main content

Color Scheme Configuration

WezTerm provides extensive color customization options, including built-in color schemes, custom palettes, and dynamic color configuration.

Using Built-in Color Schemes

WezTerm includes hundreds of pre-configured color schemes. You can select one using the color_scheme option:
string
default:"nil"
The name of a built-in color scheme. When set, this overrides the colors configuration.

Listing Available Color Schemes

You can list all available color schemes using:
Or programmatically in Lua:

Custom Color Palettes

You can define your own color palette using the colors configuration option:

Color Palette Structure

table
default:"nil"
A table defining the color palette for the terminal.
string
The default text color in hex format (e.g., #d4d4d4).
string
The default background color in hex format.
string
The cursor background color.
string
The cursor foreground/text color.
string
The cursor border color (when using block cursor).
string
The text color for selected text.
string
The background color for selected text.
array
An array of 8 colors for the standard ANSI palette (colors 0-7).
array
An array of 8 colors for the bright ANSI palette (colors 8-15).

Indexed Colors

You can also define indexed colors for the 256-color palette:
table
default:"{}"
A table mapping color indices (16-255) to hex color values.
Indices 0-15 should be specified using ansi and brights arrays, not the indexed table.

Tab Bar Colors

Customize the appearance of the tab bar:
table
Configuration for tab bar appearance.

Dynamic Color Schemes

You can change color schemes dynamically based on system appearance or time of day:

Based on System Appearance

Based on Time of Day

Color Transformations

Foreground Text Adjustments

You can adjust the foreground text colors using HSB (Hue, Saturation, Brightness) transformations:
table
default:"{hue=1.0, saturation=1.0, brightness=1.0}"
HSB transformation applied to foreground text colors.
Example - make text slightly brighter:

Bold Text Brightening

string
default:"BrightAndBold"
Controls whether bold text is rendered using bright colors. Valid values are:
  • BrightAndBold: Use bright colors for bold text
  • BrightOnly: Use bright colors but don’t render as bold
  • No: Don’t use bright colors for bold text

Custom Color Scheme Files

You can define color schemes in separate files and load them:

Creating a Color Scheme File

Create a file ~/.config/wezterm/colors/mytheme.toml:

Loading Custom Color Schemes

array
default:"[]"
Additional directories to search for color scheme files (TOML format).

Quick Select and Copy Mode Colors

Customize colors for WezTerm’s quick select and copy mode features:
When setting a color_scheme, it will override any values you set in the colors table. If you want to customize specific colors while using a base scheme, you need to get the scheme first and modify it.

Modifying Built-in Color Schemes

See Also