Theme Extensions - Zed (original) (raw)
Themes
The themes
directory in an extension should contain one or more theme files.
Each theme file should adhere to the JSON schema specified at https://zed.dev/schema/themes/v0.2.0.json.
See this blog post for more details about creating themes.
Theme JSON Structure
The structure of a Zed theme is defined in the Zed Theme JSON Schema.
A Zed theme consists of a Theme Family object including:
name
: The name for the theme familyauthor
: The name of the author of the theme familythemes
: An array of Themes belonging to the theme family
The core components a Theme object include:
- Theme Metadata:
name
: The name of the themeappearance
: Either "light" or "dark"
- Style Properties under the
style
, such as:background
: The main background colorforeground
: The main text coloraccent
: The accent color used for highlighting and emphasis
- Syntax Highlighting:
syntax
: An object containing color definitions for various syntax elements (e.g., keywords, strings, comments)
- UI Elements:
- Colors for various UI components such as:
*element.background
: Background color for UI elements
*border
: Border colors for different states (normal, focused, selected)
*text
: Text colors for different states (normal, muted, accent)
- Colors for various UI components such as:
- Editor-specific Colors:
- Colors for editor-related elements such as:
*editor.background
: Editor background color
*editor.gutter
: Gutter colors
*editor.line_number
: Line number colors
- Colors for editor-related elements such as:
- Terminal Colors:
- ANSI color definitions for the integrated terminal
We recommend looking at our existing themes to get a more comprehensive idea of what can be styled.