Sphinx扩展以添加警告横幅
sphinx-version-warning的Python项目详细描述
sphinx版本警告是一个Sphinx扩展,允许您在文档顶部显示warning横幅。 横幅将根据显示的版本(使用SemVer)与服务器上的最新版本进行比较来显示。
这个扩展最初是为了与Read the Docsapi兼容而创建的,目前它是唯一支持 (灵感来自https://github.com/rtfd/readthedocs.org/issues/3481#issuecomment-378000845)
它是怎么工作的?
访问中的页面时,请阅读在启用此扩展的情况下生成的文档, 对read-the-docs服务器执行ajax请求,以检索项目的所有active版本。 这些版本与我们正在阅读的版本相比,如果是旧版本, 页面顶部会出现一条警告横幅。
示例
有一个活生生的例子:阅读文档:
安装
只要在virtualenv中运行这个pip命令:
pip install sphinx-version-warning
然后在conf.py中,必须在extensions列表中添加versionwarning.extension。 应该类似于:
extensions = [ 'versionwarning.extension', ]
记住要配置sphinx项目的versionwarning_project_version和versionwarning_project_slug,因为这是正常工作的关键:
versionwarning_project_version = '0.0.1' versionwarning_project_slug = 'sphinx-version-warning'
警告
如果你在“阅读文档”下构建文档, READTHEDOCS_VERSION和READTHEDOCS_PROECT环境变量将被定义,无需定义这些变量, 除非要覆盖默认值。
定制
可以使用sphinx项目的conf.py文件进行一些自定义:
- 版本警告警告类型(字符串)
- 横幅警告的类型(警告、警告或注释)
- 版本警告默认消息(字符串)
- 警告横幅的默认消息
- 版本警告信息(dict)
- 其横幅的版本和消息之间的映射
- 版本警告消息占位符(字符串)
- 要由消息中的版本号链接替换的文本
- 版本警告项目(字符串)
- 读取文档下项目的slug(默认为READTHEDOCS_PROJECT环境变量)
- 版本警告项目版本(字符串)
- 当前文档版本的slug(默认为READTHEDOCS_VERSION环境变量)
- 版本警告API URL(字符串)
- 检索此项目所有版本的API URL
- 版本警告标志HTML(字符串)
- 用于所示标题的HTML代码
- 版本警告横幅ID div(字符串)
- 用于<;div>;作为标题插入的HTML元素ID
- 版本警告车身选择器(字符串)
- jquery选择器在页面中查找body元素,并在横幅前面prepend
如何贡献?
随时欢迎拉取请求!
生成资产
npm install ./node_modules/.bin/webpack
释放
在versionwarning/__init__.py
中增加版本在package.json
中增加版本更新CHANGELOG.rst
更新npm:
$ npm update
编译资源:
$ npm install $ ./node_modules/.bin/webpack
提交更改:git commit -m "Release $NEW_VERSION"
用git标记版本:git tag $NEW_VERSION
将标记推送到github:git push --tags origin
将包上载到pypi:
$ rm -rf dist/ $ python setup.py sdist bdist_wheel $ twine upload dist/*