ターミナルテーマ
xterm.js ターミナル用の独立したカラーパレット — ライト用とダーク用を 1 つずつ選びます。
ターミナルペインは xterm.js を使い、UI の他の部分とは独立した独自のカラーパレットを持ちます。ダークテーマとライトテーマを 1 つずつ選び、purplemux はアプリのテーマ切替に合わせてそれらを切り替えます。
ピッカーを開く
設定 (⌘,) → ターミナル タブ。Dark と Light のサブタブがあり、それぞれにテーマカードのグリッドが並びます。1 つをクリックすると、開いているすべてのターミナルにライブで適用されます。
なぜ独立したパレットなのか
ターミナルアプリは 16 色 ANSI パレット (赤、緑、黄、青、マゼンタ、シアン + ブライトバリアント) に依存します。UI パレットは設計上ミュート寄りなので、ターミナル出力では読みにくくなります。専用のパレットを使うことで vim、git diff、シンタックスハイライト、TUI ツールが正しくレンダリングされます。
各テーマは以下を定義します:
- 背景、前景、カーソル、選択
- 8 色の基本 ANSI (黒、赤、緑、黄、青、マゼンタ、シアン、白)
- 8 色のブライトバリアント
同梱テーマ
Dark
- Snazzy (デフォルト)
- Dracula
- One Dark
- Tokyo Night
- Nord
- Catppuccin Mocha
Light
- Catppuccin Latte (デフォルト)
- GitHub Light
- One Light
- Solarized Light
- Tokyo Night Light
- Nord Light
カードプレビューはテーマの背景に対して 7 つのコア ANSI 色を表示するので、確定する前にコントラストを目視できます。
ライト / ダーク切替の仕組み
ダークテーマを 1 つ と ライトテーマを 1 つ 独立して選びます。アクティブテーマは解決されたアプリテーマで決まります:
- アプリテーマが ダーク → 選んだダークテーマ。
- アプリテーマが ライト → 選んだライトテーマ。
- アプリテーマが システム → OS に追従、自動で入れ替わり。
つまり、アプリテーマを System にして両方を設定しておけば、追加配線なしに OS の昼夜に追従するターミナルになります。
テーマ単位、タブ単位ではない
選択はグローバルです。すべてのターミナルペインとすべての Claude セッションが同じアクティブテーマを使います。タブ単位の上書きはありません。必要なら issue を立ててください。
自分のものを追加する
カスタムテーマエントリは現状 UI の一部ではありません。同梱リストは src/lib/terminal-themes.ts にあります。ソースからビルドする場合は自分で追加できます。それ以外のサポート経路は新テーマ付きで PR を立てることです。