python - 在自定义角色中传递给 inliner.parse() 的参数是什么
问题描述
我正在定义我的自定义角色,它允许 :ref: 标记在其中。该角色将按如下方式使用:
myrole:`some_text |SUBS| more_text`
一个函数替换 |SUBS| 经过
:ref:`some_target`
所以我最终得到以下字符串
some_text :ref:`some_target` more_text
我的 python 代码在下面,我不确定如何为 inliner.parse() 函数设置 lineno、memo 和 parent 参数
from docutils import nodes
from docutils.parsers.rst import Directive
from sphinx import addnodes
def myrole(role, rawtext, text, lineno, inliner, options={}, content=[]):
app=inliner.document.settings.env.app
#the below function replaces |SUBS| with the :ref: markup
new_string=process_subs(text)
nodelist,_=inliner.parse(new_string,lineno,memo,parent)
return nodelist, []
def setup(app):
app.add_role('myrole', myrole)
解决方案
推荐阅读
- algorithm - 绘制给定区域的像素圆
- .htaccess - 使公共域名只能从内部网络访问
- python - ImportError:没有名为 build_lib 的模块
- php - 跳过数据库中存在的实体
- javascript - 为什么 nvm (for windows) 不工作,并且无论何时运行它都会给出错误消息?
- html - 如何处理邮件签名中的动态图像
- sql - 如何将 ISNULL() 函数与 join 一起使用
- c++ - 从另一个文件夹配置时,Automake 使用源的绝对路径
- python-3.x - 当在 ODOO 12 中创建模型 B 的新实例(模型 A 具有 many2one 字段)时,如何更改模型 A 中的布尔值?
- java - 如何让后台任务在地图上移动标记