дзеркало
https://github.com/l0ng-ai/openidea.git
синхронізовано 2026-11-09 11:15:40 +02:00
Add two contribution-only theme plugins, each with a light and a dark theme that sets every UI token plus an editor colour scheme with syntax, editor and terminal ANSI colours: - plugins/theme-solarized: Solarized Light, Solarized Dark - plugins/theme-one: One Light, One Dark (Atom One, original HSL values) They replace the partial theme-solarized-dark sample. Each package ships the MIT notice of its palette in LICENSE, which is now copied on install with the files the manifest references. scripts/theme checks every theme plugin in plugins/ against the token list of tokens.css. Theme handling that any theme benefits from: - Start-up: boot.js restores the selected plugin theme's stylesheet and the last resolved frame, text and accent colours before any CSS loads, so the splash and workbench no longer show the built-in theme until the plugin host answers. The UI keeps the boot theme until the first plugin list, and the list now waits for the initial plugin load. - Native windows: the UI reports the plugin theme's resolved frame colour, which the plugin host persists and new project windows open in. - hsl(), color-mix() and var() tokens are resolved to RGB for Tauri's window background, the native Settings window (hex) and Mermaid diagrams. - Mermaid, the terminal and the editor colour scheme follow switches between plugin themes of the same light / dark base; an explicit editor scheme now replaces a plugin theme's editor colours. Supersedes #85. Co-authored-by: bghtyu <[email protected]> Claude-Session: https://claude.ai/code/session_01VUYsdXA2nkF5v6zsC93dpn
104 рядки
3.7 KiB
JSON
104 рядки
3.7 KiB
JSON
// Solarized palette by Ethan Schoonover (https://github.com/altercation/solarized),
|
|
// MIT licence, see LICENSE. Adapted to OpenIDEA's tokens by bghtyu.
|
|
// Editor colour scheme: syntax, editor surfaces and terminal ANSI colours.
|
|
{
|
|
"name": "Solarized Light",
|
|
"tokens": {
|
|
// Syntax
|
|
"--syn-keyword": "#859900",
|
|
"--syn-string": "#2aa198",
|
|
"--syn-type": "#b58900",
|
|
"--syn-function": "#268bd2",
|
|
"--syn-function-call": "#268bd2",
|
|
"--syn-comment": "#93a1a1",
|
|
"--syn-comment-style": "italic",
|
|
"--syn-doc-comment": "#93a1a1",
|
|
"--syn-docstring": "#2aa198",
|
|
"--syn-annotation": "#cb4b16",
|
|
"--syn-decorator": "#cb4b16",
|
|
"--syn-number": "#2aa198",
|
|
"--syn-punct": "#657b83",
|
|
"--syn-variable": "#268bd2",
|
|
"--syn-param": "#657b83",
|
|
"--syn-property": "#268bd2",
|
|
"--syn-constant": "#2aa198",
|
|
"--syn-builtin": "#2aa198",
|
|
"--syn-self": "#dc322f",
|
|
"--syn-keyword-arg": "#dc322f",
|
|
"--syn-predefined": "#2aa198",
|
|
"--syn-escape": "#dc322f",
|
|
"--syn-regexp": "#2aa198",
|
|
"--syn-tag": "#268bd2",
|
|
"--syn-attribute": "#cb4b16",
|
|
"--syn-todo": "#d33682",
|
|
"--syn-link": "#268bd2",
|
|
"--syn-markup-heading": "#268bd2",
|
|
"--syn-markup-code": "#2aa198",
|
|
"--syn-invalid": "#dc322f",
|
|
"--syn-inline-value": "#657b83",
|
|
"--syn-rainbow-1": "#2aa198",
|
|
"--syn-rainbow-2": "#cb4b16",
|
|
"--syn-rainbow-3": "#859900",
|
|
"--syn-rainbow-4": "#d33682",
|
|
"--syn-rainbow-5": "#268bd2",
|
|
"--syn-bracket-1": "#b58900",
|
|
"--syn-bracket-2": "#d33682",
|
|
"--syn-bracket-3": "#268bd2",
|
|
|
|
// Editor
|
|
"--fg-editor": "#657b83",
|
|
"--caret": "#268bd2",
|
|
"--fg-line-number": "#657b83",
|
|
"--fg-line-number-current": "#657b83",
|
|
"--border-gutter": "#eee8d5",
|
|
"--border-indent-guide": "#eee8d5",
|
|
"--border-indent-guide-active": "#268bd2",
|
|
"--border-right-margin": "#eee8d5",
|
|
"--bg-editor-selection": "#eee8d5",
|
|
"--bg-editor-selection-inactive": "#eee8d5",
|
|
"--bg-text-search-result": "color-mix(in srgb, #b58900 22%, #fdf6e3)",
|
|
"--bg-text-search-result-current": "color-mix(in srgb, #b58900 36%, #fdf6e3)",
|
|
"--bg-matched-brace": "#eee8d5",
|
|
"--matched-brace-weight": "var(--fw-code-bold)",
|
|
"--bg-matched-tag": "#eee8d5",
|
|
"--bg-fold-placeholder": "#eee8d5",
|
|
"--fg-fold-placeholder": "#657b83",
|
|
"--fg-fold-marker": "#657b83",
|
|
"--fg-whitespace": "#657b83",
|
|
"--fg-unused": "#657b83",
|
|
"--bg-identifier-under-caret": "#eee8d5",
|
|
"--bg-identifier-under-caret-write": "color-mix(in srgb, #dc322f 12%, #fdf6e3)",
|
|
"--fg-inlay": "#657b83",
|
|
"--bg-inlay": "#eee8d5",
|
|
"--wave-error": "#dc322f",
|
|
"--wave-warning": "#b58900",
|
|
"--editor-error-decoration": "underline wavy var(--wave-error)",
|
|
"--editor-warning-decoration": "underline wavy var(--wave-warning)",
|
|
"--editor-warning-background": "color-mix(in srgb, #b58900 12%, #fdf6e3)",
|
|
"--bg-breakpoint-line": "color-mix(in srgb, #dc322f 12%, #fdf6e3)",
|
|
"--fg-completion-match": "#268bd2",
|
|
"--bg-editor-inline": "#eee8d5",
|
|
"--bg-editor-banner": "color-mix(in srgb, #268bd2 12%, #fdf6e3)",
|
|
"--fg-weak-warning": "#657b83",
|
|
"--fg-bulb": "#b58900",
|
|
|
|
// ANSI palette
|
|
"--ansi-black": "#073642",
|
|
"--ansi-red": "#dc322f",
|
|
"--ansi-green": "#859900",
|
|
"--ansi-yellow": "#b58900",
|
|
"--ansi-blue": "#268bd2",
|
|
"--ansi-magenta": "#d33682",
|
|
"--ansi-cyan": "#2aa198",
|
|
"--ansi-white": "#eee8d5",
|
|
"--ansi-bright-black": "#002b36",
|
|
"--ansi-bright-red": "#cb4b16",
|
|
"--ansi-bright-green": "#586e75",
|
|
"--ansi-bright-yellow": "#657b83",
|
|
"--ansi-bright-blue": "#839496",
|
|
"--ansi-bright-magenta": "#6c71c4",
|
|
"--ansi-bright-cyan": "#93a1a1",
|
|
"--ansi-bright-white": "#fdf6e3"
|
|
}
|
|
}
|