Files
australis/zed/australis-dark.json
T
vh 0748522245 feat(zed): add Australis Dark theme for Zed
Adds a Zed theme generated from the canonical palette in the root
README, alongside the existing wezterm and zellij configurations.

The 16 terminal colors carry over unchanged from wezterm/config.lua.
Syntax highlighting follows the spec's stated preference order (blue,
cyan, green) with the Dawn accents reserved for semantic signals and
the rare token roles.

Zed addresses UI surfaces the 16-color terminal palette does not
define. Two neutrals are derived for chrome (#2a2e39, L19) and
elevated surfaces (#313440, L22), both interpolated in CIELAB along
the palette's own neutral ramp so they sit on the ramp the spec
defines. ANSI dim variants are mixed 45% toward the background in LAB
to preserve hue. Overlays use an alpha channel over palette colors
rather than new opaque values.

The theme is generated by build-theme.py, which validates output
against the live Zed theme schema (v0.2.0) and fails if any of its
142 style keys is missing.
2026-07-27 21:35:09 -07:00

427 lines
13 KiB
JSON

{
"$schema": "https://zed.dev/schema/themes/v0.2.0.json",
"name": "Australis",
"author": "Vuong Hoang",
"themes": [
{
"name": "Australis Dark",
"appearance": "dark",
"style": {
"background.appearance": "opaque",
"background": "#2a2e39",
"surface.background": "#2a2e39",
"elevated_surface.background": "#313440",
"panel.background": "#2a2e39",
"status_bar.background": "#2a2e39",
"title_bar.background": "#2a2e39",
"title_bar.inactive_background": "#2a2e39",
"toolbar.background": "#222531",
"tab_bar.background": "#2a2e39",
"tab.active_background": "#222531",
"tab.inactive_background": "#2a2e39",
"drop_target.background": "#6388d833",
"border": "#414751",
"border.variant": "#373b46",
"border.focused": "#6388d8",
"border.selected": "#6388d8",
"border.transparent": "#00000000",
"border.disabled": "#373b46",
"pane.focused_border": "#6388d8",
"pane_group.border": "#373b46",
"panel.focused_border": "#6388d8",
"panel.indent_guide": "#373b46",
"panel.indent_guide_active": "#565f69",
"panel.indent_guide_hover": "#414751",
"element.background": "#2a2e39",
"element.hover": "#373b4699",
"element.active": "#414751",
"element.selected": "#6388d833",
"element.disabled": "#373b4666",
"ghost_element.background": "#00000000",
"ghost_element.hover": "#373b4680",
"ghost_element.active": "#41475199",
"ghost_element.selected": "#6388d826",
"ghost_element.disabled": "#00000000",
"text": "#a9bcc3",
"text.muted": "#86929d",
"text.placeholder": "#6e7882",
"text.disabled": "#565f69",
"text.accent": "#a4c4ff",
"link_text.hover": "#a4c4ff",
"icon": "#a9bcc3",
"icon.muted": "#86929d",
"icon.disabled": "#565f69",
"icon.placeholder": "#6e7882",
"icon.accent": "#42dcd1",
"editor.background": "#222531",
"editor.foreground": "#a9bcc3",
"editor.gutter.background": "#222531",
"editor.subheader.background": "#2a2e39",
"editor.active_line.background": "#373b4659",
"editor.highlighted_line.background": "#373b4680",
"editor.line_number": "#565f69",
"editor.active_line_number": "#cce7ec",
"editor.invisible": "#565f69",
"editor.wrap_guide": "#373b4680",
"editor.active_wrap_guide": "#565f69",
"editor.indent_guide": "#373b46",
"editor.indent_guide_active": "#565f69",
"editor.document_highlight.read_background": "#6388d826",
"editor.document_highlight.write_background": "#42dcd133",
"editor.document_highlight.bracket_background": "#6388d838",
"search.match_background": "#ffe14e38",
"scrollbar.thumb.background": "#565f6966",
"scrollbar.thumb.hover_background": "#6e788299",
"scrollbar.thumb.border": "#00000000",
"scrollbar.track.background": "#00000000",
"scrollbar.track.border": "#00000000",
"error": "#ff491a",
"error.background": "#ff491a1f",
"error.border": "#ff491a66",
"warning": "#e1c631",
"warning.background": "#e1c6311f",
"warning.border": "#e1c63166",
"info": "#6388d8",
"info.background": "#6388d81f",
"info.border": "#6388d866",
"success": "#16b866",
"success.background": "#16b8661f",
"success.border": "#16b86666",
"hint": "#00b1a8",
"hint.background": "#00b1a81f",
"hint.border": "#00b1a866",
"predictive": "#565f69",
"predictive.background": "#565f691f",
"predictive.border": "#565f6966",
"created": "#16b866",
"created.background": "#16b8661f",
"created.border": "#16b86666",
"modified": "#e1c631",
"modified.background": "#e1c6311f",
"modified.border": "#e1c63166",
"deleted": "#ff491a",
"deleted.background": "#ff491a1f",
"deleted.border": "#ff491a66",
"renamed": "#6388d8",
"renamed.background": "#6388d81f",
"renamed.border": "#6388d866",
"conflict": "#ff854f",
"conflict.background": "#ff854f1f",
"conflict.border": "#ff854f66",
"ignored": "#6e7882",
"ignored.background": "#6e78821f",
"ignored.border": "#6e788266",
"hidden": "#6e7882",
"hidden.background": "#6e78821f",
"hidden.border": "#6e788266",
"unreachable": "#6e7882",
"unreachable.background": "#6e78821f",
"unreachable.border": "#6e788266",
"terminal.background": "#222531",
"terminal.foreground": "#a9bcc3",
"terminal.bright_foreground": "#cce7ec",
"terminal.dim_foreground": "#6e7882",
"terminal.ansi.background": "#222531",
"terminal.ansi.black": "#222531",
"terminal.ansi.red": "#ff491a",
"terminal.ansi.green": "#16b866",
"terminal.ansi.yellow": "#e1c631",
"terminal.ansi.blue": "#6388d8",
"terminal.ansi.magenta": "#9d78ff",
"terminal.ansi.cyan": "#00b1a8",
"terminal.ansi.white": "#a9bcc3",
"terminal.ansi.bright_black": "#373b46",
"terminal.ansi.bright_red": "#ff854f",
"terminal.ansi.bright_green": "#51e08a",
"terminal.ansi.bright_yellow": "#ffe14e",
"terminal.ansi.bright_blue": "#a4c4ff",
"terminal.ansi.bright_magenta": "#d8adff",
"terminal.ansi.bright_cyan": "#42dcd1",
"terminal.ansi.bright_white": "#cce7ec",
"terminal.ansi.dim_black": "#2c303b",
"terminal.ansi.dim_red": "#9a3e2b",
"terminal.ansi.dim_green": "#2e724f",
"terminal.ansi.dim_yellow": "#88783a",
"terminal.ansi.dim_blue": "#465988",
"terminal.ansi.dim_magenta": "#63519c",
"terminal.ansi.dim_cyan": "#2a6e70",
"terminal.ansi.dim_white": "#6e7882",
"accents": [
"#6388d8",
"#00b1a8",
"#16b866",
"#9d78ff",
"#e1c631",
"#42dcd1",
"#a4c4ff",
"#51e08a"
],
"players": [
{
"cursor": "#6388d8",
"background": "#6388d8",
"selection": "#6388d83d"
},
{
"cursor": "#16b866",
"background": "#16b866",
"selection": "#16b8663d"
},
{
"cursor": "#9d78ff",
"background": "#9d78ff",
"selection": "#9d78ff3d"
},
{
"cursor": "#00b1a8",
"background": "#00b1a8",
"selection": "#00b1a83d"
},
{
"cursor": "#ff854f",
"background": "#ff854f",
"selection": "#ff854f3d"
},
{
"cursor": "#e1c631",
"background": "#e1c631",
"selection": "#e1c6313d"
},
{
"cursor": "#42dcd1",
"background": "#42dcd1",
"selection": "#42dcd13d"
},
{
"cursor": "#d8adff",
"background": "#d8adff",
"selection": "#d8adff3d"
}
],
"syntax": {
"comment": {
"color": "#6e7882",
"font_style": "italic",
"font_weight": null
},
"comment.doc": {
"color": "#86929d",
"font_style": "italic",
"font_weight": null
},
"operator": {
"color": "#86929d",
"font_style": null,
"font_weight": null
},
"punctuation": {
"color": "#86929d",
"font_style": null,
"font_weight": null
},
"punctuation.bracket": {
"color": "#86929d",
"font_style": null,
"font_weight": null
},
"punctuation.delimiter": {
"color": "#86929d",
"font_style": null,
"font_weight": null
},
"punctuation.list_marker": {
"color": "#6388d8",
"font_style": null,
"font_weight": null
},
"punctuation.special": {
"color": "#d8adff",
"font_style": null,
"font_weight": null
},
"variable": {
"color": "#a9bcc3",
"font_style": null,
"font_weight": null
},
"property": {
"color": "#9daeb6",
"font_style": null,
"font_weight": null
},
"primary": {
"color": "#a9bcc3",
"font_style": null,
"font_weight": null
},
"hint": {
"color": "#6e7882",
"font_style": "italic",
"font_weight": null
},
"predictive": {
"color": "#565f69",
"font_style": "italic",
"font_weight": null
},
"keyword": {
"color": "#6388d8",
"font_style": null,
"font_weight": null
},
"tag": {
"color": "#6388d8",
"font_style": null,
"font_weight": null
},
"link_text": {
"color": "#6388d8",
"font_style": "italic",
"font_weight": null
},
"label": {
"color": "#a4c4ff",
"font_style": null,
"font_weight": null
},
"title": {
"color": "#a4c4ff",
"font_style": null,
"font_weight": 700
},
"function": {
"color": "#42dcd1",
"font_style": null,
"font_weight": null
},
"function.definition": {
"color": "#42dcd1",
"font_style": null,
"font_weight": null
},
"function.method": {
"color": "#42dcd1",
"font_style": null,
"font_weight": null
},
"function.special.definition": {
"color": "#42dcd1",
"font_style": null,
"font_weight": null
},
"type": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"type.interface": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"type.super": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"constructor": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"enum": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"variant": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"link_uri": {
"color": "#00b1a8",
"font_style": null,
"font_weight": null
},
"emphasis": {
"color": "#42dcd1",
"font_style": "italic",
"font_weight": null
},
"emphasis.strong": {
"color": "#42dcd1",
"font_style": null,
"font_weight": 700
},
"string": {
"color": "#16b866",
"font_style": null,
"font_weight": null
},
"string.escape": {
"color": "#51e08a",
"font_style": null,
"font_weight": null
},
"string.regex": {
"color": "#51e08a",
"font_style": null,
"font_weight": null
},
"string.special": {
"color": "#51e08a",
"font_style": null,
"font_weight": null
},
"string.special.symbol": {
"color": "#51e08a",
"font_style": null,
"font_weight": null
},
"text.literal": {
"color": "#16b866",
"font_style": null,
"font_weight": null
},
"number": {
"color": "#a4c4ff",
"font_style": null,
"font_weight": null
},
"boolean": {
"color": "#a4c4ff",
"font_style": null,
"font_weight": null
},
"constant": {
"color": "#a4c4ff",
"font_style": null,
"font_weight": null
},
"attribute": {
"color": "#d8adff",
"font_style": null,
"font_weight": null
},
"variable.special": {
"color": "#9d78ff",
"font_style": "italic",
"font_weight": null
},
"preproc": {
"color": "#9d78ff",
"font_style": null,
"font_weight": null
},
"embedded": {
"color": "#9d78ff",
"font_style": null,
"font_weight": null
}
}
}
}
]
}