使用 asciidoctor 产生的丰富的语法高亮
Using the richness of syntax highlighting produced by asciidoctor
Asciidoctor 将处理文件 simple.adoc
包含:
:source-highlighter: pygments
[source,java]
Foo bar = baz + qux;
使用 pygments 生成许多语法类别
我们可以确认生产出来的HTML确实很丰富:
<div class="content">
<pre class="pygments highlight">
<code data-lang="java"><span class="tok-n">Foo</span>
<span class="tok-n">bar</span> <span class="tok-o">=</span>
<span class="tok-n">baz</span> <span class="tok-o">+</span>
<span class="tok-n">qux</span><span class="tok-o">;</span>
</code></pre>
</div>
但是默认样式表很难区分语法类别。
如何自定义输出,也许是通过插入新的 CSS 样式表或修改现有样式表中的值?
更新
(感谢 LightGuard)如果我们保存文件 simple-docinfo.html
,其名称与我们正在处理的文件匹配,但具有后缀 -docinfo
和扩展名 .html
,包含一行:
<link rel="stylesheet" href="basejump.css">
然后运行asciidoctor simple.adoc
,我们应该会看到basejump.css
出现在simple.html
中。但是没有这样的 basejump.css
出现。为什么?
您可以在另一个样式表中进行更改并使用 docinfo 文件加载它。
2015 年 2 月 25 日更新:您需要在文件头或带有 -a docinfo
[ 的命令行中包含 :docinfo:
属性=12=]
Asciidoctor 将处理文件 simple.adoc
包含:
:source-highlighter: pygments
[source,java]
Foo bar = baz + qux;
使用 pygments 生成许多语法类别
我们可以确认生产出来的HTML确实很丰富:
<div class="content">
<pre class="pygments highlight">
<code data-lang="java"><span class="tok-n">Foo</span>
<span class="tok-n">bar</span> <span class="tok-o">=</span>
<span class="tok-n">baz</span> <span class="tok-o">+</span>
<span class="tok-n">qux</span><span class="tok-o">;</span>
</code></pre>
</div>
但是默认样式表很难区分语法类别。
如何自定义输出,也许是通过插入新的 CSS 样式表或修改现有样式表中的值?
更新
(感谢 LightGuard)如果我们保存文件 simple-docinfo.html
,其名称与我们正在处理的文件匹配,但具有后缀 -docinfo
和扩展名 .html
,包含一行:
<link rel="stylesheet" href="basejump.css">
然后运行asciidoctor simple.adoc
,我们应该会看到basejump.css
出现在simple.html
中。但是没有这样的 basejump.css
出现。为什么?
您可以在另一个样式表中进行更改并使用 docinfo 文件加载它。
2015 年 2 月 25 日更新:您需要在文件头或带有 -a docinfo
[ 的命令行中包含 :docinfo:
属性=12=]