# 鹰启智能研学笔记本 **Repository Path**: fenghaozhe/EagleStart-Notebook ## Basic Information - **Project Name**: 鹰启智能研学笔记本 - **Description**: 暂无更多简介,尽情期待 - **Primary Language**: C++ - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-11-24 - **Last Updated**: 2026-04-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 鹰启智能研学笔记本 (EagleStart-Notebook) 详细介绍 ## 1. 项目概述 鹰启智能研学笔记本(EagleStart)是一款功能强大的智能研学工具,从最初的C++简单文本编辑器,逐渐发展为基于Python和PyQt5框架的多功能智能研学平台。该项目旨在为用户提供一个集Markdown编辑、知识管理、任务追踪和AI辅助于一体的综合研学环境。 ## 2. 核心功能 ### 2.1 Markdown编辑与实时预览 - **实时预览**:编辑内容即时渲染,所见即所得 - **语法支持**:完整支持Markdown语法,包括标题、列表、表格、代码块等 - **代码高亮**:支持多种编程语言的代码块高亮显示 - **深色主题**:内置护眼深色界面,减少长时间使用的视觉疲劳 ### 2.2 知识图谱 - **可视化知识关联**:通过网络图谱直观展示知识点之间的关系 - **节点管理**:支持添加、编辑、删除知识节点 - **关系定义**:可自定义节点间的关系类型 - **图谱导出**:支持导出为PNG和SVG格式 ### 2.3 任务管理 - **待办事项**:创建和管理任务列表 - **状态跟踪**:标记任务完成状态 - **任务清理**:一键清空已完成任务 ### 2.4 AI辅助写作 - **写作建议**:基于研究主题提供智能写作建议 - **字数统计**:实时统计文档字数和字符数 ### 2.5 多格式导出 - **HTML导出**:将Markdown转换为带有样式的HTML文件 - **PDF导出**:生成高质量PDF文档 - **Word导出**:支持导出为Microsoft Word格式,保留格式和样式 ### 2.6 文件管理 - **项目文件夹**:支持多项目管理 - **文件树视图**:直观浏览和管理文件 - **最近文件**:快速访问最近编辑的文件 ## 3. 技术架构 ### 3.1 技术栈 | 技术/库 | 用途 | 来源 | |--------|------|------| | Python | 主要开发语言 | | | PyQt5 | GUI框架 | | | networkx | 知识图谱构建 | | | matplotlib | 图谱可视化 | | | markdown2 | Markdown解析 | | | python-docx | Word文档导出 | | | QWebEngineView | 预览渲染 | | ### 3.2 项目结构 ``` EagleStart9.0.0.0/ └── x64-windows/ └── src/ ├── __pycache__/ ├── dialog/ │ ├── __pycache__/ │ ├── ResearchNotebook_main.py # 主界面实现 │ └── start.py # 启动窗口 ├── icon/ │ └── 1.ico # 应用图标 ├── EagleStart-Ver10.1.0.5.py # 主入口文件 ├── algorithm.py # 核心算法模块 ├── imports.py # 导入管理 ├── pyinstaller_output.txt # 打包输出 └── settings.json # 配置文件 ``` ### 3.3 核心模块 #### 3.3.1 主入口模块 主入口文件 负责: - 依赖检查:确保所有必要的库已安装 - 启动窗口:快速显示启动界面 - 延迟导入:优化启动速度,减少初始加载时间 #### 3.3.2 算法模块 包含三个核心类: - **KnowledgeGraph**:知识图谱的构建、管理和可视化 - **AIAssistant**:AI辅助写作和字数统计功能 - **DocumentProcessor**:文档格式转换和导出功能 #### 3.3.3 主界面模块 实现了: - 多标签界面:编辑器、任务管理、知识图谱 - 文件树视图:浏览项目文件结构 - 实时预览:Markdown内容即时渲染 - 工具栏和菜单:提供各种功能入口 - 状态栏:显示文件状态和字数统计 ## 4. 关键特性与亮点 ### 4.1 延迟初始化 项目采用延迟初始化技术,只在需要时加载模块,提高启动速度和运行效率: ```python # 延迟导入库 nx = None plt = None BytesIO = None base64 = None markdown2 = None Document = None ``` ### 4.2 深色主题 内置深色主题,保护用户视力,提升使用体验: ```python def init_dark_theme(self): try: dark_palette = QPalette() dark_palette.setColor(QPalette.Window, QColor(53, 53, 53)) dark_palette.setColor(QPalette.WindowText, Qt.white) dark_palette.setColor(QPalette.Base, QColor(25, 25, 25)) # 更多颜色设置... QApplication.setPalette(dark_palette) print("深色主题设置成功") except Exception as e: print(f"深色主题设置失败: {e}") # 不中断程序,继续执行 ``` ### 4.3 知识图谱可视化 使用networkx和matplotlib实现知识图谱的构建和可视化,支持中文显示: ```python def update_graph(self): """更新知识图谱可视化,添加中文字体支持""" if not self.graph.nodes: return None # 延迟导入matplotlib和其他绘图相关库 global plt, BytesIO, base64 if plt is None: import matplotlib.pyplot as plt # 设置matplotlib支持中文 plt.rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei', 'Arial Unicode MS'] plt.rcParams['axes.unicode_minus'] = False # 解决负号显示问题 # 更多代码... ``` ### 4.4 多格式导出 支持将Markdown文档导出为多种格式,满足不同场景需求: - **HTML导出**:带有样式的网页格式 - **PDF导出**:高质量可打印格式 - **Word导出**:与Microsoft Office兼容的格式 ### 4.5 任务管理系统 内置任务管理功能,帮助用户跟踪研究进度: ```python def create_task_panel(self): """创建任务管理面板""" try: # 直接使用已有的task_widget,不再重新创建 # 清空现有的布局 if self.task_widget.layout() is not None: # 移除所有子部件 for i in reversed(range(self.task_widget.layout().count())): widget = self.task_widget.layout().itemAt(i).widget() if widget is not None: widget.setParent(None) else: # 如果没有布局,创建一个新的布局 layout = QVBoxLayout() self.task_widget.setLayout(layout) # 获取当前布局 layout = self.task_widget.layout() self.task_list = QListWidget() self.task_list.itemChanged.connect(self.task_item_changed) self.task_input = QLineEdit() self.task_input.setPlaceholderText("输入新任务...") self.task_input.returnPressed.connect(self.add_task) add_button = QPushButton("+ 添加任务") add_button.clicked.connect(self.add_task) clear_button = QPushButton("清空已完成") clear_button.clicked.connect(self.clear_completed_tasks) layout.addWidget(QLabel("待办事项")) layout.addWidget(self.task_list) layout.addWidget(self.task_input) layout.addWidget(add_button) layout.addWidget(clear_button) print("任务面板初始化成功") except Exception as e: print(f"创建任务面板失败: {e}") import traceback traceback.print_exc() ``` ## 5. 使用指南 ### 5.1 基本操作 1. **启动应用**:运行 `EagleStart-Ver10.1.0.5.py` 文件 2. **创建新文档**:点击工具栏的 "新建" 按钮或使用快捷键 `Ctrl+N` 3. **打开文件**:点击工具栏的 "打开" 按钮或使用快捷键 `Ctrl+O` 4. **保存文件**:点击工具栏的 "保存" 按钮或使用快捷键 `Ctrl+S` 5. **导出文档**:在 "文件" 菜单中选择 "导出" 子菜单,选择所需格式 ### 5.2 知识图谱使用 1. **切换到知识图谱标签**:点击主界面底部的 "知识图谱" 标签 2. **添加节点**:点击 "添加节点" 按钮,输入节点名称和描述 3. **添加关系**:点击 "添加关系" 按钮,选择源节点、关系类型和目标节点 4. **查看节点信息**:双击节点树中的节点,查看详细信息 5. **导出图谱**:点击 "导出图谱" 按钮,选择保存格式和路径 ### 5.3 任务管理使用 1. **切换到任务管理标签**:点击主界面底部的 "任务管理" 标签 2. **添加任务**:在输入框中输入任务内容,按 Enter 键或点击 "添加任务" 按钮 3. **标记任务完成**:点击任务项前的复选框 4. **清空已完成任务**:点击 "清空已完成" 按钮 ### 5.4 AI辅助写作 1. 在 "工具" 菜单中选择 "AI辅助写作" 2. 查看AI生成的写作建议 3. 使用 "字数统计" 功能查看文档字数 ## 6. 项目演变 鹰启智能研学笔记本经历了多次版本迭代,从简单的文本编辑器发展为功能强大的智能研学工具: | 版本 | 主要变化 | |------|---------| | 1.0.0.3 | C++时代,基本文本编辑功能 | | 6.1.0.1 | 迁移到Python,使用PyQt框架,添加Markdown支持 | | 6.2.2.1 | 优化界面,增加任务管理,支持PDF导出,实现深色主题 | | 6.2.2.3 | 改进设置机制,优化预览性能,增加快捷键支持 | | 6.3.0.1 | 实现打包功能,优化资源管理 | | 6.9.0.0 | 引入AI辅助写作,实现知识图谱功能 | | 6.9.5.7 | 重构算法模块,分离功能,改进知识图谱可视化 | | 7.1.0.0 | 增强知识图谱交互性,优化AI辅助写作性能 | | 7.2.1.0 | 优化打包流程,生成可执行文件 | | 7.2.2.0 | 实现完整研学笔记本功能 | | 10.1.0.5 | 当前版本,进一步优化和扩展功能 | ## 7. 技术亮点 1. **模块化设计**:核心功能分离为独立模块,便于维护和扩展 2. **延迟加载**:采用延迟导入技术,提高启动速度和运行效率 3. **用户体验**:深色主题、实时预览等特性提升用户体验 4. **多格式支持**:支持多种文件格式的导入和导出 5. **智能功能**:知识图谱和AI辅助写作等智能特性 6. **中文支持**:完善的中文显示和输入支持 7. **错误处理**:健壮的错误处理机制,确保应用稳定运行 8. **性能优化**:事件处理优化,避免界面冻结 9. **可扩展性**:模块化设计便于添加新功能 ## 8. 应用场景 鹰启智能研学笔记本适用于以下场景: 1. **学术研究**:撰写论文、文献综述,管理研究知识点 2. **教育教学**:制作教案、讲义,组织教学内容 3. **项目管理**:规划项目任务,跟踪进度 4. **知识管理**:构建个人知识体系,可视化知识关联 5. **内容创作**:撰写博客、文章,利用AI辅助提升写作效率 6. **学习笔记**:记录学习内容,整理知识点 7. **技术文档**:编写技术文档,支持代码块和格式化 ## 9. 安装与依赖 ### 9.1 必要依赖 - PyQt5 - PyQt5.QtWebEngineWidgets - os - sys - json - collections ### 9.2 可选依赖 - networkx (知识图谱功能) - matplotlib (可视化功能) - markdown2 (Markdown处理) - python-docx (Word导出) ### 9.3 安装方法 ```bash pip install PyQt5 PyQt5.QtWebEngineWidgets networkx matplotlib markdown2 python-docx ``` ### 9.4 运行方法 1. **直接运行**: ```bash python EagleStart-Ver10.1.0.5.py ``` 2. **使用可执行文件**: - 项目已支持打包为可执行文件,生成EagleStart.exe - 直接双击运行EagleStart.exe ## 10. 未来展望 1. **云同步**:添加云存储功能,实现多设备同步 2. **协作编辑**:支持多人协作编辑文档 3. **更强大的AI功能**:集成更先进的AI模型,提供更智能的写作辅助 4. **扩展插件系统**:允许用户自定义功能和扩展 5. **跨平台支持**:优化在不同操作系统上的表现 6. **知识库管理**:增强知识图谱功能,支持更复杂的知识结构 7. **版本控制**:集成版本控制功能,跟踪文档变更 8. **模板系统**:提供各种文档模板,方便快速创建文档 ## 11. 贡献者 - **主要贡献人**:冯浩哲、钟可怡 - **次要贡献人**:黄建勋、刘宇晴 ## 12. 许可证 本项目采用 GNU General Public License v3.0 许可证。 ## 13. 安全提示 在使用本项目时,请确保电脑不会冒烟,以对您造成人身伤害。内地司法机关具有司法权,最终解释权归开发者(团队)所有。 直接或间接由本软件造成的损失(包括但不仅限于人身伤害、企业损失、信誉损失等)与本软件开发者无任何关系!开发者不承担任何法律责任!使用本软件或使用其部分源代码进行二次开发,即代表同意此条款! ## 14. 总结 鹰启智能研学笔记本是一款功能丰富、性能优良的智能研学工具,通过整合Markdown编辑、知识图谱、任务管理和AI辅助等功能,为用户提供了一个全面的学习和研究环境。其模块化设计和性能优化确保了良好的用户体验,而多格式支持和导出功能则满足了不同场景的需求。 无论是学生、教师还是研究人员,EagleStart都能帮助用户更高效地组织和管理知识,提高学习和研究的效率。随着版本的不断更新和功能的持续完善,EagleStart有望成为研学领域的重要工具。 --- *注:本介绍基于EagleStart 10.1.0.5版本,后续版本可能会有功能更新和改进。* # 鹰启智能研学笔记本(EagleStart)版本提交历史 ## 版本 1.0.0.3(C++时代) **提交内容**: - 实现了基本的文本编辑功能 - 支持文件的新建、打开、保存操作 - 简单的界面设计,使用C++语言开发 - 支持基本的文本格式设置 ## 版本 6.1.0.1(Python迁移) **提交内容**: - 项目从C++迁移到Python语言 - 使用PyQt框架构建界面 - 实现了基本的Markdown编辑功能 - 添加了实时预览功能 - 支持文件导出为HTML格式 ## 版本 6.2.2.1(功能扩展) **提交内容**: - 优化了界面布局和用户体验 - 增加了任务管理功能 - 支持导出为PDF格式 - 实现了深色主题 - 修复了文件打开和保存的相关bug ## 版本 6.2.2.3(功能完善) **提交内容**: - 改进了设置保存和加载机制 - 优化了预览渲染性能 - 增加了快捷键支持 - 修复了一些界面显示问题 ## 版本 6.3.0.1(打包优化) **提交内容**: - 实现了项目的打包功能,支持生成可执行文件 - 优化了资源管理 - 改进了依赖安装方式 - 增加了设置配置文件 ## 版本 6.9.0.0(AI功能引入) **提交内容**: - 引入了AI辅助写作功能 - 实现了基本的知识图谱功能 - 优化了文档导出功能 - 增加了代码编辑器支持 ## 版本 6.9.5.7(算法模块重构) **提交内容**: - 重构了algorithm.py模块,分离了知识图谱、AI助手和文档处理功能 - 改进了知识图谱的可视化效果 - 优化了AI辅助写作的生成逻辑 - 增加了字数统计功能 ## 版本 7.1.0.0(功能增强) **提交内容**: - 增强了知识图谱的交互性 - 优化了AI辅助写作的性能 - 改进了文档处理算法 - 修复了一些已知bug ## 版本 7.2.1.0(打包优化) **提交内容**: - 优化了打包流程,生成了EagleStart.exe可执行文件 - 改进了项目结构 - 增加了图标资源 - 优化了启动速度 ## 版本 7.2.2.0(最终版本,2025年) **提交内容**: - 实现了完整的研学笔记本功能 - 包含实时预览、深色主题、多格式支持等特性 - 完善了任务管理系统 - 增强了知识图谱功能,支持节点和关系的详细管理 - 优化了AI辅助写作功能 - 支持多种导出格式(PDF、Word、HTML) - 增加了帮助文档和关于界面 - 优化了用户体验和性能 ## 项目演变总结 鹰启智能研学笔记本从最初的C++简单文本编辑器,逐渐发展为功能强大的Python语言开发的智能研学工具。主要演变方向包括: 1. **语言迁移**:从C++迁移到Python,提高了开发效率和跨平台兼容性 2. **功能扩展**:从基本文本编辑到支持Markdown、代码编辑、任务管理、知识图谱等高级功能 3. **智能增强**:引入AI辅助写作功能,提升用户的写作效率 4. **用户体验优化**:深色主题、实时预览、快捷键支持等提升了用户体验 5. **导出功能完善**:支持多种格式的文档导出,满足不同使用场景 该项目的发展体现了从简单工具到智能系统的演进过程,满足了用户在研学过程中的多样化需求。 ### 主要贡献人 - 冯浩哲 - 钟可怡 ### 次要贡献人 - 黄建勋 - 刘宇晴 ## 安全提示及法律法规 在使用本项目时,请确保电脑不会冒烟,以对您造成人身伤害。内地司法机关具有司法权,最终解释权归开发者(团队)所有。 **直接或间接由本软件造成的损失(包括但不仅限于人身伤害、企业损失、信誉损失等)与本软件开发者无任何关系!开发者不承担任何法律责任!使用本软件或使用其部分源代码进行二次开发,即代表同意此条款!**