面向 VS Code 的多书源小说阅读扩展,以可配置书源、原生阅读、代码伪装与 Codex 上下文交互为核心功能。插件内置番茄适配器,也支持导入阅读格式 JSON 书源,在同一套书架、目录和原生只读编辑器中搜索与阅读不同网站的内容。
下载安装 · 完整使用指南 · 多书源说明 · 改造计划 · 上游项目
本项目基于 zwb8926/fanqie-novel-vscode 开发,保留 Fork 关系与 MIT 许可,由维护者独立发布。代码实现、测试与文档编写使用 OpenAI Codex 辅助。
- 提供书城浏览、书籍搜索、书架、历史记录与书评,支持扫码登录。
- 使用 VS Code 原生只读文本编辑器展示正文,翻章、目录和阅读设置集中在底部状态栏。
- 每页可合并 1–50 章,默认自动折行、原段落之间空一行。重新打开阅读页或调整每页章节数时,保留章节与章内位置。
- 提供已安装字体选择器,点击即可应用。列表按正文区分中文与非中文,中文字体依据实际字形覆盖筛选。
- 提供隐藏文本光标选项,同时关闭光标所在行的背景、边框和行号区高亮。点击正文、方向键移动及切章后保持该设置,鼠标指针与选区高亮保留。
- 侧边栏采用响应式布局,适配较窄的显示区域。切换侧边栏后保留当前页面、搜索草稿和滚动状态;书籍条目支持键盘操作,详情弹窗支持 Esc 关闭并返回原焦点。
- 正文与侧边栏支持右键手动刷新。正文刷新保留阅读位置,侧边栏按条目更新阅读进度。
- 在活动栏「码间阅读 → 书源」中添加、编辑、导入、导出、启停和校验任意文本书源。
- 支持 CSS / Jsoup、JSONPath、XPath、正则、分页、请求头、Cookie 和 GET / POST;导入预览会标出不兼容的 Android / WebView 能力。
- 搜索可以覆盖全部启用书源、单个来源或分组。同书名、同作者的结果合并展示并保留各个来源;结果随书源响应逐步出现,显示进度,支持停止搜索和失败后重试。
- 书籍详情提供「同书来源」列表,可直接阅读其他来源,或选择「切换并续读」更新本地书架与历史进度。续读优先按章节标题匹配,其次按章节顺序定位;实际可用章节取决于目标书源。
- 每本书和章节带有书源限定标识,避免同名书覆盖进度。自定义书源使用本地书架,番茄书源保留原有账户和云端书架能力。
- 书源设置提供超时、并发、最大分页数和隔离 JavaScript 开关;详细规则和限制见多书源说明。
代码伪装依据固定规则,将叙述、对白、数字和词组映射为当前代码主题中的语法配色。正文与原生缩略图同步显示多种颜色,形成接近代码文件的视觉结构。
| 模式 | 配色方式 | 适用场景 |
|---|---|---|
| 关闭(默认) | 常规正文配色与柔和对白高亮 | 常规阅读 |
| 平衡 | 叙述按词组分色,保留整段对白配色 | 兼顾可读性与代码风格 |
| 强伪装 | 提高分色密度,对白参与词组分色 | 强化代码风格的视觉呈现 |
在阅读页 设置 → 实验性代码伪装配色 中选择模式。该功能仅调整显示颜色,保留小说原文以及复制、查找和 AI 读取所使用的文本;关闭后恢复原有阅读配色。
代码伪装模式选择器及实际阅读效果,包含正文分色、段间空行与原生彩色缩略图。
代码伪装的功能范围为编辑器外观调整。书名、章节名和正文仍可辨认,截屏与录屏会记录实际显示内容。使用时应遵守所在环境的相关规定。
- 选区附件 在正文中选中文字,右键选择 发送选中文字到 Codex。扩展将选区保存为本地快照并加入 Codex 会话附件,快照内容在后续选择操作中保持固定。
- 阅读上下文 点击状态栏 AI → 提供当前上下文给 Codex。附件包含当前书籍、章节、可见正文及本地读取入口。Codex 可根据用户问题按需读取其他章节或检索其他书籍,当前阅读页及其进度保持原状。
扩展会预先检测 Codex 的安装情况与附件能力,并在条件满足时显示对应的右键入口。点击操作仅添加上下文附件,聊天提交和模型调用由用户另行发起。上下文交接使用现有附件命令与插件提供的本地读取入口;模型的读取时机和回答由 Codex 自身控制。
上下文添加后,可提交以下分析任务。
- 分析选中对话中人物的动机,并引用原文说明依据。
- 比较前后两章对同一人物的描写,将分析范围限定在已读章节。
- 根据目录定位指定事件相关的章节,按需读取并整理事件经过。
实际阅读界面中的选区右键菜单与 Codex 会话,展示选区附件及用户提交的分析任务。
支持本地文件与终端访问的其他 AI 工具,可通过状态栏 打开上下文文件获取材料。对接 VS Code Language Model Tools API 的客户端还可调用插件提供的原生阅读工具。具体用法见完整使用指南。
番茄内置书源通过番茄小说网页端接口获取章节内容,阅读权限与网页端保持一致。完整章节阅读需要目标平台授予的相应权限;番茄完整章节通常需要具备网页端权益的番茄账号。自定义书源由用户配置目标网站和请求信息,访问范围取决于目标网站的公开内容、Cookie 和服务条款。
具体可读范围以目标网站当前规则及接口返回内容为准。插件不会绕过登录、购买或访问控制;源规则仅定义请求和内容提取方式。
- 从本仓库 Releases下载
.vsix文件。 - 在 VS Code 扩展视图右上角选择 … → 从 VSIX 安装,选取安装包并按提示重载窗口。
- 打开活动栏 码间阅读。使用番茄内置书源时可扫码登录;使用自定义书源时先在「书源」中导入并校验规则。
- 在「搜索」中选择全部来源、单个来源或分组,再通过书架或历史记录继续阅读;根据需要设置字体、每页章节数和代码伪装模式。
GitHub Releases 提供已发布的安装包。需要安装仓库当前代码时,在项目目录执行以下命令;打包脚本会清理该目录中的旧 .vsix 文件。
npm ci
npm test
npm run package
code --install-extension fanqie-novel-2028.8.231.vsix --force安装后在 VS Code 扩展视图确认版本 2028.8.231,并按提示重载窗口。仓库提交与 Release 安装包分别更新,使用上述步骤可安装本次代码。
本扩展保留原扩展标识 zwb8926.fanqie-novel,用于延续已有书架、设置和阅读进度。安装本仓库的 VSIX 会替换同标识版本,同一扩展标识仅保留一个已安装版本。安装包通过本仓库的 GitHub Release 发布,与上游 Marketplace 发行分别管理。
原生阅读和代码伪装可独立使用。使用 Codex 交互功能时,需另行安装并配置 Codex IDE 扩展。
本项目由 Xinyue-QwQc 发起维护,使用 OpenAI Codex 辅助需求整理、代码实现、问题排查、测试和 README 编写。提交记录中的 Codex <codex@local.invalid> 用于标识本地 AI 辅助提交。
功能说明以实际实现和可复现测试为依据,维护者负责功能取舍、结果复核与后续维护。本项目为个人维护的第三方扩展,非 OpenAI、番茄小说或上游作者的官方发行。上游代码及依赖项目保留各自的作者署名与许可。
git clone --branch moyu-codex https://github.com/Xinyue-QwQc/moyu-code-reader.git
cd moyu-code-reader
npm ci
npm test
npm run test:integration
npm run packagenpm test运行文本保留、语义配色、字体筛选、权限边界、书源规则、请求隔离和状态写入等单元测试。npm run test:integration在独立用户数据目录下启动真实 VS Code,使用原创离线样章和本地模拟网站验证界面、书源导入、搜索、目录、正文、200–480 px 窄栏、切章及重启续读。FANQIE_SOURCES_ONLY=1 npm run test:integration只运行书源导入、原生阅读和重启恢复集成测试;FANQIE_UI_ONLY=1只运行界面回归。- Codex 附件测试需将环境变量
FANQIE_CODEX_EXTENSION设置为已安装 Codex 的目录,再运行集成测试。测试范围限定为附件交接。 - 字体枚举分别提供 Windows、macOS 和 Linux 实现。当前发布主要在 Windows 与 VS Code 环境验证,其他系统的兼容性仍需进一步验证。Linux 字体列表依赖
fontconfig提供的fc-list。
- 正文快照与上下文文件在本地生成,经用户主动操作交接给 AI 客户端。对话提交、模型选择及后续使用由用户控制。
- 登录 Cookie 独立保存在认证层,AI 附件仅包含阅读材料与上下文信息。实时读取入口限定为本机回环地址,并使用会话令牌进行访问校验;关闭 AI 阅读访问可停用该入口。
- 阅读材料来自用户启用的目标书源,访问范围以目标平台允许读取的内容及用户已取得的权限为准。
- 用户自行选择、导入和维护第三方规则,规则的来源、合法性、准确性和适用性由用户判断;使用范围以个人阅读和学习研究为主,遵守内容平台条款与所在环境的使用规则。
- 上游项目为 zwb8926/fanqie-novel-vscode,保留原始版权声明。
- 书源数据模型与规则兼容性参考 HapeLee/legado-with-MD3 及其上游 Legado 项目;本扩展使用独立的 TypeScript 实现。
- 字体字符表参考 ying-ck/fanqienovel-downloader 与 fysh1010/mcp-server-fanqie。
- 接口研究参考 naiyQAQ/fanqie-assistant。
项目代码采用 MIT License。小说内容的版权归属与使用条件遵循其权利人的授权。

