Fix theme json schema so `./script/import-themes print-schema` works again Update schema to reflect current structs ([diff](https://gist.github.com/notpeter/26e6d0939985f542e8492458442ac62a/revisions?diff=unified&w=)) https://zed.dev/schema/themes/v0.2.0.json
1.9 KiB
1.9 KiB
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 elementsborder: 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 coloreditor.gutter: Gutter colorseditor.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.