themes.md

 1# Themes
 2
 3Zed comes with a number of built-in themes, with more themes available as extensions.
 4
 5## Selecting a Theme
 6
 7See what themes are installed and preview them via the Theme Selector, which you can open from the command palette with "theme selector: Toggle" (bound to `cmd-k cmd-t` on macOS and `ctrl-k ctrl-t` on Linux).
 8
 9Navigating through the theme list by moving up and down will change the theme in real time and hitting enter will save it to your settings file.
10
11## Installing more Themes
12
13More themes are available from the Extensions page, which you can access via the command palette with "zed: Extensions" or the [Zed website](https://zed.dev/extensions).
14
15Many popular themes have been ported to Zed, and if you're struggling to choose one, visit [zed-themes.com](https://zed-themes.com), a third-party gallery with visible previews for many of them.
16
17## Configuring a Theme
18
19Your selected theme is stored in your settings file. You can open your settings file from the command palette with "zed: Open Settings" (bound to `cmd-,` on macOS and `ctrl-,` on Linux).
20
21By default, Zed maintains two themes: one for light mode and one for dark mode. You can set the mode to `"dark"` or `"light"` to ignore the current system mode.
22
23```json [settings]
24{
25  "theme": {
26    "mode": "system",
27    "light": "One Light",
28    "dark": "One Dark"
29  }
30}
31```
32
33## Theme Overrides
34
35To override specific attributes of a theme, use the `experimental.theme_overrides` setting.
36
37For example, add the following to your `settings.json` if you wish to override the background color of the editor and display comments and doc comments as italics:
38
39```json [settings]
40{
41  "experimental.theme_overrides": {
42    "editor.background": "#333",
43    "syntax": {
44      "comment": {
45        "font_style": "italic"
46      },
47      "comment.doc": {
48        "font_style": "italic"
49      }
50    }
51  }
52}
53```
54
55To see a comprehensive list of list of captures (like `comment` and `comment.doc`) see: [Language Extensions: Syntax highlighting](./extensions/languages.md#syntax-highlighting).
56
57To see a list of available theme attributes look at the JSON file for your theme. For example, [assets/themes/one/one.json](https://github.com/zed-industries/zed/blob/main/assets/themes/one/one.json) for the default One Dark and One Light themes.
58
59## Local Themes
60
61Store new themes locally by placing them in the `~/.config/zed/themes` directory (macOS and Linux) or `%USERPROFILE%\AppData\Roaming\Zed\themes\` (Windows).
62
63For example, to create a new theme called `my-cool-theme`, create a file called `my-cool-theme.json` in that directory. It will be available in the theme selector the next time Zed loads.
64
65Find more themes at [zed-themes.com](https://zed-themes.com).
66
67## Theme Development
68
69See: [Developing Zed Themes](./extensions/themes.md)