如何解决带有 ReadTheDocs 主题的 Sphinx 文档:文本块包装
在开发 Python 包时,我正在编写带有 ReadTheDocs theme 的 Sphinx 文档,稍后我将在我的 GitHub 页面上发布该文档。
我的问题是我想将另一个(纯文本)文件的内容包含到一个 .rst
文件中,但将行包起来。
我发现一个非常相似的问题已经被问过和回答过。
How to wrap a long literal block in reStructuredText?
我已经尝试了接受的答案,但它对我不起作用……或者我做错了……
我在关注this article。
明确:
我在 conf.py
中有以下部分:
# Add any paths that contain custom static files (such as style sheets) here,# relative to this directory. They are copied after the builtin static files,# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
html_css_files = [
'custom.css',]
我在包含 3 行的 custom.css
下添加了 _static
:
pre {
white-space: pre-wrap;
}
当我尝试将 MIT 许可证文本(位于存储库根目录的 LICENSE 文件中)包含到 .rst
文件之一中时,问题出现了:
.. literalinclude:: ../../LICENSE
:language: text
我想要这样的效果:
https://snakemake.readthedocs.io/en/stable/project_info/license.html
但是,在我的情况下,文本没有换行,文本块底部有一个水平滚动条,如下面的屏幕截图所示:
这一定是可能的,因为 snakemake 开发人员为他们的文档实现了它,我只是不知道 - 如何(?)
在下面回复史蒂夫的评论:
我认为我的代码没有被应用 - 我检查了构建网页背后的源代码,唯一带有 pre
的元素是:
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>Copyright 2021 ***
Permission is hereby granted,free of charge,to any person obtaining a copy of this software and associated documentation files (the "Software"),to deal in the Software without restriction,including without limitation the rights to use,copy,modify,merge,publish,distribute,sublicense,and/or sell copies of the Software,and to permit persons to whom the Software is furnished to do so,subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS",WITHOUT WARRANTY OF ANY KIND,EXPRESS OR IMPLIED,INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,DAMAGES OR OTHER LIABILITY,WHETHER IN AN ACTION OF CONTRACT,TORT OR OTHERWISE,ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</pre></div>
在源代码之上,唯一的 css
加载是:
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
所以我的文件也不在那里...
解决方法
我想达到 snakemake 文档的效果。
仔细检查后,我注意到他们的 LICENSE 文件本身包含自定义换行符;将此类文件包含到 .rst 中确实会产生一个很好的“包装”文本(即没有水平滑块)。
因此,根本不需要任何 css 样式。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。