首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Mistune中停用某些Markdown解析规则?

如何在Mistune中停用某些Markdown解析规则?
EN

Stack Overflow用户
提问于 2017-09-13 17:18:08
回答 1查看 65关注 0票数 0

如何在Mistune中停用某些Markdown解析规则

例如,我希望只启用**bold***italic*,并停用所有其他规则解析。

这有可能吗?

EN

回答 1

Stack Overflow用户

发布于 2017-09-13 20:02:46

您需要创建自定义rendererrenderer是一个class,每个rule都是该renderer class的一个method。要拥有自己的规则,您需要覆盖一个方法并使其什么也不做(下面的方法A),或者替换完整的default_rules列表(下面的方法B)

方法A)

覆盖规则方法:Here是规则的完整列表。

例如:

代码语言:javascript
复制
class YourRenderer(mistune.Renderer):
    #example of rule
    def block_code(self, code, lang):
        pass 

renderer = YourRenderer()
markdown = mistune.Markdown(renderer=renderer) # this renderer won't have the block_code rule

方法B)

篡改default_rules数组

renderer有一个自己的属性,叫做default_rules。您只需创建一个自定义渲染器,并根据您的喜好修改该数组。下面是一个示例class,可以帮助您快速入门

代码语言:javascript
复制
class CustomRenderer(InlineLexer):
        # Modify this array as you like
        # you can insert or delete whatever rules it has
        self.default_rules.insert(3, 'some_function')

我没有测试过这个

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46193552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档