Skip to content

Instantly share code, notes, and snippets.

@bdsqqq
Last active April 1, 2024 17:44
Show Gist options
  • Star 42 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save bdsqqq/a54f73271bc23096e4af8daec92b9229 to your computer and use it in GitHub Desktop.
Save bdsqqq/a54f73271bc23096e4af8daec92b9229 to your computer and use it in GitHub Desktop.
Vesper theme for zed.dev
{
"$schema": "https://zed.dev/schema/themes/v0.1.0.json",
"name": "Vesper",
"author": "Rauno Freiberg",
"themes": [
{
"name": "Vesper",
"appearance": "dark",
"style": {
"border": "#101010",
"border.variant": "#101010",
"border.focused": "#FFC799",
"border.selected": "#FFC799",
"border.transparent": null,
"border.disabled": "#101010",
"elevated_surface.background": "#101010",
"surface.background": "#101010",
"background": "#101010",
"element.background": "#101010",
"element.hover": "#282828",
"element.active": "#282828",
"element.selected": "#232323",
"element.disabled": "#101010",
"drop_target.background": null,
"ghost_element.background": null,
"ghost_element.hover": "#282828",
"ghost_element.active": null,
"ghost_element.selected": "#232323",
"ghost_element.disabled": null,
"text": "#FFFFFF",
"text.muted": "#A0A0A0",
"text.placeholder": "#7E7E7E",
"text.disabled": "#7E7E7E",
"text.accent": "#FFC799",
"icon": "#FFFFFF",
"icon.muted": "#A0A0A0",
"icon.disabled": "#7E7E7E",
"icon.placeholder": "#7E7E7E",
"icon.accent": "#FFC799",
"status_bar.background": "#101010",
"title_bar.background": "#101010",
"toolbar.background": "#101010",
"tab_bar.background": "#101010",
"tab.inactive_background": "#101010",
"tab.active_background": "#161616",
"search.match_background": "#575757",
"panel.background": "#101010",
"panel.focused_border": "#FF",
"pane.focused_border": "#FFC799",
"scrollbar_thumb.background": "#34343480",
"scrollbar.thumb.hover_background": "#343434",
"scrollbar.thumb.border": "#34343480",
"scrollbar.track.background": "#101010",
"scrollbar.track.border": "#101010",
"editor.foreground": "#FFFFFF",
"editor.background": "#101010",
"editor.gutter.background": "#101010",
"editor.subheader.background": "#101010",
"editor.active_line.background": "#101010",
"editor.highlighted_line.background": "#101010",
"editor.line_number": "#505050",
"editor.active_line_number": "#FFF",
"editor.invisible": null,
"editor.wrap_guide": null,
"editor.active_wrap_guide": null,
"editor.document_highlight.read_background": "#282828",
"editor.document_highlight.write_background": "#282828",
"terminal.background": "#101010",
"terminal.foreground": "#A0A0A0",
"terminal.bright_foreground": "#FFFFFF",
"terminal.dim_foreground": "#7E7E7E",
"terminal.ansi.black": "#101010",
"terminal.ansi.bright_black": "#7E7E7E",
"terminal.ansi.dim_black": null,
"terminal.ansi.red": "#f5a191",
"terminal.ansi.bright_red": "#ff8080",
"terminal.ansi.dim_red": null,
"terminal.ansi.green": "#90b99f",
"terminal.ansi.bright_green": "#99FFE4",
"terminal.ansi.dim_green": null,
"terminal.ansi.yellow": "#e6b99d",
"terminal.ansi.bright_yellow": "#FFC799",
"terminal.ansi.dim_yellow": null,
"terminal.ansi.blue": "#aca1cf",
"terminal.ansi.bright_blue": "#b9aeda",
"terminal.ansi.dim_blue": null,
"terminal.ansi.magenta": "#e29eca",
"terminal.ansi.bright_magenta": "#ecaad6",
"terminal.ansi.dim_magenta": null,
"terminal.ansi.cyan": "#ea83a5",
"terminal.ansi.bright_cyan": "#f591b2",
"terminal.ansi.dim_cyan": null,
"terminal.ansi.white": "#A0A0A0",
"terminal.ansi.bright_white": "#ffffff",
"terminal.ansi.dim_white": null,
"link_text.hover": "#FFCFA8",
"conflict": null,
"conflict.background": null,
"conflict.border": null,
"created": "#99FFE4",
"created.background": null,
"created.border": null,
"deleted": "#FF8080",
"deleted.background": null,
"deleted.border": null,
"error": "#FF8080",
"error.background": null,
"error.border": null,
"hidden": null,
"hidden.background": null,
"hidden.border": null,
"hint": "#A0A0A0",
"hint.background": "#1C1C1C",
"hint.border": null,
"ignored": null,
"ignored.background": null,
"ignored.border": null,
"info": null,
"info.background": null,
"info.border": null,
"modified": "#FFC799",
"modified.background": null,
"modified.border": null,
"predictive": "#585858",
"predictive.background": null,
"predictive.border": null,
"renamed": null,
"renamed.background": null,
"renamed.border": null,
"success": null,
"success.background": null,
"success.border": null,
"unreachable": null,
"unreachable.background": null,
"unreachable.border": null,
"warning": "#FFC799",
"warning.background": null,
"warning.border": null,
"players": [],
"syntax": {
"attribute": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"comment": {
"color": "#8b8b8b94",
"font_style": null,
"font_weight": null
},
"comment.doc": {
"color": "#8b8b8b94",
"font_style": null,
"font_weight": null
},
"constant": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"constructor": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"emphasis": {
"color": "#FFF",
"font_style": "italic",
"font_weight": null
},
"emphasis.strong": {
"color": "#FFF",
"font_style": null,
"font_weight": 700
},
"function": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"keyword": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"label": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"link_text": {
"color": "#FFF",
"font_style": null,
"font_weight": null
},
"link_uri": {
"color": "#FFF",
"font_style": null,
"font_weight": null
},
"number": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"operator": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"punctuation": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"punctuation.bracket": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"punctuation.delimiter": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"punctuation.list_marker": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"punctuation.special": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
},
"string": {
"color": "#99FFE4",
"font_style": null,
"font_weight": null
},
"string.escape": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"string.regex": {
"color": "#99FFE4",
"font_style": null,
"font_weight": null
},
"string.special": {
"color": "#99FFE4",
"font_style": null,
"font_weight": null
},
"string.special.symbol": {
"color": "#99FFE4",
"font_style": null,
"font_weight": null
},
"tag": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"text.literal": {
"color": "#99FFE4",
"font_style": null,
"font_weight": null
},
"title": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"type": {
"color": "#FFC799",
"font_style": null,
"font_weight": null
},
"variable": {
"color": "#FFF",
"font_style": null,
"font_weight": null
},
"variable.special": {
"color": "#A0A0A0",
"font_style": null,
"font_weight": null
}
}
}
}
]
}
@zisra
Copy link

