感谢您愿意帮助改进本项目。这个项目面向真实用户,请尽量让每一次提交都保持清晰、可验证,并尊重国家中小学智慧教育平台及相关权利人的资源版权。
- 提交问题前请搜索已有 Issue 和 Pull Request,避免重复讨论。
- 发现程序无法运行、下载失败或界面异常时,请提交 🐛 Bug 报告,并按模板补全相关信息,最好附上错误信息截图,以方便定位问题。
- 有新功能或改进建议时,请提交✨ 功能建议,先说明您遇到的实际问题,再描述期望做法,这样更容易判断改动是否适合放进本项目。
- 不要在 Issue、Pull Request、提交信息或代码等地方公开 Access Token。
本项目使用 Python 3.10 或更高版本(X | Y 形式的类型注解仅在该版本及以后的版本可用)。
# 克隆项目
git clone https://github.com/happycola233/tchMaterial-parser.git
cd tchMaterial-parser
# 安装依赖
python -m pip install .
# 启动应用
python ./src/main.pyNote
本工具使用 Tkinter 构建图形界面。Windows 与 macOS 的官方 Python 通常已自带,而部分 Linux 发行版需要单独安装,例如在 Debian/Ubuntu 上执行 sudo apt install python3-tk。
此外,精简安装的 Linux 系统可能缺少中文字体与 Emoji 字体,此时界面上可能会出现方框等异常现象。可按需安装,例如在 Debian/Ubuntu 上执行 sudo apt install fonts-noto-cjk fonts-noto-color-emoji。
提交 Pull Request 前,请进行测试与检查:
# 安装开发用依赖
python -m pip install pytest flake8
# 运行测试与检查
python -m pytest
python -m flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics当前 CI 的静态检查只拦截语法错误、未定义变量等确定性问题,不把代码风格与中文注释行长等作为强制门槛。
格式化时请遵循仓库现有风格,如使用 4 空格缩进、snake_case 命名约定、字符串默认使用双引号 "、不出现尾随空格等。
修改打包配置、资源文件或程序入口时,请额外验证 PyInstaller 构建:
python -m pip install pyinstaller
pyinstaller ./tchMaterial-parser.spec构建产物位于 dist 目录。
- 本工具在设计上支持 Windows、Linux、macOS 操作系统,编写代码时应确保跨平台兼容性。
- 命名要准确表达意图;重命名变量、函数或模块时,请同步更新相关引用。
- 意图不明显的业务逻辑可以添加简洁中文注释;能从代码本身读懂的内容一般不需要注释。
- 不要为了理论上不可能发生的内部状态添加复杂兜底逻辑,校验应主要放在用户输入、文件系统、网络请求、外部 API 等系统边界。
- 涉及 UI 的改动,需要同时检查浅色模式与深色模式。
- 界面文案应直接面向用户,避免出现描述需求、规则或适用条件本身的元语言。
- 修改代码后,确保代码中未出现明文 Access Token 等敏感信息,且已执行必要的测试与检查。