OpenCode-Theme

OpenCode unterstützt mehrere Theme-Systeme. Du kannst ein integriertes Theme auswählen, dich automatisch an das Terminal-Theme anpassen oder das Theme vollständig anpassen, für ein konsistentes und komfortables Terminal-Erlebnis.

Der einfachste Weg ist, den Befehl /themes in das TUI-Eingabefeld einzugeben:

/themes

Wähle dann dein bevorzugtes Theme im Pop-up-Fenster aus:


Terminal-Anforderungen

Um sicherzustellen, dass Themes die vollen Farben korrekt anzeigen können, muss dein TerminalTrue Color (24-Bit-Farbe) unterstützen。

  • Unterstützung prüfen:
echo $COLORTERM

Die Ausgabe sollte Folgendes sein:

truecolor
oder 
24bit
  • True Color aktivieren:
export COLORTERM=truecolor
  • Häufig unterstützte Terminals:
  • iTerm2
  • Alacritty
  • Kitty
  • Windows Terminal
  • GNOME Terminal (neue Version)

Wenn das Terminal True Color nicht unterstützt, fällt das Theme auf 256 Farben zurück, was zu Farbverfälschungen führen kann.


Integrierte Themes

OpenCode enthält mehrere integrierte Themes, die sofort einsatzbereit sind:

Theme-Name Beschreibung
systemAutomatische Anpassung an das Terminal-Design
tokyonightTokyonight-Stil
everforestEverforest-Stil
ayuAyu-Dunkeldesign
catppuccinCatppuccin-Design
catppuccin-macchiatoCatppuccin-Variante
gruvboxGruvbox-Stil
kanagawaKanagawa-Stil
nordNord-Stil
matrixHacker-Stil (schwarzer Hintergrund mit grünem Text)
one-darkAtom One Dark

System-Theme (Empfohlen)

systemDas Theme passt sich automatisch an das Farbschema deines Terminals an:

  • Erzeugt Graustufen basierend auf dem Terminal-Hintergrund
  • Verwendet ANSI-Standardfarben
  • Behält den Standardtext und Hintergrund des Terminals bei

Geeignet für:

  • Benutzer mit benutzerdefinierten Terminal-Themes
  • Benutzer, die einen einheitlichen Stil für alle Terminal-Tools wünschen

Themes verwenden

Methode 1: Ein Theme in der TUI auswählen

/themes

Methode 2: Über die Konfigurationsdatei festlegen

tui.json

{
  "$schema": "https://opencode.ai/tui.json",
  "theme": "tokyonight"
}

Benutzerdefinierte Themes

OpenCode unterstützt vollständig benutzerdefinierte Themes, die über JSON definiert werden.

Priorität beim Laden von Themes

  • Integrierte Themes
  • Benutzerverzeichnis: ~/.config/opencode/themes/
  • Projektverzeichnis: .opencode/themes/
  • Aktuelles Verzeichnis: ./.opencode/themes/

Später geladene Themes überschreiben frühere.


Themes erstellen

Themes auf Benutzerebene:

mkdir -p ~/.config/opencode/themes
vim ~/.config/opencode/themes/my-theme.json

Themes auf Projektebene:

mkdir -p .opencode/themes
vim .opencode/themes/my-theme.json

Erklärung des Theme-Formats

Unterstützt die folgenden Formate:

  • Hex-Farbe: #ffffff
  • ANSI-Farben: 0-255
  • Farbreferenz: primary
  • Hell-/Dunkelmodus:
{
  "dark": "#000000",
  "light": "#FFFFFF"
}
  • Terminal-Standard übernehmen:
"text": "none"

Vollständiges Beispiel

my-theme.json

{
  "$schema": "https://opencode.ai/theme.json",
  "defs": {
    "bg": "#1E1E2E",
    "fg": "#CDD6F4",
    "primary": "#89B4FA",
    "accent": "#F38BA8",
    "success": "#7DB0E3",
    "warning": "#F9E2AF"
  },
  "theme": {
    "primary": {
      "dark": "primary",
      "light": "#005F87"
    },
    "accent": {
      "dark": "accent",
      "light": "#D7005F"
    },
    "background": {
      "dark": "bg",
      "light": "#FFFFFF"
    },
    "text": {
      "dark": "fg",
      "light": "#000000"
    },
    "border": {
      "dark": "#313244",
      "light": "#CCCCCC"
    },
    "syntaxKeyword": {
      "dark": "primary",
      "light": "#0000FF"
    },
    "syntaxString": {
      "dark": "success",
      "light": "#0053A6"
    },
    "syntaxComment": {
      "dark": "#6C7086",
      "light": "#999999"
    }
  }
}

Zusammenfassung

Das OpenCode-Theme-System bietet die folgenden Funktionen:

  • Unterstützt integrierte Themes, sofort einsatzbereit
  • Unterstützt die automatische Anpassung des Systems an das Terminal
  • Unterstützt benutzerdefinierte Themes als JSON
  • Unterstützt einen mehrstufigen Override-Mechanismus

Wenn Sie das ultimative Erlebnis anstreben, wird Folgendes empfohlen:

  • Aktivieren Sie Truecolor in Ihrem Terminal
  • Bevorzugen Sie das System-Theme oder ein benutzerdefiniertes Theme
Andere Erweiterungen