# NovelStudio **Repository Path**: king_software/novel-studio ## Basic Information - **Project Name**: NovelStudio - **Description**: 小说工坊,用来构思、写小说的软件 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-27 - **Last Updated**: 2026-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小说工坊 NovelStudio 让构思、写作与修改在一处完成。 面向个人作者的本地小说创作桌面软件,技术栈为 Electron + React + TypeScript。已接入小说工程管理、名称简介保存,以及卷章新建、改名、排序、跨卷移动和删除回收恢复。 首次启动提供新建、打开入口;新建时选择或创建一个空目录,目录名作为初始书名,生成一个默认卷且不创建章节。以后启动自动打开上次成功打开的小说首页。文件菜单可切换小说或从最近列表打开;目录移动或文件损坏时明确提示,失败不替换当前小说。首页修改书名和简介后点击“保存信息”,改书名不改目录,未保存时切换或退出有保护。 目录顶部可新建卷、章,首页也有新建卷入口,卷概览可新建章节。新卷追加到全书末尾,章节追加到所选卷末尾;名称选填,卷章编号自动生成,章号按全书连续计算。创建后自动选中并进入新卷或新章,关闭重开仍保留。 自动创建的第一卷可以直接改名:点击目录中的第一卷,使用卷概览“修改卷名”,或点击目录行右侧的“更多操作”。章节页提供“修改章节名称、移到其他卷、删除章节”。目录顶部上下按钮调整选中卷或章的顺序;编号自动重算,稳定 ID 和正文内容不变。 删除卷或章节前会列出影响范围,确认后完整移入“回收区”,可恢复原卷章及其正文、小记、批注和版本。原所属卷已删除时,恢复章节需要明确选择一个现有卷。最后一个卷不能删除,但可以改名;首版不提供永久清空。 卷概览和写作页右侧可添加、编辑、删除及上下调整小记;本章、本卷分别保存。类型沿用原可输入下拉框,支持“新建类型:…”快捷新增及全书复用;确认小记后才保存类型,取消不创建。章节和卷概览不设类型管理,统一管理使用“管理 → 小记类型”菜单。小记明确点击“确认小记”提交,失败保留输入;取消不会新增类型。写作页恢复左目录、中正文、右辅助面板布局。 提示、告警、错误和确认统一使用公共自定义弹框;删除、放弃修改、切换小说、退出及刷新均可安全取消。后续开发必须复用公共组件,不使用 Electron 或浏览器原生消息框。 小说保存在独立工作目录,本机记录保存在 Electron 用户数据目录,复制或迁移作品时应先关闭软件再复制整个小说目录。章节正文现可直接编辑,停笔约 700 毫秒自动保存,也可 Ctrl+S 或点击“立即保存/重试”;显示当前章及全书字数。正文内按 Tab 插入两个全角空格。文件 → 作品设置调整正文字号及行距时即时预览正文,保存后保留,取消恢复原显示。正文左右均显示宽度边界线。工具栏可选电脑(720 px)、手机(375 px),拖动正文右侧手柄设为自定义,点击“手机”可切回手机宽度;设置随工程保存,窄窗口临时适应可用宽度。保存失败保留缓冲并阻止静默切换工程或退出。右侧“版本”支持保存当前稿、重命名、删除、并排比对和安全恢复;恢复前自动留存当前稿,历史稿只读,当前侧可继续写作。Ctrl+Alt+S 保存版本,Ctrl+Alt+V 打开版本列表。版本不包含标题、小记和作品设置。选中正文后可在右侧“批注”标签点击 + 或右键添加批注,默认普通批注,可勾选加入待修改清单。支持高亮定位、编辑删除、完成与重新打开、转回普通批注、重叠批注和失联后选中文字重新关联。批注随普通编辑与撤销重做更新位置,正文和批注配套保存;删除全部关联文字时保留摘录并提示需重新定位,不自动猜测新位置。待修改清单支持待处理/已完成筛选和跳转,版本配套保存恢复真实批注,比对历史侧显示只读批注。首页及“文件 → 导出正文”可导出当前章、当前卷、全书,或勾选整卷、部分章节及跨卷组合;按原目录顺序和编号生成一个 UTF-8 TXT,正文先保存再导出,覆盖前确认,不包含小记、批注、历史稿或回收内容。请将 TXT 保存到工程目录之外。作品设置支持浅色/深色主题;左侧目录及右侧辅助面板可分别收起,偏好随本书保存。正文工具栏提供查找与替换,Ctrl+F/Ctrl+H 打开,Esc 收起;区分大小写字面匹配,全部替换可一次撤销并恢复批注锚点。左侧“全书搜索”检索当前正文(含编辑缓冲)及卷章小记标题和内容,按目录显示匹配摘录并定位,内容变化后旧结果禁用并提示重搜;不搜索历史、回收或批注。完整工程备份恢复按用户要求暂缓;实际中文输入法和系统剪贴板仍待人工验收。工程格式与实际边界见 [本地工程文件格式](docs/开发/本地工程文件格式.md) 和 [实施进度](docs/开发/实施进度.md)。 “管理 → 小记类型…”可新增、改名、删除本书的系统预设及自定义类型。同书类型名称不可重复(去首尾空格、不区分英文字母大小写),改名或删除不改变已有小记的类型名称与内容;只编辑小记内容时保留原类型。原有小记表单中仍可快捷创建类型。 首页“最近编辑”按正文成功保存的实际编辑时间显示最近 5 章;“继续写作”进入最近编辑章节,无记录进入首章,无章节时禁用。仅查看或修改小记、批注、章名不计入,重开保留。旧工程从首次正文修改成功保存后开始累计记录。 ## 开始开发 使用 Windows x64、Node.js 24.x 和 npm,在项目根目录逐条执行: ```powershell npm ci npm run dev ``` ## 开发验证 ```powershell npm run build npm test ``` Windows 包由用户自行打包,日常开发不要求打包,用户未明确要求时禁止 AI 执行打包或间接生成分发包。需要 Windows 程序时,用户可自行运行 `npm run package`;该命令会自行执行类型检查和构建,输出 `release/NovelStudio-win32-x64/NovelStudio.exe` 及运行依赖。分发时必须保留完整程序目录。详细环境准备、验证和故障处理见 [启动与 Windows 打包指南](docs/开发/启动与Windows打包指南.md)。 ## 文档入口 - [AI 协作规则](AGENTS.md):软件目的、开发原则、按需阅读与交接要求。 - [文档索引](docs/index.md):按任务选择业务和开发文档,禁止批量读取全部正文。 - [实施进度](docs/开发/实施进度.md):当前开发位置、未完成项与下一步。