使用highlight.js突出显示代码片段

时间:2018-06-07 12:51:33

标签: html css reveal.js highlight.js

我在reveal.js幻灯片中使用highlight.js,我想知道如何突出显示代码片段。我知道我可以使用mark标签,但我想知道是否有其他方法可以更改文字颜色而不是背景。

我使用data-noescape以便在代码块中使用HTML标记,如以下示例所示:

<section>
  <pre><code class="haskell" data-trim data-noescape>
    double x = 2 * x
  </code></pre>
  <pre><code class="haskell" data-trim data-noescape>
    <mark>double x = 2 * x</mark>
  </code></pre>
  <pre><code class="haskell" data-trim data-noescape>
    <font color="red">double x = 2 * x</font>
  </code></pre>
  <pre><code class="haskell" data-trim data-noescape>
    Prelude> double x = 2 * x
  </code></pre>
</section>

下图显示了上述代码产生的内容。

result

第一个代码块是突出显示的代码,没有任何修改。

第二个块使用mark标签,但我发现它们使代码难以阅读,因为它保留了突出显示的颜色,有时候它们太接近背景颜色。有没有办法改变mark标签内所有文字的颜色?

第三个代码块是尝试将一行代码的文本更改为红色,但请注意,高亮显示文本的颜色再次保留,以便不会将所有内容都变为红色。

第四个代码块是一个有点相关的问题。我想知道是否有办法忽略部分代码,以便保留剩余代码的语法。在这个例子中,我在交互式REPL会话中显示了一行代码,因此我想忽略提示符(Prelude>)并以与以下相同的方式为行的其余部分着色。它会没有提示,也就是说它会在第一个代码块中被着色。

0 个答案:

没有答案