- AI Copilot 写作助手: 集成SiliconFlow大语言模型,为Markdown写作提供智能辅助
- 行内补全: 根据上下文智能生成续写内容,快捷键
Alt+\ - 编辑模式: 根据指令优化和修改文本,快捷键
Ctrl+Shift+E - 创作模式: 从提示词生成完整文档,快捷键
Ctrl+Shift+C - 对话模式: 与AI助手自然交流,获取写作建议和灵感
- 代理模式: 自动执行文档任务(读取、编辑、创建、提交),支持审计工作流
- 行内补全: 根据上下文智能生成续写内容,快捷键
- 任务审计系统: 代理模式执行的所有修改操作需要经过人工审核
- 类似GitHub分支提交的审查流程
- 批准/拒绝机制,确保AI操作的安全性
- 任务历史记录和审计意见保存
- Copilot设置对话框: 配置API密钥和模型选择
- Copilot面板: 统一的UI界面管理所有Copilot功能
- 多模型支持: 支持Qwen系列、DeepSeek等多个大语言模型
- 详细文档: 新增Copilot使用指南
- 实现
SiliconFlowClientAPI客户端 - 实现
CopilotManager核心管理器 - 实现
AgentMode代理模式和任务系统 - 创建
CopilotPanelUI组件 - 集成到主窗口,添加菜单项和快捷键
- 配置管理集成,安全存储API密钥
本次更新完全重构了MGit的用户界面,采用VSCode风格的设计语言,提供更加现代化和专业的用户体验。
UI组件
-
新增活动栏(Activity Bar)组件:左侧垂直图标导航栏
- 资源管理器、搜索、源代码管理、调试、扩展等快速访问按钮
- 互斥选择机制和活动指示器
- 平滑的悬停和点击效果
-
新增VSCode风格状态栏组件:底部智能信息栏
- 显示Git分支、文件状态、行列号
- 显示文件编码、换行符类型、语言模式
- 支持点击交互,快速访问相关功能
-
新增主窗口增强器(VSCodeMainWindowEnhancer)
- 重新组织UI布局为VSCode风格
- 集成活动栏、侧边栏和状态栏
- 实现侧边栏展开/收起动画
-
新增文件浏览器VSCode风格增强器
- VSCode风格的文件树显示
- 优化的标题栏和间距
- 悬停和选中效果
主题系统
-
完整的VSCode深色主题配色方案
- #1E1E1E编辑器背景
- #252526侧边栏背景
- #333333活动栏背景
- #007ACC状态栏背景
- 精确还原VSCode的所有UI元素颜色
-
完整的VSCode浅色主题配色方案
- #FFFFFF编辑器背景
- #F3F3F3侧边栏背景
- 保持与深色主题一致的设计语言
-
全局QSS样式表系统
- 统一的按钮、输入框、列表样式
- VSCode风格的滚动条
- 平滑的颜色过渡
动画系统
-
AnimationHelper动画辅助类
- fade_in/fade_out:淡入淡出动画
- slide_in/slide_out:滑动动画
- expand/collapse:展开收起动画
- color_transition:颜色过渡动画
- smooth_scroll:平滑滚动
- bounce/shake/pulse:特效动画
-
VSCodeAnimationPresets动画预设
- sidebar_toggle:侧边栏切换动画
- panel_toggle:面板切换动画
- tab_switch:标签页切换动画
- notification_slide_in:通知滑入动画
编辑器
- 更新Markdown语法高亮为VSCode配色
- 深色主题:蓝色关键字,橙粉色字符串,绿色注释
- 浅色主题:蓝色关键字,红色字符串,绿色注释
- 精确还原VSCode的Token颜色
界面布局
- 重构主窗口布局结构
- 采用活动栏 + 侧边栏 + 编辑器区域 + 状态栏的布局
- 更符合现代IDE的使用习惯
- 优化了空间利用率
交互体验
- 所有UI交互都添加了平滑动画
- 侧边栏展开/收起:200ms InOutQuad缓动
- 内容切换:150ms淡入淡出
- 按钮悬停:即时响应,平滑过渡
- 优化了鼠标悬停和点击反馈
新增文件
src/theme/vscode_theme.py:VSCode主题配色定义和应用src/components/vscode_activity_bar.py:活动栏组件src/components/vscode_status_bar.py:状态栏组件src/components/vscode_explorer.py:文件浏览器增强器src/views/vscode_enhancer.py:主窗口增强器src/utils/vscode_animations.py:动画工具类docs/vscode_ui_design.md:UI设计文档
修改文件
src/theme/__init__.py:导出VSCode主题函数src/main.py:集成VSCode主题和UI增强src/components/editor.py:更新语法高亮配色README.md:更新UI特性描述
- 保持兼容:继续使用PyQt5 + PyQt-Fluent-Widgets框架
- 精确还原:完全还原VSCode的配色和视觉效果
- 丝滑动画:200ms标准动画时长,使用缓动曲线
- 模块化:每个组件独立,易于维护和扩展
- 中文友好:完整的中文注释和文档
新UI会在应用启动时自动应用。用户可以:
- 使用活动栏快速切换不同功能
- 通过状态栏查看和修改各种状态
- 享受流畅的动画过渡效果
- 在设置中切换深色/浅色主题
详细的UI使用说明请参阅:VSCode风格UI设计文档
- 修复分支管理器中图标加载错误,将不可用的
FluentIcon.BRANCH替换为FluentIcon.CODE,解决了分支列表视图无法加载的问题 - 修复Git面板中分支切换循环刷新问题,避免了在两个分支间反复加载导致的界面卡顿和潜在的数据一致性问题
- 解决日志清理功能中的类型错误(
'str' object has no attribute 'get'),增强了日志系统的稳定性 - 修复
get_category_log_file和get_category_size方法中的类型检查问题,提高了日志系统的健壮性
- 重构分支切换逻辑,添加
isUpdatingBranchCombo状态标志位,有效防止UI组件循环触发更新事件 - 优化
refreshStatus方法,增加update_branch_combo参数,实现更精确的控制,减少不必要的UI刷新 - 完善
BranchManagerDialog与Git面板的交互方式,提高分支操作的稳定性和用户体验 - 增强日志系统错误报告机制,提高系统问题诊断效率
- 实现全面的防御性编程模式,增加边界条件检查和类型验证
- 优化异常处理流程,确保关键操作即使在错误情况下也能安全完成
- 添加详细的代码注释和函数文档,提高代码可维护性
- 改进日志清理功能的结果反馈,提供更清晰的操作结果报告
- 优化分支操作的响应速度,减少用户等待时间
- 提高UI交互的可靠性,消除在分支切换过程中可能出现的界面闪烁
- 改进日志管理的稳定性,确保日志清理功能在各种情况下都能可靠工作
- 修复了日志级别筛选中"全部"级别显示问题,解决了错误将"全部"当作搜索关键词的问题
- 修复了日志清理功能中的参数名不匹配问题("days"与"older_than_days")
- 优化了日志清理结果报告的准确性和详细度
- 改进了日志加载速度和响应性,减少了大量日志时的界面卡顿
- 优化了日志清理过程中的资源使用和异常处理
- 增强了日志框架的错误处理能力,提高了系统稳定性
- 改进了错误提示信息,使错误原因更加明确和易于理解
- 优化了日志分析结果的展示方式,使信息更加直观
- 提升了日志管理界面的整体响应速度
- 添加了日志优化标签页,提供全面的日志分析和优化功能
- 新增日志分析功能,可分析日志状态、使用空间、写入效率等指标
- 增加自动生成优化建议功能,提供针对性的日志管理建议
- 实现单键优化功能,可一键执行多项优化任务
- 添加针对特定问题的定向优化功能(旧日志清理、日志级别调整等)
- 增强日志过滤系统,支持更精确的时间范围筛选
- 优化日志展示界面,添加更直观的分类和级别指示
- 完善错误和性能日志查看体验,支持更详细的上下文分析
- 改进日志统计功能,提供更全面的使用情况分析
- 添加日志健康状态评估,直观显示系统日志质量
- 修复了时间范围过滤中类型比较问题,确保正确处理天数参数
- 修复
update_error_list方法中日志过滤逻辑,统一使用get_time_filter_days和_get_filtered_logs - 修正
get_time_filter_days方法处理无效输入的逻辑,增加更严格的类型检查 - 增强
_get_filtered_logs方法的错误处理,改进异常捕获和日志记录 - 修复多处可能导致日志分析失败的边缘情况处理
- 增加更详细的日志记录,便于诊断和排查问题
- 优化日期解析和比较逻辑,提高过滤效率
- 添加类型安全转换,确保参数类型一致性
- 标准化异常处理流程,提高系统稳定性
- 重构部分代码以提高可维护性和性能
- 新增日志优化器功能
- 添加日志系统状态分析功能
- 添加日志存储空间分析功能
- 添加日志效率分析功能
- 添加日志内容分析功能
- 支持一键优化日志系统
- 支持定向优化特定问题
- 提供可操作的优化建议
- 实现日志清理和归档功能
- 优化日志分析器界面布局
- 增加日志系统健康状态可视化图表
- 添加日志分布图
- 实现日志级别过滤功能
- 修复了日志级别筛选中"全部"级别显示问题,解决了错误将"全部"当作搜索关键词的问题
- 优化了日志加载速度和响应性,减少了大量日志时的界面卡顿
- 改进了错误提示信息,使错误原因更加明确
- 修复了日志清理功能中的参数名不匹配问题("days"与"older_than_days")
- 增强了日志清理结果报告的准确性和详细度
- 优化了日志清理过程中的异常处理
- 改进了资源管理和内存使用效率
- 增强了日志框架的错误处理能力
- 修复了在某些情况下可能导致的内存泄漏问题
-
插件系统
- 基于PluginBase库的插件架构
- 插件生命周期管理(加载、启用、禁用、卸载)
- 事件系统,允许插件响应应用程序事件
- 钩子系统,允许插件修改应用程序行为
- 插件设置管理
- 友好的插件管理界面
-
插件类型支持
- 工具栏插件 - 添加工具栏按钮和功能
- 编辑器插件 - 扩展编辑器功能
- 主题插件 - 自定义应用程序外观
- 视图插件 - 添加新的视图面板
- 通用插件 - 其他类型的功能扩展
-
示例插件
- 单词计数器插件 - 统计文档中的单词数、字符数和行数
- 自定义界面和设置
-
插件开发文档
- 详细的插件开发指南
- API参考文档
- 示例代码和最佳实践
-
组件化设计
- 采用Component-Based Development设计模式
- 核心功能模块化,提高可维护性
- 组件间低耦合,高内聚
-
配置管理改进
- 配置系统重构,支持插件设置
- 分层配置结构
- 自动保存和加载配置
-
UI组件化
- 界面元素组件化
- 自动适应主题变更
- 统一的组件风格
-
代码优化
- 单例模式实现改进
- 事件分发机制优化
- 资源管理效率提升
-
依赖更新
- 新增PluginBase库
- 优化项目依赖管理
- 改进导入结构
-
开发体验
- 插件热重载支持
- 调试信息改进
- 日志系统增强
-
优化的OAuth浏览器对话框
- 全面重构的资源管理机制,避免内存泄漏
- 确保WebEngine资源在对话框关闭时完全释放
- 改进重定向URL处理,增强成功率
-
用户体验提升
- 优化OAuth授权成功/失败反馈界面
- 自动关闭授权窗口,减少用户操作
- 加载状态提示更加友好
-
安全性增强
- 使用QUrlQuery替代parse_qs解析查询参数,提高安全性
- 实现更完善的错误处理流程
- 授权参数传递安全性提高
-
资源管理
- 实现链式信号断开处理,防止内存泄漏
- 对WebEngine对象进行合理释放,避免资源残留
- 添加垃圾回收强制触发,确保资源及时释放
-
稳定性提升
- 改进closeEvent处理逻辑,确保对话框正确关闭
- 添加异常处理保护,提高应用稳定性
- 优化状态检查机制,避免重复授权请求
-
增强的账号管理系统
- 本地加密存储账号信息,提升安全性
- 支持多账号切换
- 自动登录功能
- 头像加载和缓存
- 账号设置面板
-
认证方式扩展
- 支持GitHub OAuth认证
- 支持Gitee Token认证
- 自签名SSL证书支持,保障认证安全性
-
两因素认证(2FA)
- 基于TOTP (Time-based One-Time Password)的两因素认证
- QR码生成与扫描
- 验证倒计时提示
- 可选启用/禁用
-
用户界面改进
- 账号状态显示
- 内置Web浏览器用于OAuth认证
- 现代化设置界面
-
数据加密
- 使用Fernet对称加密保护本地账号数据
- 密钥管理与自动恢复机制
- 加密错误自动修复
-
SSL支持
- 自签名SSL证书生成与管理
- HTTPS用于OAuth回调服务器
- 证书有效期检查与自动更新
-
容错机制
- 加密错误自动恢复
- 密钥与账号数据损坏检测
- 备份与恢复策略
-
代码架构
- 模块化设计,便于扩展
- 信号-槽机制实现UI响应
- 异步操作避免UI卡顿
-
依赖更新
- 新增cryptography库用于加密
- 新增pyopenssl库用于SSL证书管理
- 新增qrcode库支持两因素认证
-
兼容性改进
- 跨平台字符编码处理
- 网络错误处理优化
- 端口占用自动检测与切换