我正在使用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>
太好了,但是还没有高亮显示.. :( 我还在styles.css
运行后链接了经典文件,pygmentize -S default -f html -a .codehilite > 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'])