# 立创摸鱼阅读器 **Repository Path**: membereeee/lichuang ## Basic Information - **Project Name**: 立创摸鱼阅读器 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-24 - **Last Updated**: 2026-09-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 摸鱼阅读器(Moyu Reader) 低调的 TXT 小说阅读器,窗口伪装成嘉立创 EDA 的「输出」面板。鼠标移开只留一行仿真日志,老板键一键隐藏整个窗口。 ## 功能 - **伪装输出面板**:日志风格皮肤,带标签栏(输出 / DRC / 网络 / 消息)、自动滚动的仿真日志流(DRC 检查、覆铜、器件库、网络表、BOM、Gerber、自动保存等带随机数值的消息)、闪烁光标与状态栏,打开时预填历史时间戳,看起来像一个一直开着的真窗口。 - **悬停展开**:鼠标移开窗口只显示仿真日志,悬停时正文淡入,离开约 0.3 秒后淡出。 - **老板键**:默认 `F7` 一键显示 / 隐藏整个窗口,阅读进度不丢。 - **快捷键翻章**:默认 `F8`(上一章)/ `F10`(下一章),焦点在画布上也能翻页,全部快捷键均可在设置中自定义(单个按键)。 - **TXT 导入**:支持 UTF-8(含 BOM)、UTF-16LE / BE、GBK 自动检测,中文小说不乱码。 - **章节系统**:自动识别 `第X章 / 第X回 / 第X节 / 第X卷 / 第X篇 / 第X集 / 第X部`、`Chapter N`、`序章 / 序言 / 前言 / 楔子 / 尾声 / 后记 / 终章 / 番外` 等标题,下拉框一键跳转。 - **书库管理**:多本书存储(IndexedDB),随时切换与删除。 - **自动滚屏**:速度 1–10 可调,滚到底自动翻章。 - **阅读舒适度**:字号 12–24 可调。 - **进度记忆**:每本书的章节与滚动位置持久化,重启 EDA 接着看。 - **主题跟随**:自动适配 EDA 明 / 暗主题。 ## 功能演示 **伪装输出面板** —— 鼠标移开时的样子,日志持续滚动: ![伪装输出面板](./images/01-disguise.png) **阅读界面** —— 鼠标悬停后正文淡入,顶部显示书名与章节,底部为翻章控件: ![阅读界面](./images/02-reading.png) **书库** —— 多本书导入、切换与删除: ![书库](./images/03-library.png) **设置** —— 快捷键录制、窗口尺寸、字号、滚屏速度: ![设置](./images/04-settings.png) **章节跳转** —— 章节下拉框直接跳到指定章节: ![章节跳转](./images/05-chapter.png) ## 使用方法 1. 构建扩展包:`npm install && npm run build` 2. 导入 `.eext`: - EDA V2:顶部菜单 **设置 → 扩展 → 扩展管理器 → 导入扩展** - EDA V3:顶部菜单 **高级 → 扩展管理器 → 导入** 3. 在任意编辑器页面点击顶部菜单 **阅读器 → 打开阅读器**。 4. 在阅读器窗口右上角点击 **书库 → 导入 TXT**,选择本地 TXT 小说。 5. 导入后正文自动显示;鼠标移开窗口即恢复成伪装日志面板。 6. 需要离开时,按老板键 `F7` 隐藏整个窗口。 ## 快捷键 | 功能 | 默认按键 | 说明 | | --- | --- | --- | | 老板键 | `F7` | 显示 / 隐藏整个阅读器窗口 | | 上一章 | `F8` | 上一章 | | 下一章 | `F10` | 下一章 | > ⚠ 重要:嘉立创 EDA 3.2.x 的扩展快捷键**只支持单个按键**,组合键(Ctrl/Alt/Shift+键) > 注册后按下不触发(已实测验证)。三个快捷键均可在 **设置 → 快捷键** 中自定义, > 录制时只接受单个按键(按下带 Ctrl/Alt/Shift 的组合会提示改用单键)。 ## 设置项 | 设置项 | 范围 | 说明 | | --- | --- | --- | | 窗口宽度 | 300 – 800 px | 点击「应用」后按新尺寸重开窗口,进度保留 | | 窗口高度 | 350 – 900 px | 同上 | | 字号 | 12 – 24 px | 正文文字大小 | | 滚屏速度 | 1 – 10 | 自动滚屏速度 | | 悬停才显示正文 | 开 / 关 | 关闭后正文常驻显示 | 设置页采用「应用」提交制:修改后需点击 **应用** 才生效并返回主页面,支持 **取消** 与 **恢复默认**。 ## 伪装细节 - 窗口标题为「输出」,与 EDA 真实输出面板一致。 - 首条日志固定为「打开工程」,并使用当前真实工程名(通过 `dmt_Project.getCurrentProjectInfo()` 获取)。 - 后续日志按 `YYYY-MM-DD HH:MM:SS [类别] : 消息` 格式持续追加,类别涵盖 DRC / 覆铜 / 网络表 / 器件库 / BOM / 3D 模型 / 版本管理 / Gerber / 警告等,数值随机变化。 - 状态栏实时显示日志行数与编码信息。 ## 已知限制 - 快捷键仅在 EDA 窗口处于前台时生效。 - 与 EDA 系统快捷键冲突的键位无法生效(系统优先),扩展会自动回退默认键位并提示; 例如 `Shift+1` / `Shift+2` 已被系统占用为标签切换。 - 窗口为 EDA 内部弹窗,带标题栏,不能拖出 EDA 主窗口。 - 鼠标无法穿透窗口区域。 ## 兼容性 - 适配嘉立创 EDA 专业版(`engines.eda` 为 `^3.2.0`)。 - 基于 `@jlceda/pro-api-types` 0.4.25 开发。 - 阅读器窗口使用 `sys_IFrame.openIFrame` 与 `sys_MessageBus`(SDK 标记 `@beta`),当前版本下可用。 ## 开发 ``` src/index.ts 主进程:菜单 / 窗口管理 / 快捷键注册 iframe/index.html 阅读器界面(EDA 内使用,绝对路径) iframe/app.js 阅读器逻辑:导入 / 章节 / 进度 / 滚屏 / 快捷键录制 iframe/style.css 日志伪装皮肤 iframe/preview.html 本地预览页(相对路径,浏览器直接打开调试) scripts/gen_icon.py 生成扩展图标 images/logo.png ``` 常用命令: ```shell npm install # 安装依赖 npm run build # 编译并打包为 .eext(输出到 build/dist/) npm run compile # 仅编译,不打包 ``` ## 作者 emberdd ## 许可 MIT