使用 Pygments 在 Django 项目中显示 <pre> 中的行号
Showing the line numbers in <pre> in Django project using Pygments
我在我的 Django 项目中使用 Pygments 包。当我尝试在我的模板中呈现代码片段时,它呈现整个数据如下:
模板:
...
{% pygmentify %}
<pre class="{{snippet.lang}}">{{snippet.body}}</pre>
{% endpygmentify %}
...
最终渲染 HTML:
<pre lang="python">
...
<span class="kn">import</span> <span class="nn">hello</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">'hey'</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">test</span><span class="p">():</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">'in the function'</span><span class="p">)</span>
...
</pre>
它实际上没有痛苦。整个代码块被正确突出显示。问题是我也想显示行号。我应该设计它们还是只需要一个简单的 Pygments 配置?
谢谢。
如果您使用的是 django-pygmentify,您可以按照 their docs
中的指示传递关键字参数
{% pygmentify linenos='inline' %}
<pre class="{{snippet.lang}}">{{snippet.body}}</pre>
{% endpygmentify %}
我在我的 Django 项目中使用 Pygments 包。当我尝试在我的模板中呈现代码片段时,它呈现整个数据如下:
模板:
...
{% pygmentify %}
<pre class="{{snippet.lang}}">{{snippet.body}}</pre>
{% endpygmentify %}
...
最终渲染 HTML:
<pre lang="python">
...
<span class="kn">import</span> <span class="nn">hello</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">'hey'</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">test</span><span class="p">():</span>
<span class="nb">print</span><span class="p">(</span><span class="s1">'in the function'</span><span class="p">)</span>
...
</pre>
它实际上没有痛苦。整个代码块被正确突出显示。问题是我也想显示行号。我应该设计它们还是只需要一个简单的 Pygments 配置?
谢谢。
如果您使用的是 django-pygmentify,您可以按照 their docs
中的指示传递关键字参数{% pygmentify linenos='inline' %}
<pre class="{{snippet.lang}}">{{snippet.body}}</pre>
{% endpygmentify %}