sphinx_gallery.block_parser#

BlockParser 将非 .py 源文件划分为代码块和标记文本块。

#

class sphinx_gallery.block_parser.BlockParser(source_file, gallery_conf)[source]#

一个解析器,将源文件分成代码块和标记文本块。

使用 pygments 确定源语言并识别注释块。

参数:
  • source_file (str) – 具有与随后解析的文件兼容后缀的文件名

  • gallery_conf (dict) – 包含 Sphinx-Gallery 的配置。

extract_file_config(content)[source]#

从文档字符串中提取特定于文件配置。

remove_config_comments(code_block)[source]#

返回code_block的内容,其中已删除特定于文件配置的注释。

删除行注释字符后的模式为 sphinx_gallery_[option] = [val] 的注释行,但会保留周围的空行。

参数:

code_block (str) – 代码段。

remove_ignore_blocks(code_block)[source]#

返回code_block的内容,其中已删除被忽略的区域。

忽略块以 ?? sphinx_gallery_start_ignore 开头,以 ?? sphinx_gallery_end_ignore 结尾,其中 ?? 是活动语言的行注释标记。这些行和它们之间的任何内容都将被删除,但会保留周围的空行。

参数:

code_block (str) – 代码段。

split_code_and_text_blocks(source_file, return_node=False)[source]#

返回包含源文件分成代码块和文本块的列表。

参数:
  • source_file (str) – 源文件的路径。

  • return_node (bool) – 被忽略;不支持返回 ast 节点

返回值:

  • file_conf (dict) – 在源文件注释中给出的特定于文件的设置,如下所示: # sphinx_gallery_<name> = <value>

  • blocks (list) – (label, content, line_number) 列表,其中每个元素都是一个元组,包含标签(‘text’ 或 ‘code’)、块的相应内容字符串和前导行号。

  • node (None) – 不支持返回 ast 节点。