# thief-reader-pro **Repository Path**: mzhao8911/thief-reader-pro ## Basic Information - **Project Name**: thief-reader-pro - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-16 - **Last Updated**: 2026-09-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # thief-reader 一个隐蔽的 VSCode 阅读器插件,让你可以在状态栏中低调地阅读文本内容。 ## 📸 功能展示 ![功能展示](https://free-img.400040.xyz/4/2025/10/29/6901b575be6ce.jpg) ![功能展示](https://free-img.400040.xyz/4/2025/10/29/6901b793567da.jpg) ## ✨ 特性 **仅支持纯文本,不支持图片** ### 📚 多格式支持 - **PDF 文件**:自动解析 PDF 文档,提取文本内容 - **TXT 文件**:支持纯文本文件阅读 - **EPUB 电子书**:解析 EPUB 格式电子书 - **粘贴内容**:直接粘贴任意文本内容进行阅读 ### 🎯 核心功能 - **状态栏阅读**:内容显示在 VSCode 底部状态栏,低调不打扰 - **章节预览弹窗**:点击状态栏文字区域打开完整章节预览,支持自由滚动浏览 - **章节导航**:自动识别章节结构,支持快速跳转 - **位置记忆**:每个文件独立记忆阅读位置,随时切换 - **多文件管理**:同时加载多个文件,切换无缝 - **持久化存储**:关闭 VSCode 后阅读进度自动保存 ### 🎨 界面特性 - **侧边栏面板**:文件管理、章节列表、设置等功能集中管理 - **透明度调节**:可调节状态栏文字透明度(5%-100%)和弹窗文字透明度(10%-100%) - **章节预览窗**:独立窗口显示完整章节,自动定位到当前阅读位置 - **一键隐藏**:快捷键快速隐藏/显示阅读内容 - **智能提示**:文件状态清晰显示(正常/缺失/错误) ### ⌨️ 快捷键操作 - **Alt + 左/右方向键**:逐字滑动(10字符/次) - **Alt + Shift + 左/右**:快速翻页(80字符/次) - **点击状态栏文字区域**:打开/关闭章节预览弹窗 - **Shift + 空格**:快速隐藏/显示状态栏文字和章节预览弹窗 ## 📦 安装 1. 下载 `.vsix` 文件 2. 打开 VSCode 3. 按 `Cmd+Shift+P`(Mac)或 `Ctrl+Shift+P`(Windows/Linux) 4. 输入 `Extensions: Install from VSIX...` 5. 选择下载的 `.vsix` 文件 ## 🚀 使用指南 ### 1️⃣ 加载文件 **方法一:选择本地文件** 1. 点击侧边栏的 thief-reader 图标 2. 点击「选择文件 (PDF/TXT/EPUB)」按钮 3. 选择要阅读的文件 **方法二:粘贴文本内容** 1. 在「粘贴文本内容」区域输入或粘贴文本 2. 点击「加载粘贴内容」按钮 ### 2️⃣ 选择文件和章节 - **选择文件**:直接点击文件列表中的文件项 - **选择章节**:在章节列表中点击要阅读的章节 - **删除文件**:点击文件项右侧的「删除」按钮 ### 3️⃣ 阅读操作 使用快捷键控制阅读进度(无需聚焦,随时可用): - **Alt + ←** / **Alt + →**:向左/右滑动 10 个字符 - **Alt + Shift + ←** / **Alt + Shift + →**:快速翻页(80 字符) ### 4️⃣ 章节预览 **点击状态栏**打开章节预览弹窗: - 显示完整章节内容,支持自由滚动浏览 - 自动定位到当前阅读位置并高亮显示 - 可通过滑块调节弹窗文字透明度(10%-100%) - 关闭弹窗时自动同步滚动位置到状态栏 - 切换章节或文件时弹窗自动关闭 ### 5️⃣ 快速隐藏 按 `Shift + 空格` 快速隐藏或显示状态栏文字以及章节预览弹窗,只显示图标 📖 ## ⚙️ 配置选项 打开 VSCode 设置(`Cmd/Ctrl + ,`),搜索 `thief-reader`: | 配置项 | 说明 | 默认值 | 范围 | |--------|------|--------|------| | `thief-reader.statusBarOpacity` | 状态栏文字区域透明度 | 100 | 5-100 | | `thief-reader.popupTextOpacity` | 章节预览弹窗文字透明度 | 100 | 10-100 | ## 🎮 快捷键列表 | 快捷键 | 功能 | 生效条件 | |--------|------|----------| | `Alt + Left` (←) | 向左滑动 10 字符 | 全局 | | `Alt + Right` (→) | 向右滑动 10 字符 | 全局 | | `Alt + Shift + Left` | 向前翻页 80 字符 | 全局 | | `Alt + Shift + Right` | 向后翻页 80 字符 | 全局 | | `Shift + 空格` | 切换状态栏文字显示/隐藏 | 全局 | ## 💡 使用场景 - 🤫 **摸鱼阅读**:在工作时低调地阅读小说、文档 - 📖 **文档参考**:边写代码边参考技术文档,需要详细查看时打开章节预览 - 📝 **快速预览**:快速浏览长文本内容,点击状态栏查看完整章节 - 🔍 **代码注释**:阅读大段注释或文档字符串 ## 📋 功能详解 ### 多文件独立位置记忆 每个加载的文件都会独立记忆阅读位置: ``` 文件 A:第 2 章,第 300 字 文件 B:第 6 章,第 200 字 文件 C:第 1 章,第 50 字 切换文件时自动恢复各自的阅读位置 ✨ ``` ### 智能文件状态 - ✅ **正常**:文件可正常阅读 - ⚠️ **文件不存在**:本地文件被删除或移动 - ⚠️ **解析失败**:文件格式错误或损坏 失效文件会标记警告图标,并禁止选择。 ### 重复文件检测 加载已存在的文件时,会提示是否重新加载: ``` 文件 "book.pdf" 已存在,是否重新加载? [重新加载] [取消] ``` 选择「重新加载」会保留原有阅读位置。 ### 数据持久化 所有数据自动保存到 VSCode 的全局存储: - ✅ 文件列表(路径、类型、状态) - ✅ 每个文件的阅读位置 - ✅ 粘贴内容的完整文本 - ✅ 当前选中的文件 关闭 VSCode 重新打开后,一切都会自动恢复。 ## 🛠️ 技术栈 - **VSCode Extension API**:插件核心框架 - **pdf-parse**:PDF 文件解析 - **epub2**:EPUB 电子书解析 - **Node.js fs**:文件系统操作 ## 📝 开发 ### 项目结构 ``` thief-reader/ ├── extension.js # 主要逻辑 ├── package.json # 插件配置 ├── main-icon.png # 侧边栏图标 └── README.md # 文档 ``` ### 本地调试 1. 克隆仓库 2. 运行 `npm install` 安装依赖 3. 按 `F5` 启动调试 4. 在新窗口中测试插件功能 ## ⚠️ 已知问题 1. **PDF 图片**:PDF 中的图片不会显示,仅提取文本 2. **复杂排版**:复杂的 PDF 排版可能导致文本顺序混乱 3. **大文件性能**:非常大的文件(>10MB)可能加载较慢 ## 🗺️ 未来计划 - [ ] 支持更多格式(MOBI、AZW3) - [ ] 添加书签功能 - [ ] 支持全文搜索 - [ ] 添加阅读统计 - [ ] 支持主题自定义 ## 📄 许可证 MIT ## 🙏 致谢 感谢以下开源项目: - [pdf-parse](https://www.npmjs.com/package/pdf-parse) - [epub2](https://www.npmjs.com/package/epub2) --- **享受低调的阅读时光!** 📖✨ 如有问题或建议,欢迎提 Issue。