我正在制作一个框架,让开发人员使用reStructuredText描述他们的包.我想将reStructuredText解析为HTML,以便我可以在GUI中显示它.
我熟悉优秀的Sphinx,但我从来没有解析过reStructuredText.我想象了一个函数,它接受一串reStructuredText,可能还有几个额外的参数,并返回一个HTML字符串.
所以我查看了Docutils,它负责解析reStructuredText.我根本无法理解如何找到这个功能.网上的文档很多.该docutils.parsers.rst模块中的许多功能似乎都面向文件名.我没有文件名!我只是处理字符串.
我尝试创建一个Parser和一个Document并使用该parse方法,但我只是得到一个错误的.tab_width设置错误.
有谁知道如何将reStructuredText解析为HTML?
我使用以下方法将包上传到PyPi:
python setup.py register -r pypi
python setup.py sdist upload -r pypi
Run Code Online (Sandbox Code Playgroud)
我正在尝试修改decsription,我写道(请不要编辑以下代码片段的格式,我是为了演示我的问题而制作的):
**my plugin**
This plugin enables you to ... For example:
```python
@attr(section='MySection', id=1)
def test_function(self):
"""
Bla bla bla
"""
pass
```
Run Code Online (Sandbox Code Playgroud)
但是,文本显示为原样,没有降价格式.我究竟做错了什么?
我很快就开始了一个开源Python项目,我正在尝试提前决定如何编写我的文档字符串.显而易见的答案是使用reStructuredText和Sphinx与autodoc,因为我真的喜欢简单地在我的文档字符串中正确记录我的代码然后让Sphinx为我自动构建API文档.
问题是它使用的reStructuredText语法 - 我认为它在呈现之前是完全不可读的.例如:
:param path: The path of the file to wrap
:type path: str
:param field_storage: The :class:`FileStorage` instance to wrap
:type field_storage: FileStorage
:param temporary: Whether or not to delete the file when the File instance
is destructed
:type temporary: bool
你必须真正放慢脚步,花一点时间才能理解这种语法混乱.我更喜欢谷歌方式(谷歌Python风格指南),与上面的对应方式如下:
Args:
path (str): The path of the file to wrap
field_storage (FileStorage): The FileStorage instance to wrap
temporary (bool): Whether or not to delete the file when the File … python documentation restructuredtext docstring python-sphinx
我想使用轻量级标记语言在我的大学课堂上做笔记.
我选择的编辑器是gedit,我找到了Gedit的reStructuredText工具,它将运行reStructuredText处理器并在gedit的窗格中呈现HTML.这很棒,80%的路在那里.
但对于我的许多课程,我需要在笔记中包含数学方程式或希腊字符.虽然我对LaTeX不是很熟悉,但我的理解是它具有这些功能.
如何在reST文档中使用LaTeX?是否需要将reST文档处理为LaTeX,然后将其呈现为HTML,还是有更好的方法?降价会让这更容易吗?如有必要,我可以修改gedit插件.
最后,有人这样做吗?在纯文本编辑器中获取课堂笔记的任何其他建议?
谢谢!
我收到了警告:
WARNING: document isn't included in any toctree
Run Code Online (Sandbox Code Playgroud)
对于文档中存在的文件,因为它们已被明确包含在内.所以我有索引文件:
.. toctree::
:maxdepth: 2
pages/0010-foo
pages/0020-bar
Run Code Online (Sandbox Code Playgroud)
在0020-bar.rst文件中,我特别包含了许多其他文件,如:
.. contents:: :local:
.. include:: /pages/reference-architecture/technical-considerations/0070-baz.rst
Run Code Online (Sandbox Code Playgroud)
但是当我构建项目时,我仍然会收到警告:0070-baz.rst不在任何toctree中,如:
/home/nick/Documents/myProject/docs/pages/reference-architecture/technical-considerations/0070-baz.rst:: WARNING: document isn't included in any toctree
Run Code Online (Sandbox Code Playgroud)
奇怪的是我可以看到输出中的内容.这是正常的吗?对于明确包含但不包含在toctree中的文件,是否始终显示此警告?
谢谢!
我有一个模块,errors.py其中定义了几个全局常量(注意:我知道Python没有常量,但我已经使用UPPERCASE按惯例定义了它们).
"""Indicates some unknown error."""
API_ERROR = 1
"""Indicates that the request was bad in some way."""
BAD_REQUEST = 2
"""Indicates that the request is missing required parameters."""
MISSING_PARAMS = 3
Run Code Online (Sandbox Code Playgroud)
使用reStructuredText如何记录这些常量?正如你所看到的,我已经在他们上面列出了一个文档字符串,但我没有找到任何表明这样做的文档,我只是猜测它.
是否可以在重组文本中查看文本?
例如,<strike>在转换为HTML时呈现为标记的内容,例如:
ReSTructuredText
如何使用reStructuredText创建链接图像?
我发现了
.. image:: /path/to/image.jpg
Run Code Online (Sandbox Code Playgroud)
用于图像和外部超链接
'Python <http://www.python.org/>'_
Run Code Online (Sandbox Code Playgroud)
对于链接,但我不知道如何组合它们或者如果可能的话.
我在PyCharm中有一个文件,它曾经只是一个.txt文件.现在我想使用.rst(reStructuredText).
我知道当我第一次打开没有结尾的文件时,PyCharm会问我是什么类型的文件以及如何解释语法.
我能以某种方式再次打开该对话框,还是可以通过其他方式更改关联?
我正在使用Sphinx autodoc功能根据我的Python库的文档字符串生成文档.
交叉引用的语法可在此处找到
标签必须位于该部分之前,以便允许从文档的其他区域引用该部分.
我所拥有的是我的一个类的.rst(ReStructeredText)文件.它用
.. autoclass:: classname
:members:
Run Code Online (Sandbox Code Playgroud)
为类生成文档.
我的问题是,如何从文档中的另一个.rst文档引用该类的自动生成方法?如果我尝试在方法的文档字符串中放置一个标签,Sphinx会抱怨.如果我尝试在方法标题之前放置一个标签,Sphinx就无法识别它.
有没有一种简单的方法可以做到这一点,或者我是否必须在我的类文件中明确地写入方法名称并在其前面添加标签?
这是一个示例[Python文档2中的参考实现我需要的东西(我假设它使用了autodoc功能,虽然我不确定)