Commit Graph
35 Commits
Author SHA1 Message Date
Marshall Bowers 6bc1cf0fae Re-import the Synthwave 84 theme (#3297)
This PR re-imports the Synthwave 84 theme now that we support 3-value
hex colors.

Release Notes:

- N/A
2023-11-09 18:56:42 -05:00
Nate Butler 6b65acaa99 regenerate themes, format 2023-11-09 16:48:35 -05:00
Nate Butler 4cd37e6e62 Extend theme converter to allow multimatching against vscode colors 2023-11-09 16:38:48 -05:00
Nate ButlerandMarshall Bowers 1c6a960bbf Deal with special case where a VSCode theme doesn't have a foreground color
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:53:04 -05:00
Nate ButlerandMarshall Bowers 54157eb99a Finish passing Syntax from VSCode themes to Zed Themes
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:41:26 -05:00
Nate ButlerandMarshall Bowers ff053890cf Extend UserSyntax to allow font_style and font_weight to be specified
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 13:46:08 -05:00
Marshall Bowers 978cff8095 Use IndexMap for a deterministic order when importing syntax colors 2023-11-09 13:12:36 -05:00
Marshall Bowers 34e31fd489 Properly emit UserHighlightStyles 2023-11-09 12:59:20 -05:00
Marshall Bowers 60eae3e50a Emit unique highlights for each syntax token 2023-11-09 12:46:37 -05:00
Nate ButlerandMarshall Bowers efd1db1b09 WIP – Add Syntax themes to importer
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 12:30:53 -05:00
Nate ButlerandMarshall Bowers 4b5ca3e420 Allow imported themes to refine StatusColors
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 11:30:59 -05:00
Nate Butler bdeb32c34b Extend VSCode theme importer 2023-11-09 01:39:31 -05:00
Marshall Bowers 25876161f8 theme_importer: Format generated themes (#3255)
This PR makes the `theme_importer` format the themes that it generates
automatically.

Release Notes:

- N/A
2023-11-07 12:45:09 -05:00
Marshall Bowers 0d95410634 Rework third-party themes (#3254)
This PR reworks the way we define our third-party themes to make them
work as overlays on top of a base theme.

We introduce the concept of a `UserThemeFamily` that contains
`UserTheme`s. Rather than being an entire theme definition on their own,
a `UserTheme` just contains optional overrides for the values in a
`Theme`.

When resolving a `UserTheme`, we apply it on top of the base theme. Any
values not overridden in the `UserTheme` will fall back to the `Theme`
defaults.

Right now we are just using `UserTheme` to model third-party themes that
we distribute with the Zed binary. However, this same structure can also
be used to import arbitrary user themes (such as from a theme registry,
or even a theme blob from the settings file).

Release Notes:

- N/A
2023-11-07 11:40:07 -05:00
Marshall Bowers 74853ea55f Rename ThemeVariant to Theme (#3252)
This PR renames the `ThemeVariant` type to `Theme`.

This better reflects its purpose, as well as matches the same name as we
had before, which should make porting crates slightly easier.

Release Notes:

- N/A
2023-11-07 10:41:36 -05:00
Marshall Bowers 7078c5fbb9 Regenerate all themes 2023-11-07 08:59:50 -05:00
Antonio Scandurra bdf6e8bcc7 Merge remote-tracking branch 'origin/main' into editor2-paint 2023-11-07 13:09:48 +01:00
Nate Butler 3cb72610b3 Finish up initial themes 2023-11-06 15:24:36 -05:00
Nate Butler 62981fc2ee Format themes 2023-11-06 14:58:34 -05:00
Nate Butler c47c64184c Add additional themes, update theme importer 2023-11-06 14:54:21 -05:00
Nate Butler 80f80df5cf Add Noctis Theme 2023-11-06 12:43:10 -05:00
Marshall Bowers 152ac6927f Add themes2/src/themes directory 2023-11-02 19:17:39 -04:00
Marshall Bowers 36a73d657a Remove old Theme definition (#3195)
This PR removes the old `Theme` definition in favor of the new
`ThemeVariant`s.

The new `SyntaxStyles` have been reverted to the old `SyntaxTheme` that
operates by storing the syntax styles as a vector of
`gpui2::HighlightStyle`s.

This is necessary for the intended usage by `language2`, where we find
the longest key in the theme's syntax styles that matches the capture
name:

https://github.com/zed-industries/zed/blob/18431051d9d750d9e66284a71f7a55a1e31c1374/crates/language2/src/highlight_map.rs#L15-L41
2023-10-31 23:05:50 -04:00
Marshall Bowers d3cd5f3ec5 Format theme2 2023-10-30 11:26:30 -04:00
Marshall Bowers 3d8516b25f Convert all themes 2023-10-30 11:22:04 -04:00
Marshall Bowers 2879d231b1 Revert changes to themes 2023-10-30 11:06:45 -04:00
Marshall Bowers 3591ffe4a7 Emit all themes at once 2023-10-30 11:04:03 -04:00
Marshall Bowers 560e115656 Pull syntax colors from JSON theme 2023-10-26 17:06:05 +02:00
Max BrunsfeldandMarshall Bowers 0eae962abf Represent theme's syntax colors with string keys
Co-authored-by: Marshall Bowers <marshall@zed.dev>
2023-10-26 16:38:50 +02:00
Marshall Bowers a0fe859d87 Make theme converter spit out valid Rust structs 2023-10-25 18:20:16 +02:00
Marshall Bowers c8a86c2dd1 theme2: Add Rosé Pine themes 2023-10-25 17:38:48 +02:00
Marshall Bowers cee8175c19 theme2: Add Sandcastle theme 2023-10-25 17:27:25 +02:00
Marshall Bowers 437d147935 Rename player to players 2023-10-25 16:39:06 +02:00
Marshall Bowers 4740d6ed61 Checkpoint 2023-10-24 17:29:03 +02:00
Marshall Bowers 09866ec3e9 WIP 2023-10-24 16:59:24 +02:00