Skip to content

贡献芒果工具箱

我们欢迎任何人向工具箱提交贡献,无论是文档更新、错误修复还是仅提交issue。

项目结构

芒果工具箱的当前版本于GitHub仓库开源,仓库目前拥有masterdevgh-pages三个分支。

准备贡献时,你应该基于dev分支的目前状况进行贡献,因为dev分支总是拥有比master分支更新的commit,包含了新版本中已经在开发或已经开发完成的新的特性与错误修复。

每当一个新的版本发布时,master分支会与dev分支同步,然后分发一个新的工具箱版本。这意味着master分支总是可用的正式版本的代码,而dev分支是实验性的代码。

gh-pages分支是基于 MkDocs 的工具箱文档静态站点,已经停止维护,曾经由MkDocs自动生成并部署。

综上所述,你应该基于dev分支的目前状况进行贡献。

从源码运行工具箱

在 PySide6 的基础上,工具箱还使用了 QFluentWidgets 与 QFluentWidgets Pro,后者需要许可证才能使用其中的组件。不过没关系,工具箱的本体尽可能避免了使用 Pro 组件,您可以使用测试模式启动项目来直接启动工具箱本体。

调试模式

查阅仓库中的 FanWeather.py,只要你会一点点 Python,就可以知道如何在测试模式下启动项目啦。

调试模式下,工具箱会跳过登录窗口而直接显示主窗口,用户的身份是一个「测试用户(Test User)」。在未来的用户系统的进一步更新中,测试模式也将无法使用任何在线用户系统有关的功能。

工具箱的主窗口目前没有使用 Pro 组件,因此可以在测试模式下正常使用;但是,许多工具使用了 Pro 组件,启动它们将会导致进程立刻结束。

您可以在您的 IDE 中专门配置一个运行配置来区分测试模式与普通模式。

测试模式避免了强制要求提供许可证的过程,但您依然可以通过环境变量的方式引入 Pro 许可证,从而运行使用了 Pro 许可证的工具。请参阅 FanWeather.py 的代码来了解。

普通模式

FanWeather.py 中查看可知,普通模式需要导入 main.py ,但仓库中并没有这个东西。

所以普通模式就挂了,用调试模式吧()

代码要求

你正在考虑写谁的代码?

这里的代码要求,是针对你想要为工具箱本体贡献代码,而不是你想要写一个工具!

写个工具而已需要什么代码要求?只要有个工具的结构,随便写写不也就行了嘛真的是QwQ

我们对代码风格不做严格限制,最好能够遵循PEP8(Python风格指南),且避免出现拼音命名等让人忍俊不禁的情况。

然后是一些细节:如果你为工具箱本体添加了新的模块、特性等,请记得多多记录日志,参见这里来查看工具箱对日志等级的规定。

贡献者

页面历史

License: GPL-v3. 芒果工具箱与其有关文档均为GPL-v3协议开源。