微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python mistune 模块-Renderer() 实例源码

Python mistune 模块,Renderer() 实例源码

我们从Python开源项目中,提取了以下5代码示例,用于说明如何使用mistune.Renderer()

项目:pony    作者:Eastwu5788    | 项目源码 | 文件源码
def article_detail_handler(request, article_id):
    account = request.Meta["user_info"]
    result = dict()

    renderer = mistune.Renderer(hard_wrap=True, parse_inline_html=True)
    markdown = mistune.Markdown(renderer=renderer)

    article = BlogArticle.query_article_by_id(article_id)
    article["content"] = markdown(article["content"])
    article["comment_list"] = BlogComment.query_comment_list(article_id, account.id if account else 0)
    result["article"] = article

    if account:
        article["Meta_info"]["liked"] = 1 if BlogLike.query_like_blog(account.id, article_id) else 0
        result["user_info"] = UserInfo.query_format_info_by_user_id(request.Meta["user_info"].id)

    # ?????? ????????????????????
    author_id = article["user_info"]["id"]
    if not account or author_id != account.id:
        BlogArticleMeta.change_Meta_record(article_id, author_id, ["hit"])
        # ????
        BlogArticle.query_article_by_id(article_id, False)

    return render(request, "article/detail.html", result)
项目:pony    作者:Eastwu5788    | 项目源码 | 文件源码
def edit_article_handler(request, article_id):
    """
    ???? ????
    """
    result = base_result()
    user_id = request.Meta["user_info"].id

    if article_id != "0":
        result["data"] = BlogArticle.query_article_by_id(article_id)

        renderer = mistune.Renderer(hard_wrap=True, parse_inline_html=True)
        markdown = mistune.Markdown(renderer=renderer)

        result["mark_down"] = markdown(result["data"]["content"])
    else:
        result["mark_down"] = None
        del result["data"]

    result["kind_list"] = BlogKind.query_user_kind(1)
    result["user_info"] = UserInfo.query_format_info_by_user_id(user_id)

    return render(request, "manage/edit.html", result)
项目:pony    作者:Eastwu5788    | 项目源码 | 文件源码
def markdown_engin(ori_str=""):
    renderer = mistune.Renderer(hard_wrap=True, parse_inline_html=True)
    markdown = mistune.Markdown(renderer=renderer)
    return markdown(ori_str)
项目:mkaestatic    作者:michibo    | 项目源码 | 文件源码
def get_markdown_renderer( url_transform ):
    ''' This function returns a markdown renderer which transforms 
        URLs according to the relative paradigm of mkaestatic.
    '''

    class MyRenderer( mistune.Renderer ):
        def link(self, link, title, text):
            link = url_transform(link)
            return super(MyRenderer, self).link(link, text)

        def image(self, src, alt_text):
            src = url_transform(src)
            return super(MyRenderer, self).image(src, alt_text)

    return mistune.Markdown(renderer=MyRenderer(escape=True, use_xhtml=True))
项目:cb-swagger    作者:couchbaselabs    | 项目源码 | 文件源码
def __init__(self, renderer=None, inline=None, block=None, **kwargs):
        if not renderer:
            renderer = Renderer(**kwargs)
        else:
            kwargs.update(renderer.options)

        super(Markdown, self).__init__(
            renderer=renderer, inline=inline, block=block)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