def changelog_as_markdown():
    'Get the latest changelog entry as hacked up Markdown.\n    '
    rst = get_latest_changelog()
    rst = re.sub(':doc:`/plugins/(\\w+)`', '``\\1``', rst)
    rst = re.sub(':ref:`([^<]+)(<[^>]+>)`', '\\1', rst)
    rst = re.sub('(\\s)`([^`]+)`([^_])', '\\1``\\2``\\3', rst)
    rst = re.sub(':ref:`(\\w+)-cmd`', '``\\1``', rst)
    rst = re.sub(':bug:`(\\d+)`', '#\\1', rst)
    rst = re.sub(':user:`(\\w+)`', '@\\1', rst)
    md = rst2md(rst)
    md = re.sub('\\\\#(\\d+)\\b', '#\\1', md)
    return md
Get the latest changelog entry as hacked up Markdown.
def changelog_as_markdown():
    '\n    '
    rst = get_latest_changelog()
    rst = re.sub(':doc:`/plugins/(\\w+)`', '``\\1``', rst)
    rst = re.sub(':ref:`([^<]+)(<[^>]+>)`', '\\1', rst)
    rst = re.sub('(\\s)`([^`]+)`([^_])', '\\1``\\2``\\3', rst)
    rst = re.sub(':ref:`(\\w+)-cmd`', '``\\1``', rst)
    rst = re.sub(':bug:`(\\d+)`', '#\\1', rst)
    rst = re.sub(':user:`(\\w+)`', '@\\1', rst)
    md = rst2md(rst)
    md = re.sub('\\\\#(\\d+)\\b', '#\\1', md)
    return md