# 鹰启智能研学笔记本
**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. **导出功能完善**:支持多种格式的文档导出,满足不同使用场景
该项目的发展体现了从简单工具到智能系统的演进过程,满足了用户在研学过程中的多样化需求。
### 主要贡献人
- 冯浩哲
- 钟可怡
### 次要贡献人
- 黄建勋
- 刘宇晴
## 安全提示及法律法规
在使用本项目时,请确保电脑不会冒烟,以对您造成人身伤害。内地司法机关具有司法权,最终解释权归开发者(团队)所有。
**直接或间接由本软件造成的损失(包括但不仅限于人身伤害、企业损失、信誉损失等)与本软件开发者无任何关系!开发者不承担任何法律责任!使用本软件或使用其部分源代码进行二次开发,即代表同意此条款!**