diff --git a/.gitignore b/.gitignore index 9dfd8ec..e8e1c78 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +.worktrees/ +worktrees/ node_modules/ dist/ out/ diff --git a/desigin/readme.md b/desigin/readme.md index 2996c66..d1dd7bb 100644 --- a/desigin/readme.md +++ b/desigin/readme.md @@ -1,9 +1,11 @@ # 笔临——长篇创作智能协作平台 完整设计文档 -**版本**:1.0 -**更新日期**:2026年6月25日 +**版本**:1.1 +**更新日期**:2026年7月2日 **定位**:跨平台长篇小说写作系统,以“人本创作”为核心,通过深度上下文感知与创作流优化,解决AI辅助写作中“难用、不敢用、割裂”的痛点。 +> **v1.1 变更摘要**:以资深连载作者工作流为基准,补全引用面板/全局搜索/AI 会话/地标待办/更新计划等 UI 规格;统一主题命名;修正驾驶舱进入逻辑;新增平台投稿与衔接检查等作家刚需能力。 + --- ## 1. 项目概述 @@ -66,15 +68,17 @@ #### 3.1.2 七套内置主题 -| 主题名称 | 类型 | 主背景色 | 主文字色 | 强调色 | 适用场景 | -|----------|------|----------|----------|--------|----------| -| **暗夜黑** | 深色 | `#1a1a2e` | `#e0e0e0` | `#6c63ff` | 夜间长时间写作 | -| **深海蓝** | 深色 | `#0d1b2a` | `#c5d5e8` | `#4ea8de` | 沉浸式创作 | -| **石墨灰** | 深色 | `#2d2d2d` | `#cccccc` | `#ff6b6b` | 中性低调偏好 | -| **暖米纸** | 浅色 | `#f5f0e8` | `#3a3a3a` | `#b8860b` | 模拟纸质书写作 | -| **冷瓷白** | 浅色 | `#fafafa` | `#2c2c2c` | `#2563eb` | 日间清爽写作 | -| **护眼绿** | 护眼 | `#e8f0e0` | `#2d3a2d` | `#4a7c59` | 缓解视疲劳 | -| **琥珀暮色** | 特殊 | `#2b1f1a` | `#e8d5c0` | `#d4a574` | 温暖怀旧氛围 | +主题命名采用文学意象,与 UI 原型(`ui_pc.html`)保持一致: + +| 主题名称 | 内部 ID | 类型 | 主背景色 | 主文字色 | 强调色 | 适用场景 | +|----------|---------|------|----------|----------|--------|----------| +| **墨砚**(默认) | `default` | 深色 | `#1c1816` | `#e8e0d8` | `#c0504a` | 夜间长时间写作,偏暖深棕 | +| **竹语** | `bamboo` | 深色 | `#1a1e18` | `#e0e4d8` | `#7a9a60` | 竹林雨后,舒缓护眼 | +| **月夜** | `moonlit` | 深色 | `#1a1e24` | `#d8dce4` | `#8098b8` | 月光静谧,冷调沉浸 | +| **宣纸** | `ricepaper` | 浅色 | `#f4efe4` | `#3a3028` | `#8b4513` | 模拟古籍书卷写作 | +| **晨雾** | `mist` | 浅色 | `#eff0f2` | `#2c3038` | `#6878a0` | 日间清爽写作 | +| **茶园** | `teagarden` | 护眼 | `#eef0e4` | `#2d3a28` | `#688848` | 缓解视疲劳 | +| **暮光** | `twilight` | 特殊 | `#1f1a16` | `#e8dcc8` | `#c88850` | 温暖怀旧氛围 | #### 3.1.3 CSS 变量体系 @@ -181,6 +185,9 @@ | 全局搜索 | `Ctrl+Shift+F` | 是 | | 快照保存 | `Ctrl+Alt+S` | 是 | | 弹出灵感快速捕获窗 | `Ctrl+Shift+I` | 是 | +| 打开引用面板 | `Ctrl+Shift+P` | 是 | +| 插入写作地标 | `Ctrl+Shift+M` | 是 | +| 打开地标清单 | `Ctrl+Shift+L` | 是 | | 导出当前书籍 | `Ctrl+Shift+E` | 是 | | 关闭当前标签 | `Ctrl+W` | 是 | | 朗读(播放/暂停) | `Ctrl+Shift+R` | 是 | @@ -277,15 +284,22 @@ - **项目封面与简介**:可选,用于个人识别。 - **全书字数目标准**:可选设定总目标字数,用于进度推算。 -### 4.3 项目驾驶舱(首页) +### 4.3 项目驾驶舱 -打开书籍后首先进入仪表盘视图,展示: +**进入逻辑**(作家友好优先): + +- **首次打开某本书**:展示驾驶舱全屏模态(见 UI 顶栏「驾驶舱」按钮),帮助作者建立全书全局认知。 +- **日常再次打开**:默认**直接恢复上次编辑位置**(章节 + 光标偏移),不打断写作心流;驾驶舱随时可通过顶栏按钮唤起。 +- 可在书籍设置中切换为「每次打开均显示驾驶舱」(适合开书/planning 阶段)。 + +驾驶舱展示内容: - **写作日历热力图**:记录每日写作字数,空白日灰色显示。 - **核心统计卡片**:今日字数、本周字数、全书总字数、距目标字数、预计完本日期(基于近30天日均速度估算)。 +- **更新计划摘要**:日更/隔日更目标、存稿缓冲(已定稿未发布章节数)、连续达标天数(见 20.1)。 - **结构速览**:各卷字数占比饼图,可点击下钻。 - **伏笔/角色状态摘要**:已埋伏笔数、已回收数、处于"遗忘"状态的伏笔数(超过20章未提及且未标记已回收)。 -- **快速入口**:"回到上次编辑位置"、"处理被遗忘的伏笔"、"查看近期新增设定"、"今日大纲任务"。 +- **快速入口**:"回到上次编辑位置"、"处理被遗忘的伏笔"、"查看近期新增设定"、"今日大纲任务"、"检查章间衔接"(见 20.4)。 --- @@ -331,6 +345,21 @@ | E2E-BATCH-01 | E2E | Ctrl+点击选择第2、4、7章,批量改为"定稿" | 三章状态同步更新为定稿 | | E2E-BATCH-02 | E2E | Shift+点击选择5章,批量导出为 .txt | 生成包含5章内容的 .txt 文件 | +#### 5.2.4 章节元数据(作家视角) + +每章除正文外,支持以下元数据(在章节右键菜单或章节属性侧栏编辑): + +| 字段 | 说明 | 用途 | +|------|------|------| +| `pov_character_id` | 叙事视角人物(可选,关联设定角色) | 视角分布统计、AI 向导式写作默认视角 | +| `scene_count` | 场景数(自动检测 `* * *` 分隔符,可手动校正) | 节奏分析、单章结构把控 | +| `publish_status` | `draft` / `ready` / `published` | 存稿缓冲统计、更新计划追踪 | +| `platform_note` | 作者的话(独立于正文,导出时可选择是否包含) | 网文平台互动、读者说明 | +| `avg_sentence_length` | 本章平均句长(自动计算,只读) | 与全书文风对比 | + +- 章节列表可按 `publish_status`、`pov_character_id`、自定义标签筛选。 +- 拖拽重排章节后,若影响全局章节编号,弹出确认:「是否自动重编号?」(可选保留原编号仅改排序)。 + --- ### 5.3 章节编辑器 @@ -399,6 +428,27 @@ | E2E-SPELL-01 | E2E | 输入"他在在看书",开启拼写检查 | "在在"以蓝色波浪线标识 | | E2E-TTS-01 | E2E | 点击朗读按钮 | 从光标位置开始朗读,当前句高亮,再次点击暂停 | +#### 5.3.8 引用面板(设定/大纲/灵感侧栏) + +**入口**:编辑器工具栏「引用」按钮,或快捷键 `Ctrl+Shift+P`(Pin 面板,可自定义)。 + +**布局**:编辑器右侧(可与 AI 面板互斥显示,或窄屏时覆盖 AI 面板): + +- 顶部 Tab:设定 / 大纲 / 灵感,支持跨 Tab 搜索。 +- 列表项展示:名称 + 摘要前 40 字;点击展开详情。 +- **钉住模式**:勾选后,切换章节时保持同一引用条目可见。 +- **拖拽插入**:将设定描述、大纲要点拖入正文光标处,插入为纯文本(不带格式块)。 +- **反向高亮**:正文中已 `@提及` 的设定名,点击可跳转设定详情(TipTap Mention 扩展)。 + +#### 5.3.9 写作地标与待办 + +**插入**:编辑器右键 →「插入地标」,或快捷键 `Ctrl+Shift+M`。 + +- 地标类型:`todo`(待写/待改)、`foreshadow`(伏笔提醒)、`research`(待查证)、`custom`。 +- 地标在正文以行内标记显示(如 `[TODO: 补写林远与长老对话]`),不进入导出正文(除非用户勾选「包含地标」)。 +- **地标清单**:章节侧栏底部「地标」按钮,或全局 `Ctrl+Shift+L` 打开清单面板,按类型/章节分组,点击跳转。 +- 完成地标后勾选关闭,可选自动归档到章节摘要。 + --- ### 5.4 版本历史与内容追溯 @@ -450,14 +500,23 @@ | E2E-COV-01 | E2E | 创建大纲条目不关联章节,查看大纲面板 | 条目显示橙色边框和警告图标 | | E2E-COV-02 | E2E | 筛选"未覆盖" | 仅显示未关联章节的大纲条目 | -#### 5.5.4 设定管理 +#### 5.5.6 大纲-正文对照视图 + +**入口**:大纲面板顶部「对照模式」按钮。 + +- 分屏布局:左 35% 大纲树(当前筛选结果),右 65% 关联章节正文片段。 +- 选中大纲条目时,右侧滚动至对应章节段落;无关联时显示「尚未写作」占位。 +- 底部对比条:预期字数 vs 实际字数 vs 偏差百分比(>20% 标红)。 +- 支持从对照视图直接「生成章节骨架」或「跳转编辑器」。 + +#### 5.5.7 设定管理 - 分类组织:角色、地点、物品、技能、势力、自定义类别。 - 每个设定条目:名称、描述、属性字段(可自定义)、关联章节列表(自动记录提及该设定的章节,点击跳转)。 - **写作时引用**:编辑器侧栏可调出设定面板,快速查看并拖拽内容。 - **反向链接**:设定条目页显示"提及章节"和"被AI用作上下文注入的轮次"。 -#### 5.5.5 灵感碎片 +#### 5.5.8 灵感碎片 - **快速捕获**:全局快捷键(`Ctrl+Shift+I`)呼出小窗,立即记录想法;支持语音输入转文字。 - **灵感条目**:标题、内容、创建时间、标签(自定义)。 @@ -470,10 +529,19 @@ #### 5.6.1 全局搜索 -- 支持跨章节、大纲、设定、灵感全文搜索。 +**入口**:`Ctrl+Shift+F` 打开全局搜索浮层(模态,不离开当前编辑上下文)。 + +- 支持跨章节、大纲、设定、灵感、地标全文搜索。 - 搜索结果:按类型分组,每条结果显示所在位置、前后20字上下文。 -- 高级搜索:正则表达式支持、区分大小写、全词匹配。 +- 高级搜索:正则表达式支持、区分大小写、全词匹配、限定分卷/发表状态。 - 替换功能:支持单次替换、批量替换,批量替换前展示预览列表并需确认。 +- 搜索历史:保留最近 10 条,下拉快速复用。 + +**UI 规格**(见 `ui_pc.html` `#searchModal`): + +- 顶部:搜索框 + 范围筛选(全书/当前卷/当前章)+ 高级选项折叠区。 +- 中部:结果列表,支持键盘 ↑↓ 选择、Enter 跳转。 +- 底部:替换区(可选展开),含「预览变更」按钮。 #### 5.6.2 命名一致性检查(AI驱动) @@ -562,6 +630,10 @@ - **独立会话**:每本书拥有独立的多个会话,支持新建、重命名、归档、导出(导出为`.txt`或`.md`对话记录)。 - **会话列表**:显示会话摘要(模型、创建时间、最后活跃时间),归档会话折叠。 +- **UI 入口**(见 `ui_pc.html` AI 面板顶部): + - 会话下拉选择器 +「新建会话」按钮。 + - 会话名可 inline 重命名;右键归档/导出/删除。 + - 当前会话上下文摘要一行展示,点击展开「上下文编辑器」。 - **上下文管理**: - **上下文源**:当前书籍的章节(可勾选范围)、大纲(可勾选条目)、设定(可勾选条目)、灵感(可勾选条目)、附件。 - **上下文注入策略**:创建会话时,根据勾选内容初始化;**提供"更新上下文"按钮**,点击后重新提取截至最新的章节摘要、大纲、设定,注入会话。在每轮对话前,系统自动检索最高重要度的知识条目(角色、伏笔等)注入,而非一次性凝固。 @@ -590,6 +662,17 @@ ### 6.5 AI 写作模式 +**模式入口**(AI 面板输入框上方 Segmented Control): + +| 模式 | 适用场景 | 入口标签 | +|------|----------|----------| +| 对话 | 自由问答、快捷命令 | 默认 | +| 交互式 | 逐场景共创、可控性最高 | 「交互写作」 | +| 自动 | 有大纲目标、希望 AI 连续成章 | 「自动写作」 | +| 向导 | 新手第一部作品 | 「向导模式」 | + +切换模式时保留当前会话历史,但生成交互流程按所选模式重新初始化。 + #### 6.5.1 交互式写作 - **启动条件**:需存在至少1章已完成章节,或有大纲/设定内容,否则引导用户先创建。 @@ -639,6 +722,10 @@ - **每章生成后自动抽取**:角色状态变化、新埋伏笔、人际关系演变、新出现地点、关键事实。 - **抽取条目人工审核**:在"知识库面板"展示所有抽取项,用户可编辑、合并、删除、打回重抽。 +- **审核工作流 UI**: + - 每条待审核项显示:来源章节、置信度、建议操作(采纳/编辑/忽略/合并到已有条目)。 + - 批量操作:「全部采纳高置信度」「忽略本批」。 + - 审核完成后条目进入正式知识库,影响后续 AI 注入优先级。 - **重要度标注**:用户可为每条知识打1-5星重要度,影响后续检索注入的优先级。 - **知识库全局视图**: - 角色维度:当前状态、装备、关系网络(简易图谱)。 @@ -747,7 +834,9 @@ - **写作速度仪表盘**:按小时统计平均写作速度,展示效率曲线和每日时段热力图。 - **习惯追踪**:连续写作天数、平均每次写作时长、最喜欢写作的时段。 -- **字数分布**:按卷、按人物视角章节字数统计。 +- **字数分布**:按卷、按人物视角(POV)章节字数统计。 +- **入口**:驾驶舱内嵌卡片 + 书籍设置面板「数据分析」Tab;暂不做独立全屏页(避免功能分散)。 +- **角色弧线简报**(轻量):选定主角后,展示「首次出场 → 关键转折 → 最近状态」三节时间线,数据来源于知识库角色状态变更记录(见 20.3)。 --- @@ -1182,9 +1271,10 @@ graph TB { "penName": "string", "onboardingCompleted": false, - "theme": "暗夜黑", + "theme": "default", "language": "zh-CN", "dailyWordGoal": 0, + "updateSchedule": "daily", "shortcuts": {}, "aiBackend": "cloud", "aiTimeout": 60, @@ -1214,13 +1304,18 @@ CREATE TABLE chapters ( title TEXT NOT NULL DEFAULT '', content TEXT NOT NULL DEFAULT '', status TEXT NOT NULL DEFAULT 'draft', -- draft/reviewing/final + publish_status TEXT NOT NULL DEFAULT 'draft', -- draft/ready/published + pov_character_id TEXT DEFAULT NULL, -- 叙事视角角色 + platform_note TEXT DEFAULT '', -- 作者的话 word_count INTEGER NOT NULL DEFAULT 0, sort_order INTEGER NOT NULL DEFAULT 0, summary TEXT DEFAULT '', - story_time TEXT DEFAULT NULL, -- 故事时间标记(V2.0新增) + story_time TEXT DEFAULT NULL, + cursor_offset INTEGER DEFAULT 0, -- 上次编辑光标位置 created_at TEXT NOT NULL DEFAULT (datetime('now')), updated_at TEXT NOT NULL DEFAULT (datetime('now')), - FOREIGN KEY (volume_id) REFERENCES volumes(id) ON DELETE SET NULL + FOREIGN KEY (volume_id) REFERENCES volumes(id) ON DELETE SET NULL, + FOREIGN KEY (pov_character_id) REFERENCES settings(id) ON DELETE SET NULL ); CREATE TABLE chapter_tags ( @@ -1236,6 +1331,8 @@ CREATE TABLE bookmarks ( chapter_id TEXT NOT NULL, position INTEGER NOT NULL, -- 字符偏移 label TEXT NOT NULL, + landmark_type TEXT NOT NULL DEFAULT 'todo', -- todo/foreshadow/research/custom + resolved INTEGER NOT NULL DEFAULT 0, created_at TEXT NOT NULL DEFAULT (datetime('now')), FOREIGN KEY (chapter_id) REFERENCES chapters(id) ON DELETE CASCADE ); @@ -1302,11 +1399,35 @@ CREATE TABLE ai_sessions ( id TEXT PRIMARY KEY, name TEXT NOT NULL DEFAULT '', model TEXT NOT NULL DEFAULT '', + mode TEXT NOT NULL DEFAULT 'chat', -- chat/interactive/auto/wizard + context_config TEXT DEFAULT '{}', -- JSON: 勾选的上下文源 archived INTEGER NOT NULL DEFAULT 0, created_at TEXT NOT NULL DEFAULT (datetime('now')), last_active TEXT NOT NULL DEFAULT (datetime('now')) ); +CREATE TABLE ai_messages ( + id TEXT PRIMARY KEY, + session_id TEXT NOT NULL, + role TEXT NOT NULL, -- user/assistant/system + content TEXT NOT NULL, + created_at TEXT NOT NULL DEFAULT (datetime('now')), + FOREIGN KEY (session_id) REFERENCES ai_sessions(id) ON DELETE CASCADE +); + +CREATE TABLE knowledge_entries ( + id TEXT PRIMARY KEY, + type TEXT NOT NULL, -- character/foreshadow/location/relationship/fact + title TEXT NOT NULL, + content TEXT DEFAULT '', + importance INTEGER NOT NULL DEFAULT 3, -- 1-5 + status TEXT NOT NULL DEFAULT 'pending', -- pending/approved/rejected + source_chapter_id TEXT, + created_at TEXT NOT NULL DEFAULT (datetime('now')), + updated_at TEXT NOT NULL DEFAULT (datetime('now')), + FOREIGN KEY (source_chapter_id) REFERENCES chapters(id) ON DELETE SET NULL +); + CREATE TABLE writing_logs ( date TEXT NOT NULL, book_id TEXT NOT NULL, @@ -1330,3 +1451,78 @@ CREATE TABLE timeline_events ( --- +## 20. 作家工作流专项设计(v1.1 新增) + +> 本章从**日更连载作者**真实工作习惯出发,补全 v1.0 功能清单中「有概念无落地」或「作家强需求但未覆盖」的能力。 + +### 20.1 更新计划与存稿管理 + +长篇连载作者的核心焦虑不是「写不出来」,而是「断更」和「存稿不够」。 + +| 能力 | 说明 | +|------|------| +| **更新频率目标** | 全局设置 `updateSchedule`:`daily`(日更)/ `alternate`(隔日更)/ `weekly`(周更)/ `none`;驾驶舱显示「距下次应发布还有 X 天」。 | +| **存稿缓冲** | 统计 `publish_status = ready` 的章节数;低于阈值(默认 3 章)时在状态栏软性提醒,不阻断写作。 | +| **发布标记** | 章节右键「标记为已发布」,自动记录发布日期;不影响定稿状态,二者独立。 | +| **日更目标** | 沿用 `dailyWordGoal`;顶栏进度条(UI 已实现)+ 设置页可配置。 | + +### 20.2 平台投稿导出预设 + +- 在导出模态中增加「投稿预设」折叠区: + - **通用网文**:纯文本、章节标题 `# 第N章 标题`、段首空两格、UTF-8。 + - **自定义预设**:用户保存标题格式、是否含作者的话、段落间距、敏感词替换规则。 +- 导出前可选「复制到剪贴板」以便直接粘贴到平台后台(比下载文件更常用)。 +- 首版不做平台 API 直连(YAGNI),仅优化「复制即用」体验。 + +### 20.3 角色弧线简报 + +- 从知识库角色状态变更自动聚合,无需作者手动维护时间线。 +- 在设定面板角色详情页增加「弧线」Tab:关键节点列表 + 一键跳转对应章节。 +- 驾驶舱「角色状态摘要」可下钻至弧线简报。 + +### 20.4 章间衔接检查 + +连载作者常见痛点:隔日续写时忘记上一章怎么收的。 + +- **触发**:打开新章编辑时(或手动点击驾驶舱「检查章间衔接」),若上一章存在且本章字数 < 200,自动展示衔接卡片: + - 上一章末 300 字(高亮) + - 本章已写开头(如有) + - AI 可选建议:「上一章悬念点」+「建议本章开头方向」(需 AI 可用,离线时仅展示文本) +- 卡片可关闭且「本章不再提示」,不强制打断。 + +### 20.5 敏感词与合规提示(可选开启) + +- 设置 → 编辑器 →「合规检查」开关,默认关闭。 +- 基于本地词库 + 用户自定义词库,对当前章做软性下划线提示(不阻断、不自动删改)。 +- 导出时可选择「导出前扫描并确认」。 + +### 20.6 灵感快速捕获 UI + +- 全局快捷键 `Ctrl+Shift+I` 唤起**全局置顶小窗**(见 `ui_pc.html` `#inspirationModal`): + - 单行/多行输入、可选标签、可选关联当前书籍。 + - 支持语音输入转文字(系统 API)。 + - 保存后 toast 确认,不打断当前编辑器焦点(保存后自动关闭,焦点回编辑器)。 + +### 20.7 设计审查清单(作家视角) + +| 审查项 | v1.0 状态 | v1.1 处理 | +|--------|-----------|-----------| +| 主题命名 UI/文档不一致 | ❌ | ✅ 统一为七套文学意象主题 | +| 打开书籍强制进驾驶舱 | ⚠️ 打断心流 | ✅ 改为恢复上次编辑位,驾驶舱按需唤起 | +| 引用面板 | 文档有,UI 无 | ✅ 补 UI 规格与原型 | +| 全局搜索 | 快捷键有,UI 无 | ✅ 补 `#searchModal` 原型 | +| AI 多会话 | 文档有,UI 无 | ✅ 补会话选择器规格 | +| AI 写作模式切换 | 文档有,UI 无 | ✅ 补 Segmented Control 规格 | +| 地标/待办 | 文档简略 | ✅ 扩展类型与工作流 | +| 大纲-正文对照 | 文档有,UI 无 | ✅ 补入口与布局规格 | +| 导入书籍 | 主页按钮有,模态无 | ✅ 补 `#importModal` 原型 | +| 更新计划/存稿 | 未覆盖 | ✅ 新增 20.1 | +| 章间衔接 | 未覆盖 | ✅ 新增 20.4 | +| 平台投稿 | 仅通用导出 | ✅ 新增 20.2 | +| 知识库审核流 | 概念有,UI 弱 | ✅ 补审核工作流 | +| POV/发表状态 | 未覆盖 | ✅ 新增章节元数据 5.2.4 | +| i18n 首版范围 | UI 含繁体选项 | ✅ UI 移除繁体,保持 zh-CN / en | +| 笔名编辑 | 仅 onboarding | ✅ 通用设置增加笔名字段 | + +--- + diff --git a/desigin/ui_pc.html b/desigin/ui_pc.html index 016eb95..6c5d6cf 100644 --- a/desigin/ui_pc.html +++ b/desigin/ui_pc.html @@ -1136,6 +1136,30 @@ font-family: var(--font-sans); } + /* ============ V1.1 NEW UI ============ */ + .ai-session-bar { display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);flex-shrink:0; } + .ai-session-bar select { flex:1;font-size:11px;padding:4px 8px;background:var(--bg-tertiary);color:#fff;border:1px solid var(--border);border-radius:4px; } + .ai-mode-tabs { display:flex;gap:2px;padding:6px 8px;border-bottom:1px solid var(--border);flex-shrink:0; } + .ai-mode-tab { flex:1;padding:5px 4px;font-size:10px;text-align:center;border-radius:4px;cursor:pointer;color:var(--text-muted);background:transparent;border:none;transition:var(--transition); } + .ai-mode-tab.active { background:var(--accent);color:#fff;font-weight:600; } + .context-preview { padding:6px 10px;font-size:10px;color:var(--text-muted);border-bottom:1px solid var(--border);cursor:pointer;flex-shrink:0; } + .context-preview:hover { color:var(--accent-light); } + #reference-panel { width:0;overflow:hidden;transition:width var(--transition-slow);border-left:1px solid var(--border);background:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0; } + #reference-panel.open { width:240px; } + .ref-tabs { display:flex;border-bottom:1px solid var(--border); } + .ref-tab { flex:1;padding:8px 4px;font-size:10px;text-align:center;cursor:pointer;color:var(--text-muted);border:none;background:transparent; } + .ref-tab.active { color:var(--accent-light);border-bottom:2px solid var(--accent); } + .ref-list { flex:1;overflow-y:auto;padding:6px; } + .ref-item { padding:8px;margin-bottom:4px;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:11px;cursor:grab;color:var(--text-secondary); } + .ref-item:hover { background:var(--bg-hover);color:#fff; } + .search-input-row { display:flex;gap:8px;margin-bottom:12px; } + .search-input-row input { flex:1;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:#fff;font-size:13px; } + .search-result { padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary);margin-bottom:6px;cursor:pointer;font-size:12px; } + .search-result:hover { background:var(--bg-hover); } + .search-result .sr-type { font-size:10px;color:var(--accent-light);margin-bottom:4px; } + .search-result .sr-context { color:var(--text-muted);font-size:11px; } + .inspiration-capture textarea { width:100%;min-height:100px;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:#fff;font-size:13px;resize:vertical;font-family:var(--font-sans); } + /* ============ MODALS ============ */ .modal-overlay { position: fixed; @@ -1764,15 +1788,17 @@ + + +
+
+ + + +
+
+
+
👤 林远 — 三纹灵根,主角
+
📍 测灵石 — 青云宗测试法器
+
🗺 入门考验 — 预期3000字
+
+
+
+
@@ -1879,6 +1922,21 @@
+
+ + +
+
+ + + + +
+
📎 上下文:第1-2章摘要 · 大纲3条 · 设定7个 · 更新
⚠ 当前网络不可用,已切换为离线模式。请配置本地模型或连接网络。
@@ -1983,10 +2041,20 @@

⚙ 通用设置

语言与外观

-
界面语言
+
界面语言
主题
字体大小
+
+

作者信息

+
笔名
+
+
+

写作目标

+
日更字数目标
+
更新频率
+
存稿预警阈值
+

默认行为

启动时打开上次书籍
@@ -2001,6 +2069,7 @@
默认字体
行距
专注模式背景
+
合规检查(敏感词提示)
@@ -2031,6 +2100,8 @@
全局搜索Ctrl+Shift+F
朗读 播放/暂停Ctrl+Shift+R
灵感快速捕获Ctrl+Shift+I
+
引用面板Ctrl+Shift+P
+
写作地标Ctrl+Shift+M
@@ -2171,6 +2242,11 @@

📅 写作热力图(近30天)

+
+ + + +
@@ -2222,6 +2298,7 @@
📝
Word 文档 .docx保留格式,自动生成目录
📋
Markdown .md适合发布到网络平台
📕
PDF 文档 .pdfA4/信纸排版,页眉含书名+章节名+页码
+
📋
复制到剪贴板网文投稿预设:段首空两格、含章节标题
📦
笔临项目包 .novel整书数据打包,含版本历史+设定+大纲
@@ -2244,6 +2321,83 @@ + + + + + + + + + + + + + + +