将构建sphinx文档添加到Python轮

问题描述 投票:1回答:1

我正在创建一个包装(并捆绑)DLL的Python包。我打算在车轮内发布基于预构建的基于sphinx的文档,并且可能添加一个入口点以方便启动浏览器来查看它们。

经过一些谷歌搜索后,我没有找到有关这种方法的更多信息。

这不是推荐的方法吗?请注意,这适用于不供公众使用的内部包,我希望包用户始终拥有适用于DLL版本的文档版本。

我正在寻找的是一种通过在setup.py文件中引用它们来包含构建的html文件的方法。我知道我可以在package_data中对include_package_data使用setupsetup.py关键字参数,但我相信这些与包名称有关,所以我认为使用这种方法对于这个应用程序来说会很混乱。

如果这不是正确的方法,我很想听到更好的选择!

python python-sphinx
1个回答
0
投票

我已经找到了一个解决方案,似乎使用data_files工作正常,但它是丑陋的罪恶。解决方案基于这个answer

在我的setup.py我有这个:

def get_data_files(docs_root):
    data_files = []
    for dirname, dirs, files in os.walk(docs_root):
        for f in files:
            data_files.append(os.path.join(dirname, f))
    return data_files

我将其称为data_files关键字参数的一部分:

data_files = [('Lib/site-packages/<module_name>/docs', get_data_files('module_name/docs'))],

我对此的可移植性有所保留,但它似乎是唯一适用于我的可行选项,允许干净卸载。

© www.soinside.com 2019 - 2024. All rights reserved.