Files
nyaterm/docs-site/docs/guide/themes.md
T

116 lines
6.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 主题与外观
NyaTerm 支持对工作区外观做细粒度调整,包括 UI 主题、终端主题、字体和光标样式。
## UI 主题与终端主题
在 **设置 → 外观** 中,你可以分别配置:
- **界面主题** — 控制应用整体配色
- **终端主题** — 控制终端区域配色;也可以选择跟随 UI 主题
顶部菜单 **View → Theme** 也可以快速切换主题。
内置的 **WindTerm Dark**(`windterm-dark`)和 **WindTerm Light**(`windterm-light`)分别基于 [WindTerm](https://github.com/kingToolbox/WindTerm) 的 `dige-black` 与 `dige-white` 配色,保留其 ANSI 16 色,并适配 NyaTerm 的界面状态色。两者都可独立用于界面或终端,也支持终端跟随界面。若要查看原始终端配色,请关闭下方的最小对比度增强;浅色主题的部分 ANSI 颜色在白底上对比度较低。
内置的 **Dracula**(`dracula`)和 **Dracula Light**(`dracula-light`)基于 [Dracula 官方规范](https://draculatheme.com/spec):深色版使用 Dracula Classic 的配色,浅色版使用 Alucard Classic(奶油白底)。官方规范也定义了 Alucard Classic 的 ANSI 16 色;但考虑到官方 ANSI 黑色(`#fffbeb`)在浅色终端背景上几乎不可见,NyaTerm 有意将浅色版的 ANSI 黑色调整为 `#1f1f1f`、ANSI 白色调整为 `#6c664b`。因此浅色版的这两项 ANSI 颜色与官方映射不同。深色版的亮黑(`#6272a4`)较暗,需要更高可读性时可以使用最小对比度增强。
主题列表里有两个高对比度主题,用于无障碍辅助、明亮环境或投屏场景:
- **Nya HC** — 深色底的高对比度
- **Nya HC White** — 浅色底的高对比度
它们和其他 UI 主题一样,在 **设置 → 外观** 或顶部菜单 **View → Theme** 中选择。
## 自定义主题
在 **设置 → 外观 → 管理主题** 中进入独立管理页。左侧按内置主题和我的主题分组,点击主题仅在右侧预览,不改变应用配色。内置主题只读,可创建副本后编辑;自定义主题可编辑、重命名、复制、导出或删除。
颜色选择器支持可视选色和颜色值输入,界面与终端颜色分开展示。预览包含界面控件、终端示例和 ANSI 16 色;非法输入保留上次有效预览,对比度不足时给出提示。
**保存修改** 直接持久保存主题;保存正在使用的主题会立即刷新所有使用处。**应用到界面/终端** 只更改对应范围;**同时应用** 将终端设为跟随界面。未保存的编辑可通过 **保存并应用** 一次提交。管理页操作不受设置页 **取消** 影响;外观页选择器和其他设置仍由设置页 **应用/取消** 控制。
创建、复制和导入先产生草稿,保存后才加入主题目录。离开未保存的编辑时,可保存、放弃或继续编辑。删除前必须确认:正在使用它的界面回退到 GitHub Dark,显式使用它的终端恢复跟随界面;首版不支持撤销。
**导入 JSON/导出 JSON** 兼容 Tauri 版单主题文件,导入 ID 冲突会生成新 ID。导出合法草稿不会隐式保存或应用。不支持的旧记录与未知字段会保留;发生并发冲突时保留编辑,可先导出,再放弃编辑并重新载入。
## 最小对比度
**设置 → 外观 → 最小对比度** 在终端输出的前景色和背景过于接近时自动调整前景色,避免某些远端程序的配色在当前主题下不可读。可选档位:
| 档位 | 含义 |
|------|------|
| 关闭 | 不做调整,完全按远端给的颜色渲染 |
| 轻微增强 | 对比度不低于 3:1 |
| 推荐:WCAG AA | 对比度不低于 4.5:1 |
| 高对比:WCAG AAA | 对比度不低于 7:1 |
| 极高 | 对比度不低于 21:1,即强制为纯黑或纯白 |
它只影响终端输出的渲染结果,不改变主题本身的配色定义。
## 背景图
在 **设置 → 外观** 中可以为主窗口设置本地背景图:
- **背景图**:选择主窗口背后的本地图片
- **图片尺寸**:控制图片以 `cover`、`contain`、`stretch` 或 `tile` 的方式铺开
- **图片不透明度**:控制背景图透过主题显示的强度
- **内容底色不透明度**:控制工作区面板和内容表面的透光程度,数值越低背景图越明显
这个能力只作用于主窗口工作区。设置页和其他子窗口仍然保持实色背景,避免在表单、弹窗和独立窗口里牺牲可读性。
## 字体与字号
在 **设置 → 外观** 中可以调整:
- **字体族** — 支持主字体 + 多级回退字体
- **终端字体大小**
- **界面字体大小**
默认字体族是 `JetBrains Mono, Noto Sans SC Variable, Inter`:终端默认回退到 `JetBrains Mono`,界面默认回退到 `Inter`。
这些是**字体名,不是随应用打包的字体文件**。NyaTerm 从系统已安装字体中解析它们,本机没装 `JetBrains Mono` 时终端会落到平台默认等宽字体。要用这套字体需要自行安装。
字体列表会读取系统已安装字体供你组装回退链路,终端字体下拉只列出实测为等宽的字体族。系统字体是异步发现的,首次展开列表时可能短暂显示 `Loading system fonts...`,此时仍可以先填写字体名。
## 光标
外观设置还支持这些终端细节:
- **光标样式**:Block / Underline / Bar
- **光标闪烁**
在深浅主题之间切换时,终端主题和 UI 主题一起调整后再检查关键词高亮、动作链接等终端装饰的可读性。
## 语言切换
NyaTerm 当前提供:
- 简体中文
- English
你可以通过两种方式切换:
- **设置 → 通用 → 语言**
- 顶部菜单 **View → Language**
## 面板与工作区外观
除了配色与字体,工作区本身也支持按使用习惯调整:
- 左右侧面板宽度可拖动调整
- 标签内分屏比例可拖动调整
- 左右活动栏可通过快捷键快速显示 / 隐藏
这些布局状态跟随应用设置一起保存。
## 缩放与快捷操作
应用提供这些常见快捷键:
- **放大** — `Ctrl / Cmd + =`
- **缩小** — `Ctrl / Cmd + -`
- **重置** — `Ctrl / Cmd + 0`
演示、投屏或高分屏环境下用它们快速调整可读性。