【发布时间】:2021-02-19 09:51:59
【问题描述】:
我使用django-pygmentes 来突出显示我的代码块。我正在用 markdown 编写内容并在视图部分将其转换为 HTML。一切都好。现在,我想实现突出显示的一面。 Pygmentes 包需要这样的东西才能应用颜色:
<pre lang="python">...</pre>
但是,这是我在帖子中编写代码块时得到的:
<pre><code clas="language-python">...</code></pre>
这是我的降价:
```python
print('Hey')
因此,Pygments 找不到该元素。有没有办法覆盖任何方法并应用更改?
更新:现在,我已经安装了pygments 并将这个扩展添加到降价扩展中。这是我的降价及其生成的内容:
```{lang="python"}
print('Hello World')
输出:
<pre><code lang="python">
print('Hello World')
</code></pre>
这很棒,但是还没有突出显示.. :(
在运行pygmentize -S default -f html -a .codehilite > styles.css 后,我还链接了经典的styles.css 文件,并且链接正确。
这是我的自定义 markdown 过滤器。问题可能来自这个模块:
from django import template
from django.template.defaultfilters import stringfilter
import markdown as md
register = template.Library()
@register.filter()
@stringfilter
def markdown(value):
return md.markdown(value, extensions=['markdown.extensions.fenced_code', 'markdown.extensions.attr_list'])
【问题讨论】:
标签: python django markdown syntax-highlighting python-markdown