Sublime Text 编辑区配色(color_scheme)与 Terminus 终端配色(terminal_color_scheme)完全独立:前者用 .tmTheme 文件控制代码显示,后者需指定 Terminus 自带或自定义的 JSON 格式配色文件(如 Monokai.json),路径须完整且大小写严格匹配,修改后需新建终端生效。

Sublime Text 本身没有内置终端(Terminal)功能,所谓“终端配色方案”实际是用户混淆了两个独立模块:一是 Sublime 的 color_scheme(仅控制代码编辑区),二是通过插件(如 Terminus 或 SublimeREPL)启动的外部终端仿真器——它的颜色由插件自身配置,和编辑区配色完全无关。
Terminus 插件的 terminal_color_scheme 怎么设
如果你用的是主流终端插件 Terminus,它提供独立的 terminal_color_scheme 配置项,用于定义终端内文字、背景、ANSI 色等。这个值不接受 Sublime 原生的 .tmTheme 路径,而是必须指向 Terminus 自带的 JSON 格式配色文件(如 Monokai.json)或你自定义的同类文件。
- 打开
Preferences → Package Settings → Terminus → Settings - 在用户设置中添加:
"terminal_color_scheme": "Packages/Terminus/Terminus/schemes/Monokai.json"
- 可选值包括:
Default.json、Solarized Dark.json、Dracula.json,路径必须完整且大小写严格匹配 - 改完保存,新开一个 Terminus tab 才会生效(已打开的终端不会热重载)
- 若路径错误或 JSON 格式损坏,Terminus 会静默回退到默认黑底白字,不报错也不提示
为什么改了 color_scheme,Terminus 里的 Python 输出还是蓝底白字
因为 color_scheme 只影响 Sublime 编辑区,对 Terminus、SublimeREPL 或系统终端无任何作用。你在 Settings - User 里写的 "color_scheme": "Packages/.../Ayu Mirage.tmTheme" 对终端窗口零影响。
- 终端输出颜色取决于三件事:程序本身的 ANSI 转义序列(如
\033[32m)、终端仿真器对这些序列的映射、以及terminal_color_scheme中定义的 16 色调色板 - 例如,Python 的
print("\033[33mhello\033[0m")显示为黄色,实际显示成什么色,由Terminus的yellow字段决定,不是由你的Ayu Mirage里stringscope 控制 - 想统一风格,得手动编辑
Monokai.json里的"yellow"、"background"等字段,而不是复用编辑区配色文件
如何自定义 Terminus 的 ANSI 黄色或背景色
直接修改 Terminus 的 scheme 文件是最可靠方式。不要试图用 CSS 或主题覆盖——它不读取 theme 或 color_scheme。
- 进入
Preferences → Browse Packages… → Terminus → Terminus/schemes/ - 复制一份
Default.json,重命名为MyTerm.json - 编辑该文件,调整字段如:
"background": "#0d1117",<br>"foreground": "#c9d1d9",<br>"yellow": "#e5c837"
- 在
Terminus Settings中设"terminal_color_scheme": "Packages/Terminus/Terminus/schemes/MyTerm.json" - 注意:JSON 中所有颜色值必须是
"#rrggbb"格式,不支持rgb()或命名色
真正容易被忽略的是:Terminus 的配色和编辑区配色是两套完全不互通的系统,连文件格式都不同(JSON vs XML/tmTheme)。想让终端看着舒服,别去动 color_scheme,盯死 terminal_color_scheme 和它指向的那个 JSON 文件就行。