zisra commented Feb 9, 2024

Amazing!

@johncalvinroberts
Copy link

sick

@luvsense
Copy link

luvsense commented Feb 9, 2024

Love it!

@bmorphism
Copy link

This is the theme to do your best work with!

@Moshyfawn
Copy link

The copilot suggestions appear in the same colour as the rest of the text - #FFFFFF. Updating editor.foreground to a different colour sort of fixes this, but it forces some instances of text like JSON field names to be the same colour, which isn't great.

I guess it's Zed's lack of extensibility in this case, unfortunately.

- "editor.foreground": "#FFFFFF"
+ "editor.foreground": "#505050"

vesper-copilot-slate
vesper-copilot-white

@bdsqqq
Copy link
Author

bdsqqq commented Feb 15, 2024

@Moshyfawn Maybe JSON keys OR copilot's inlay hints could be targeted by one of the syntax objects at the end of the document? Can test later but not sure...
Lack of docs from zed really makes this more difficult

@Moshyfawn
Copy link

Moshyfawn commented Feb 15, 2024

@Moshyfawn Maybe JSON keys OR copilot's inlay hints could be targeted by one of the syntax objects at the end of the document? Can test later but not sure... Lack of docs from zed really makes this more difficult

I'm going to try a couple of things in a few 💯 because, yeah, some of the fields don't even have a description to go by. I might try to document them at some point.

@Moshyfawn
Copy link

By the way, Zed has released support for extensions and I threw together this repo based on the Zed's extension standards that can be submitted to be included in their extensions repo to be able to easily download it in the editor. I added you and rauno as members and elaborated on my idea in raunofreiberg/vesper#9 for transparency.

@Moshyfawn
Copy link

I have found out the suggestions color:

-  "predictive": null,
+  "predictive": "#585858"

@bdsqqq
Copy link
Author

bdsqqq commented Mar 14, 2024

I have found out the suggestions color:

-  "predictive": null,
+  "predictive": "#585858"

tysm, updated!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment