news 2026/9/14 10:05:51

Windows Terminal主题自动切换:一套配置搞定深浅色联动

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Windows Terminal主题自动切换:一套配置搞定深浅色联动

Windows Terminal主题自动切换:一套配置搞定深浅色联动

【免费下载链接】terminalThe new Windows Terminal and the original Windows console host, all in the same place!项目地址: https://gitcode.com/GitHub_Trending/term/terminal

晚上十点盯着终端,深色模式里突然切出浅色通知,刺眼得像闪了灯。把settings.json里的colorScheme配成浅色/深色双方案,终端就能跟着系统主题走,白天看浅色、夜里回深色,不用手动切。

这就是目标效果:同一套配置,主题变了配色跟着变。下面从最小改动开始讲。

开始前的准备清单

  • 确认版本支持light/dark双方案写法:在终端里执行wt --version看版本号,太旧就升级到最新稳定版
  • 配置文件位置:%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
  • 系统里先能手动切换深浅色(设置 > 个性化 > 颜色),后续验证全靠它
  • 改配置前把settings.json复制一份做备份,JSON 手滑删个括号就得回滚

方法一:跟随系统主题(三步生效)

第 1 步:给 profile 配上双方案。Ctrl+Shift+P打开命令面板,运行“Open Settings (JSON)”,在profilesdefaults下写入:

"profiles": { "defaults": { "colorScheme": { "light": "Campbell", "dark": "Campbell Powershell" } } }

对象形式里lightdark分别指定两种主题下使用的配色名,两边都缺省Campbell。验证:文件里出现colorScheme对象且没有红波浪线,说明 JSON 格式没问题。

第 2 步:把应用主题设为跟随系统。settings.json顶层加一行:

"theme": "system"

theme支持darklightsystem三个值,默认是dark。这个定义在 配色方案规范 里写得明明白白。验证:命令面板运行“Reload settings”,不报错即生效。

第 3 步:切一次系统主题验证联动。把 Windows 切到浅色,新开一个标签页。验证标准很直接:浅色下文本背景变浅、深色下回到深底。若颜色纹丝不动,多半是light/dark填的方案名和schemes里的name对不上,逐个核对即可。

方法二:按时间段切换(进阶可选)

思路一句话:不等系统,用 PowerShell 按小时改写settings.json,再交给任务计划程序定时跑。脚本核心逻辑就这几行:

