Skip to content

カスタムカラーテーマ

SkimDown では、プレビュー領域のカラーテーマを JSON / JSONC ファイルで定義して切り替えられます。テーマは VS Code のカラーテーマ形式 に合わせているため、既存の VS Code テーマ資産を再利用できます。

テーマの配置場所

JSON または JSONC ファイルを次のフォルダに置きます。

text
~/Library/Application Support/SkimDown/Themes/

アプリからは View → Theme → Open Themes Folder でこのフォルダを開けます。

JSON 形式

各ファイルは単独の VS Code カラーテーマとして書きます。VS Code テーマファイルで使われるコメントや末尾のカンマも読み込めます。たとえば、次の内容を solarized-light.json として保存します。

json
{
  "$schema": "vscode://schemas/color-theme",
  "name": "Solarized Light",
  "type": "light",
  "colors": {
    "editor.background": "#fdf6e3",
    "editor.foreground": "#586e75",
    "descriptionForeground": "#93a1a1",
    "panel.border": "#eee8d5",
    "editorGroupHeader.tabsBackground": "#eee8d5",
    "editorWidget.background": "#fdf6e3",
    "textLink.foreground": "#268bd2",
    "editor.findMatchHighlightBackground": "#f8e8a5",
    "editor.findMatchBackground": "#fad880"
  }
}
  • nameView → Theme に表示される名前です。省略するとファイル名が使われます。
  • type"light" または "dark" です。コードハイライト CSS と Mermaid テーマの light/dark 切り替えにも使われます。
  • colors — VS Code のカラーキーです。SkimDown は一部のキーだけを使用し、それ以外は無視します。

tokenColors(シンタックスハイライト)はまだサポートしていません。コードブロックは type に応じて GitHub 風の light / dark ハイライトを使います。

カラーキーの対応

複数のキーがある場合は、先頭から順に最初に見つかった値を使います。

プレビュー要素VS Code カラーキー
背景editor.background
テキストeditor.foreground, foreground
補足テキストdescriptionForeground, disabledForeground
ボーダーpanel.border, editorGroup.border, editorWidget.border, contrastBorder
薄い背景editorGroupHeader.tabsBackground, editor.lineHighlightBackground, sideBar.background
パネル背景editorWidget.background, editor.background
リンクとアクセントtextLink.foreground, editorLink.activeForeground, focusBorder
検索ハイライトeditor.findMatchHighlightBackground
現在の検索一致editor.findMatchBackground

キーが不足している場合は、テーマの type に応じて SkimDown 組み込みの light / dark パレットで補完します。

テーマの再読み込み

Themes フォルダは自動監視されません。JSON または JSONC ファイルを追加または編集した後は、View → Theme → Reload Themes を選んで一覧を更新してください。

使用中のテーマファイルが削除された場合、次回の再読み込みまたは起動時に System テーマへ戻ります。

Released under the GPL-3.0 License.