Skip to content

主题

Gemini CLI 支持多种主题来自定义其配色方案和外观。你可以通过 /theme 命令或 "theme": 配置设置来更改主题以适应你的偏好。

可用主题

Gemini CLI 附带了一系列预定义主题,你可以在 Gemini CLI 中使用 /theme 命令列出它们:

  • 深色主题:
    • ANSI
    • Atom One
    • Ayu
    • Default
    • Dracula
    • GitHub
  • 浅色主题:
    • ANSI Light
    • Ayu Light
    • Default Light
    • GitHub Light
    • Google Code
    • Xcode

更改主题

  1. 在 Gemini CLI 中输入 /theme
  2. 会出现一个对话框或选择提示,列出可用的主题。
  3. 使用方向键选择一个主题。某些界面可能会在你选择时提供实时预览或高亮显示。
  4. 确认你的选择以应用主题。

注意: 如果在你的 settings.json 文件中定义了主题(通过名称或文件路径),你必须先从文件中移除 "theme" 设置,然后才能使用 /theme 命令更改主题。

主题持久化

选定的主题会保存在 Gemini CLI 的配置中,因此你的偏好会在会话之间被记住。


自定义颜色主题

Gemini CLI 允许你通过在 settings.json 文件中指定来创建自己的自定义颜色主题。这让你可以完全控制 CLI 中使用的调色板。

如何定义自定义主题

在你的用户、项目或系统 settings.json 文件中添加一个 customThemes 块。每个自定义主题都定义为一个具有唯一名称和一组颜色键的对象。例如:

json
{
  "ui": {
    "customThemes": {
      "MyCustomTheme": {
        "name": "MyCustomTheme",
        "type": "custom",
        "Background": "#181818",
        ...
      }
    }
  }
}

颜色键:

  • Background
  • Foreground
  • LightBlue
  • AccentBlue
  • AccentPurple
  • AccentCyan
  • AccentGreen
  • AccentYellow
  • AccentRed
  • Comment
  • Gray
  • DiffAdded(可选,用于差异中的添加行)
  • DiffRemoved(可选,用于差异中的删除行)
  • DiffModified(可选,用于差异中的修改行)

你还可以通过添加嵌套的 text 对象来覆盖单个 UI 文本角色。此对象支持 primarysecondarylinkaccentresponse 键。当提供 text.response 时,它优先于 text.primary 用于在聊天中渲染模型响应。

必需属性:

  • name(必须与 customThemes 对象中的键匹配且为字符串)
  • type(必须是字符串 "custom"
  • Background
  • Foreground
  • LightBlue
  • AccentBlue
  • AccentPurple
  • AccentCyan
  • AccentGreen
  • AccentYellow
  • AccentRed
  • Comment
  • Gray

你可以使用十六进制代码(例如 #FF0000标准 CSS 颜色名称(例如 coraltealblue)作为任何颜色值。请参阅 CSS 颜色名称获取支持的名称完整列表。

你可以通过向 customThemes 对象添加更多条目来定义多个自定义主题。

从文件加载主题

除了在 settings.json 中定义自定义主题外,你还可以通过在 settings.json 中指定文件路径来直接从 JSON 文件加载主题。这对于共享主题或将它们与主配置分开保存很有用。

要从文件加载主题,请在 settings.json 中将 theme 属性设置为主题文件的路径:

json
{
  "ui": {
    "theme": "/path/to/your/theme.json"
  }
}

主题文件必须是遵循与 settings.json 中定义的自定义主题相同结构的有效 JSON 文件。

示例 my-theme.json

json
{
  "name": "My File Theme",
  "type": "custom",
  "Background": "#282A36",
  "Foreground": "#F8F8F2",
  "LightBlue": "#82AAFF",
  "AccentBlue": "#61AFEF",
  "AccentPurple": "#BD93F9",
  "AccentCyan": "#8BE9FD",
  "AccentGreen": "#50FA7B",
  "AccentYellow": "#F1FA8C",
  "AccentRed": "#FF5555",
  "Comment": "#6272A4",
  "Gray": "#ABB2BF",
  "DiffAdded": "#A6E3A1",
  "DiffRemoved": "#F38BA8",
  "DiffModified": "#89B4FA",
  "GradientColors": ["#4796E4", "#847ACE", "#C3677F"]
}

安全提示: 为了你的安全,Gemini CLI 只会加载位于你主目录内的主题文件。如果你尝试从主目录外加载主题,将显示警告且主题不会被加载。这是为了防止从不受信任的来源加载潜在的恶意主题文件。

自定义主题示例

自定义主题示例

使用你的自定义主题

  • 在 Gemini CLI 中使用 /theme 命令选择你的自定义主题。你的自定义主题将出现在主题选择对话框中。
  • 或者,通过在 settings.jsonui 对象中添加 "theme": "MyCustomTheme" 将其设置为默认主题。
  • 自定义主题可以在用户、项目或系统级别设置,并遵循与其他设置相同的配置优先级

深色主题

ANSI

ANSI 主题

Atom OneDark

Atom One 主题

Ayu

Ayu 主题

Default

Default 主题

Dracula

Dracula 主题

GitHub

GitHub 主题

浅色主题

ANSI Light

ANSI Light 主题

Ayu Light

Ayu Light 主题

Default Light

Default Light 主题

GitHub Light

GitHub Light 主题

Google Code

Google Code 主题

Xcode

Xcode Light 主题

aicodex 文档网站