如何无需自定义扩展,通过Sphinx配置复制指定目录到构建输出?
无需自定义扩展,用Sphinx内置配置即可实现
当然可以!你完全不需要编写自定义扩展,借助Sphinx自带的配置项就能轻松完成整个uimockups文件夹的复制需求。
具体操作步骤:
- 打开你的
docs/conf.py配置文件 - 在文件中添加
html_extra_path配置项,指定要复制的uimockups文件夹路径。由于conf.py位于docs/目录下,你需要用相对路径指向项目根目录下的uimockups:html_extra_path = ['../uimockups'] - 保存配置后重新构建文档,Sphinx会自动将整个
uimockups文件夹(包括所有子文件夹和内部文件)完整复制到HTML构建输出的根目录中——对应到你的需求就是build/development/uimockups(前提是你已经配置了正确的HTML输出目录)。
在architecture.rst中链接静态站点:
完成配置后,你可以直接在architecture.rst里用相对路径链接到UI原型,比如:
查看Mockup 1原型:`Mockup 1入口 <uimockups/mockup1/index.html>`_
如果需要更灵活的HTML样式链接,也可以使用raw指令:
.. raw:: html <a href="uimockups/mockup2/index.html" target="_blank">打开Mockup 2(新窗口)</a>
额外注意点:
- 务必确认
html_extra_path中的路径是相对于conf.py的正确路径,避免出现找不到文件夹的错误 - 这个配置会完整保留原文件夹的结构和内容,完全匹配你希望维持现有组织方式的需求
- 由于
uimockups是静态站点,不需要Sphinx做额外处理,复制后即可直接正常访问
内容的提问来源于stack exchange,提问作者bheklilr
相关产品推荐
相关产品推荐

