Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docs/next/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## Unreleased

### Added
- Custom themes can now define separate light and dark color overrides when automatic theme switching is enabled. (#837, thanks @aneym)

### Fixed
- Retained mouse selections now copy when Ctrl+C or Cmd+C arrives before a delayed mouse release instead of forwarding the copy shortcut to the pane. (#3100, thanks @moret)
- Removing a background worktree workspace no longer changes focus to its parent workspace. (#3098)
Expand Down
17 changes: 17 additions & 0 deletions docs/next/website/src/content/docs/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,23 @@ yellow = "#f9e2af"

Color values accept hex, named colors, `rgb(r,g,b)`, or reset aliases like `reset`, `default`, `none`, and `transparent`.

When `auto_switch` is enabled, optional light and dark subtables layer on top of the shared custom colors:

```toml
[theme.custom]
accent = "#89b4fa"

[theme.custom.light]
panel_bg = "#eff1f5"
text = "#4c4f69"

[theme.custom.dark]
panel_bg = "#1e1e2e"
text = "#cdd6f4"
```

The active palette is applied in this order: built-in theme, `[theme.custom]`, then `[theme.custom.light]` or `[theme.custom.dark]`. Omitting the mode subtables preserves the existing shared override behavior.

## UI and sidebar

The sidebar is the main Herdr dashboard. Search `ui.` in the [Config reference](/docs/config-reference/) for sizing, collapsed mode, Agent panel ordering, mouse behavior, pane borders, and other presentation settings.
Expand Down
17 changes: 17 additions & 0 deletions docs/next/website/src/content/docs/ja/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,23 @@ yellow = "#f9e2af"

色の値には、hex、名前付きの色、`rgb(r,g,b)`、または `reset`、`default`、`none`、`transparent` のようなリセットエイリアスが使えます。

`auto_switch` が有効な場合は、ライト/ダーク別のサブテーブルを共有カスタム色の上に重ねられます:

```toml
[theme.custom]
accent = "#89b4fa"

[theme.custom.light]
panel_bg = "#eff1f5"
text = "#4c4f69"

[theme.custom.dark]
panel_bg = "#1e1e2e"
text = "#cdd6f4"
```

有効なパレットには、組み込みテーマ、`[theme.custom]`、`[theme.custom.light]` または `[theme.custom.dark]` の順で適用されます。モード別のサブテーブルを省略すると、既存の共有上書きの挙動が維持されます。

## UI とサイドバー

サイドバーは Herdr のメインダッシュボードです。サイズ、折りたたみモード、Agent パネルの並び順、マウスの挙動、ペインの境界線、その他の表示設定については、[設定リファレンス](/docs/config-reference/)で `ui.` を検索してください。
Expand Down
17 changes: 17 additions & 0 deletions docs/next/website/src/content/docs/zh-cn/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,23 @@ yellow = "#f9e2af"

颜色值支持十六进制、命名颜色、`rgb(r,g,b)`,以及 `reset`、`default`、`none`、`transparent` 等重置别名。

启用 `auto_switch` 后,可以通过明暗模式子表在共享自定义颜色之上应用不同的覆盖值:

```toml
[theme.custom]
accent = "#89b4fa"

[theme.custom.light]
panel_bg = "#eff1f5"
text = "#4c4f69"

[theme.custom.dark]
panel_bg = "#1e1e2e"
text = "#cdd6f4"
```

有效调色板按以下顺序应用:内置主题、`[theme.custom]`,然后是 `[theme.custom.light]` 或 `[theme.custom.dark]`。省略模式子表时,会保留现有的共享覆盖行为。

## UI 与侧边栏

侧边栏是 Herdr 的主仪表盘。在[配置参考](/docs/config-reference/)中搜索 `ui.`,可查看尺寸、折叠模式、Agent 面板排序、鼠标行为、窗格边框和其他显示设置。
Expand Down
228 changes: 228 additions & 0 deletions docs/next/website/src/data/config-reference.json
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,234 @@
"type": "color",
"default": "unset",
"description": "Override the peach color token on top of the base theme. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.accent",
"type": "color",
"default": "unset",
"description": "Override the accent color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.panel_bg",
"type": "color",
"default": "unset",
"description": "Override the panel_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.sidebar_bg",
"type": "color",
"default": "unset",
"description": "Override the sidebar_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.active_row_bg",
"type": "color",
"default": "unset",
"description": "Override the active_row_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.selection_bg",
"type": "color",
"default": "unset",
"description": "Override the selection_bg color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.surface0",
"type": "color",
"default": "unset",
"description": "Override the surface0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.surface1",
"type": "color",
"default": "unset",
"description": "Override the surface1 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.surface_dim",
"type": "color",
"default": "unset",
"description": "Override the surface_dim color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.overlay0",
"type": "color",
"default": "unset",
"description": "Override the overlay0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.overlay1",
"type": "color",
"default": "unset",
"description": "Override the overlay1 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.text",
"type": "color",
"default": "unset",
"description": "Override the text color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.subtext0",
"type": "color",
"default": "unset",
"description": "Override the subtext0 color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.mauve",
"type": "color",
"default": "unset",
"description": "Override the mauve color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.green",
"type": "color",
"default": "unset",
"description": "Override the green color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.yellow",
"type": "color",
"default": "unset",
"description": "Override the yellow color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.red",
"type": "color",
"default": "unset",
"description": "Override the red color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.blue",
"type": "color",
"default": "unset",
"description": "Override the blue color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.teal",
"type": "color",
"default": "unset",
"description": "Override the teal color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.light.peach",
"type": "color",
"default": "unset",
"description": "Override the peach color token when auto_switch selects a light appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.accent",
"type": "color",
"default": "unset",
"description": "Override the accent color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.panel_bg",
"type": "color",
"default": "unset",
"description": "Override the panel_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.sidebar_bg",
"type": "color",
"default": "unset",
"description": "Override the sidebar_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.active_row_bg",
"type": "color",
"default": "unset",
"description": "Override the active_row_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.selection_bg",
"type": "color",
"default": "unset",
"description": "Override the selection_bg color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.surface0",
"type": "color",
"default": "unset",
"description": "Override the surface0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.surface1",
"type": "color",
"default": "unset",
"description": "Override the surface1 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.surface_dim",
"type": "color",
"default": "unset",
"description": "Override the surface_dim color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.overlay0",
"type": "color",
"default": "unset",
"description": "Override the overlay0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.overlay1",
"type": "color",
"default": "unset",
"description": "Override the overlay1 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.text",
"type": "color",
"default": "unset",
"description": "Override the text color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.subtext0",
"type": "color",
"default": "unset",
"description": "Override the subtext0 color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.mauve",
"type": "color",
"default": "unset",
"description": "Override the mauve color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.green",
"type": "color",
"default": "unset",
"description": "Override the green color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.yellow",
"type": "color",
"default": "unset",
"description": "Override the yellow color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.red",
"type": "color",
"default": "unset",
"description": "Override the red color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.blue",
"type": "color",
"default": "unset",
"description": "Override the blue color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.teal",
"type": "color",
"default": "unset",
"description": "Override the teal color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
},
{
"key": "theme.custom.dark.peach",
"type": "color",
"default": "unset",
"description": "Override the peach color token when auto_switch selects a dark appearance. Applied after theme.custom. Accepts hex, named colors, rgb(r,g,b), or reset aliases."
}
]
},
Expand Down
Loading
Loading