-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Contribution Guide 贡献指南
Byaidu edited this page Dec 29, 2024
·
2 revisions
感谢您对本项目的兴趣!在您开始贡献之前,请花一些时间阅读以下指南,确保您的贡献能够顺利被接受。
- Fork 本仓库并克隆到本地。
- 创建新分支:
git checkout -b feature/<feature-name>
。 - 进行开发并确保代码符合要求。
- 提交代码:
git add . git commit -m "<语义化提交信息>"
- 推送到您的仓库:
git push origin feature/<feature-name>
。 - 在 GitHub 上创建 PR,并填写详细说明。
- 确保通过所有自动化检查。
-
工作流程
- 请在
main
主分支上创建 fork,并在 fork 的分支上进行开发。 - 提交 Pull Request (PR) 时,请对提交的内容进行详细说明。
- 如果 PR 没有通过自动化检查(提示
checks failed
和红色叉号标记),请查看相应的details
并修改提交内容,确保新的 PR 可以通过自动化检查。
- 请在
-
开发和测试
- 使用
pip install -e .
命令进行开发和测试。
- 使用
-
代码格式化
- 配置
pre-commit
工具,启用black
和flake8
进行代码格式化。
- 配置
-
依赖更新
- 如果引入了新的依赖,请及时更新
pyproject.toml
文件中的依赖列表。
- 如果引入了新的依赖,请及时更新
-
文档更新
- 如果添加了新的命令行选项,请同步更新多语言版本的
README.md
文件中的命令行选项列表。
- 如果添加了新的命令行选项,请同步更新多语言版本的
-
提交信息
- 使用 语义化提交信息,例如:
feat(translator): add openai
。
- 使用 语义化提交信息,例如:
-
编码风格
- 请确保提交的代码符合基本的编码风格规范。
- 变量命名请使用下划线或驼峰命名法。
-
文档排版
-
README.md
文件的排版请遵循 中文文案排版指北。 - 确保英文和中文文档始终保持最新状态,其它语言文档为可选更新。
-
-
代码实现
- 在
translator.py
文件中基于BaseTranslator
或OpenAITranslator
添加新的类。
- 在
-
功能更新
- 更新
gui.py
和converter.py
中的翻译服务列表。
- 更新
-
文档更新
- 更新多语言版本的
README.md
文件中的翻译服务列表。
- 更新多语言版本的
- backend.py: 提供 HTTP API。
- cache.py: 提供翻译缓存。
- converter.py: 解析并翻译文档,并对翻译结果进行排版。
-
doclayout.py: 提供
doclayout
模型。 - gui.py: 提供 GUI 界面。
- high_level.py: 对文档进行预处理和后处理。
- pdf2zh.py: 提供命令行工具。
- pdfinterp.py: 解析指令流。
- translator.py: 提供翻译接口。
如有任何问题,请通过 Issue 或 Telegram Group 提交反馈。感谢您的贡献!