$hour = (Get-Date).Hour $scheme = if ($hour -ge 6 -and $hour -lt 18) { "Campbell" } else { "Campbell Powershell" } $path = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json" $raw = (Get-Content $path -Raw) -replace '"colorScheme":\s*"[^"]*"', """colorScheme"": ""$scheme""`" Set-Content $path $raw

把方案名换成你要的即可。剩下的细节:任务计划程序建一个每日任务,触发时间定在时段交界处(如 6:00、18:00),操作指向powershell.exe -File 脚本路径。改完配置后运行命令面板里的“Reload settings”,现有标签页立即应用新配色,不必重启窗口。

容易踩坑的场景

现象原因和对策
改成 light/dark 对象后颜色不变老版本只认字符串形式的colorScheme,升级版本;wt --version先确认
报配置无效或回退默认方案名大小写必须与schemes里的name完全一致,别自创名字
定时脚本和theme: system打架两个机制都在改同一处,二选一:要么删掉脚本,要么脚本里先判断系统主题再决定是否写入

另外提醒一句:colorScheme双方案写法目前是 主题控制配色方案 spec 定义的方向,官方在 主题方案讨论 里还规划了更完整的主题市场和基于系统主题的整体换肤,等原生能力补齐,这套手动方案可以随时退役。

<输出文章> </输出文章>

<输出文章>

Windows Terminal主题自动切换:一套配置搞定深浅色联动

</输出文章>

等等,我需要重新检查输出格式——上面重复了。以下是正确的最终输出。

<输出文章>

Windows Terminal主题自动切换:一套配置搞定深浅色联动

晚上十点盯着终端,深色模式里突然切出浅色通知,刺眼得像闪了灯。把settings.json里的colorScheme配成浅色/深色双方案,终端就能跟着系统主题走,白天看浅色、夜里回深色,不用手动切。

这就是目标效果:同一套配置,主题变了配色跟着变。下面从最小改动开始讲。

开始前的准备清单

  • 确认版本支持light/dark双方案写法:在终端里执行wt --version看版本号,太旧就升级到最新稳定版
  • 配置文件位置:%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
  • 系统里先能手动切换深浅色(设置 > 个性化 > 颜色),后续验证全靠它
  • 改配置前把settings.json复制一份做备份,JSON 手滑删个括号就得回滚

方法一:跟随系统主题(三步生效)

第 1 步:给 profile 配上双方案。Ctrl+Shift+P打开命令面板,运行“Open Settings (JSON)”,在profilesdefaults下写入:

"profiles": { "defaults": { "colorScheme": { "light": "Campbell", "dark": "Campbell Powershell" } } }

对象形式里lightdark分别指定两种主题下使用的配色名,两边都缺省Campbell。验证:文件里出现colorScheme对象且没有红波浪线,说明 JSON 格式没问题。

第 2 步:把应用主题设为跟随系统。settings.json顶层加一行:

"theme": "system"

theme支持darklightsystem三个值,默认是dark。这个定义在 配色方案规范 里写得明明白白。验证:命令面板运行“Reload settings”,不报错即生效。

第 3 步:切一次系统主题验证联动。把 Windows 切到浅色,新开一个标签页。验证标准很直接:浅色下背景变浅、深色下回到深底。若颜色纹丝不动,多半是light/dark填的方案名和schemes里的name对不上,逐个核对即可。

方法二:按时间段切换(进阶可选)

思路一句话:不等系统,用 PowerShell 按小时改写settings.json,再交给任务计划程序定时跑。脚本核心逻辑就这几行:

$hour = (Get-Date).Hour $scheme = if ($hour -ge 6 -and $hour -lt 18) { "Campbell" } else { "Campbell Powershell" } $path = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json" $raw = (Get-Content $path -Raw) -replace '"colorScheme":\s*"[^"]*"', '"colorScheme": "' + $scheme + '"' Set-Content $path $raw

把方案名换成你要的即可。剩下细节:任务计划程序建一个每日任务,触发时间定在时段交界处(如 6:00、18:00),操作指向powershell.exe -File 脚本路径。改完配置后运行命令面板里的“Reload settings”,现有标签页立即应用新配色,不必重启窗口。

容易踩坑的场景

现象原因和对策
改成 light/dark 对象后颜色不变老版本只认字符串形式的colorScheme,先升级;用wt --version确认
配色不生效或回退默认方案名大小写必须与schemes里的name完全一致,别自创名字
定时脚本和theme: system打架两个机制都在改同一处,二选一:删掉脚本,或脚本里先判断系统主题再决定是否写入

这套联动能解决大部分场景,想玩得更深可以看 贡献指南 参与讨论,或关注 2023 路线图 里关于主题市场和系统主题整体换肤的规划。

【免费下载链接】terminalThe new Windows Terminal and the original Windows console host, all in the same place!项目地址: https://gitcode.com/GitHub_Trending/term/terminal

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/14 10:03:07

AI编码范式迁移:OPC UA如何成为工业AI生态锚点

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 10:01:43

智能系统设计时代:汽车电子从工具应用到数据驱动范式跃迁

1. 项目概述&#xff1a;这不是一次软件功能更新&#xff0c;而是一场设计范式的迁移“Cadence 汪晓煜&#xff1a;数智赋能&#xff0c;汽车电子走向智能系统设计时代”——这个标题里没有出现任何具体命令、参数或报错信息&#xff0c;但它比所有“cadence allegro 17.4安装步…

作者头像 李华
网站建设 2026/9/14 10:01:29

AI学术专著生成工具评测与高效写作指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 10:01:02

LangChain框架下的RAG中间件开发与优化实践

1. RAG与中间件技术解析在当今AI应用开发领域&#xff0c;检索增强生成&#xff08;RAG&#xff09;系统已成为连接大语言模型与领域知识的重要桥梁。而中间件作为系统架构中的粘合剂&#xff0c;在RAG流程中扮演着关键角色。本文将深入探讨如何利用LangChain框架构建高效的RAG…

作者头像 李华