Repository navigation
Releases: TakaHoshino/FuckETS
Releases · TakaHoshino/FuckETS
Release list
v2.3.1
FuckETS v2.3.1 解析修复补丁
本版本修复部分作业 PartA / PartC 解析结果结尾缺失的问题。
更新内容
- 修复解析截尾问题:部分作业的
content.json中info.value末段<p>标签缺少</p>闭合(数据源头即如此),原拆段正则仅匹配成对标签,导致最后一个未闭合段落被静默丢弃(如作业 40888 的 PartC 故事复述缺少结局段)- 拆段逻辑现兼容末段缺闭合标签的写法,未闭合尾段一并捕获输出
- 影响面:本地 40 份
content.json中 11 份存在该结构,PartA 模仿朗读与 PartC 故事复述均可能受影响
- 修复后经真实解析路径验证:受影响作业 PartA/PartC 输出完整、PartB 回归无变化
- 框架程序集版本号同步更新为 v2.3.1
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.3.1.zip(约 82 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.3.1.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
v2.3.0
FuckETS v2.3.0 检查更新版
本版本新增检查更新功能,并支持插件工程构建后自动打包
.fep插件包。
更新内容
- 新增检查更新功能
- 启动时自动查询 GitHub Releases 检查新版本,可在「设置… → 启动时检查更新」中关闭,也支持设置窗口「立即检查」手动检查
- 发现新版本时弹出询问窗口,可选择两种安装包:自包含版(内置 .NET 8 运行时,免装环境,解压即用)与框架依赖版(体积小,需预装 .NET 8 桌面运行时),窗口内展示两者体积与区别说明,默认选中与当前安装一致的类型
- 下载源支持 GitHub 官方直连 / gh-proxy 镜像(国内加速),下载进度显示、可随时取消,完成后自动解压覆盖并重启应用(保留已安装插件)
- 更新设置持久化至
%APPDATA%\FuckETS\update.json;主界面工具栏新增「设置…」按钮
- 插件工程自动打包
.fep:examples\Directory.Build.targets使示例插件构建后自动打包到自身输出目录,scripts\pack_fep.ps1新增-NoBuild开关 - 文档同步:README 新增「检查更新」章节,
docs/PLUGIN_SDK.md补充自动打包说明 - 框架程序集版本号同步更新为 v2.3.0
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.3.0.zip(约 82 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.3.0.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
FuckETS v2.2.0
FuckETS v2.2.0 工具栏扩展版
本版本为插件系统新增主界面工具栏扩展钩子,行为插件可直接向主界面注入按钮。
更新内容
- 新增钩子
ui.mainWindow.toolbar(MainWindowToolbarContext)- 行为插件通过
AddButton向主界面工具栏追加按钮,ShowMessage弹出信息框 - 插件在「插件管理」中加载 / 启停后自动重新投递该钩子,按钮随插件状态实时增删
- 行为插件通过
- 新增示例插件
examples/ToolbarDemoPlugin:启用后主界面工具栏显示「示例插件」按钮,点击弹出信息框(标题「示例插件」、内容「FuckETS 示例行为插件」) - 插件加载成功后即时触发界面刷新(解析插件下拉框与工具栏同步重建)
- 文档同步:
docs/PLUGIN_SDK.md钩子目录新增该钩子说明与示例表,README 示例数量与目录结构更新 - 框架程序集版本号同步更新为 v2.2.0
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.2.0.zip(约 82 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.2.0.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
FuckETS v2.1.0
FuckETS v2.1.0 插件系统版
本版本新增插件系统:具体试题解析从主程序剥离为插件,支持自定义解析器与钩子扩展。
更新内容
- 新增插件系统(FuckETS.PluginSdk)
- 行为插件与解析插件两类;
.fep插件包(plugin.json清单 + 插件程序集),启动时自动扫描程序目录plugins\,主界面「插件管理…」可查看 / 启停 / 加载 / 移除 - 钩子覆盖扫描、Part 识别、解析、结果展示、PDF 导出全流程;按优先级链执行,单个插件异常被隔离记录,不影响主流程
- 主界面新增「解析插件」下拉框:选择持久化,选中插件失效时自动回退内置插件,无可用解析插件时禁用解析按钮
- 行为插件与解析插件两类;
- 内置广东高中解析插件:原主程序内的 Part 识别与答案解析逻辑迁移为内置插件,解析输出与 v2.0.1 完全一致;内置插件不可移除(可禁用)
- 新增配套:示例插件(行为 / 解析各一,
examples\)、.fep打包脚本scripts\pack_fep.ps1、插件开发文档docs/PLUGIN_SDK.md - 插件启用状态与所选解析器持久化至
%APPDATA%\FuckETS\plugins.json - 框架程序集版本号同步更新为 v2.1.0
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.1.0.zip(约 78 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.1.0.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
FuckETS v2.0.1
FuckETS v2.0.1 修复版
紧急修复:作业标题获取不到的问题。
更新内容
- 修复:以共享读方式读取 E听说 日志文件,解决「E听说 客户端正在实时写入今天的日志文件时,导致取不到最新作业标题」的问题(原实现独占读取遇文件锁会整份跳过)。
- 框架程序集版本号同步更新为 v2.0.1。
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.0.1.zip(约 78 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.0.1.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
FuckETS v2.0.0
FuckETS v2.0.0 重构版
本版本为基于 .NET 8 + WPF 的完整重构,主版本号由 1.x 提升至 2.x。
⬇️ 下载(两种打包方式,请按需选择其中一个)
1. 自包含版(推荐,免装环境)
- 下载:FuckETS_win-x64_self-contained_v2.0.0.zip(约 78 MB)
- 已内置 .NET 8 运行时,无需安装任何环境,解压后运行 FuckETS.exe 即可
2. 框架依赖版(体积小,需装运行时)
- 下载:FuckETS_win-x64_framework-dependent_v2.0.0.zip(约 13 MB)
- 需要目标机器已安装 .NET 8 桌面运行时(Desktop Runtime),否则运行时报缺少组件
- .NET 8 Desktop Runtime 下载地址:
两个 zip 功能完全相同,仅打包方式 / 运行环境要求不同。不确定时下载自包含版即可。
技术栈迁移
- 由 Python + Tkinter 迁移为 C# / .NET 8 + WPF
- 采用 Models / Services / UI 三层架构
- 后台任务使用 async/await,界面不阻塞
功能与说明
- 作业扫描:读取 E听说 作业文件夹并解析作业标题
- 答案解析:PartA(模仿朗读)/ PartB(角色扮演)/ PartC(故事复述),按 content.json 结构与特征自动识别
- 结果展示:分行走色(标题 / Part / 问题 / 候选答案 / 信息 / 正文)
- PDF 导出:QuestPDF 生成 A4 PDF,支持正文字号、标题字号、页边距、行距等设置(JSON 持久化到 %APPDATA%\FuckETS\settings.json),按作业标题自动预填文件名
- OOBE 初始设置向导:免责声明(含倒计时)、安装目录获取方式、完成后写入注册表(HKCU\Software\FuckETS)
- 日志:全程写入 %APPDATA%\FuckETS\logs,便于问题定位
运行环境
- Windows 10 / 11 64 位
- 自包含版:无需任何预装
- 框架依赖版:需安装 .NET 8 桌面运行时(见上方下载地址)
FuckETS v1.0.3
FuckETS v1.0.3 更新日志
新增功能
setup.cmd构建完成后自动将dist目录打包为FuckETS.zip,方便分发
Bug 修复
- 修复 PDF 生成时中文字体缺失会静默回退到 Helvetica 导致中文乱码的问题
- 修复 PDF 输出中段落换行符丢失的问题
- 修复 PDF 错误信息仅输出到控制台、用户无法看到的问题
- 修复 HTML 标签正则
<.*?>可能误匹配非标签内容的问题 - 修复多线程环境下
current_output读写竞争的问题 - 修复 ReportLab 内容未转义导致潜在标签冲突的问题
代码重构
- 提取公共行分类逻辑
classify_line()到utils.py,消除app.py与pdf_generator.py中的重复代码 generate_pdf()返回值改为tuple[bool, str],支持传递错误详情到 GUI 层
打包
- 新增
.mimocode/到.gitignore
FuckETS v1.0.2
本次更新内容
- 修复 PDF 生成崩溃 :对所有传入 PDF 的文本做 XML 转义,解决含 < 、 > 、 & 等特殊字符的内容导致 PDF 生成失败的问题
- 修复线程安全隐患 :后台解析线程不再读取共享变量,改为通过参数传递,避免用户在解析过程中切换文件夹导致数据错乱
- 修复 HTML 标签残留 :PartA/PartC 解析结果不再遗留 HTML 标签名,改用正则彻底清除标签
- 统一代码结构 :抽取行分类逻辑为公共函数,合并 PartA/PartC 重复解析代码