使用redcarpet在jekyll中突出显示语法

时间:2014-12-08 20:14:37

标签: css ruby syntax-highlighting jekyll redcarpet

我正在尝试将代码突出显示为使用jekyll构建的简单博客。我希望能够在markdown中编写的帖子中进行代码突出显示,因此我启用了redcarpet作为标记语言。这很好用,代码在<pre></pre>标签中格式化,代码的所有各种元素都得到相应的类。例如

<span class="n">function</span>
<span class="n">saySomething</span>
<span class="p">()</span>
<span class="p">{</span>

etc.

这很棒但是这并没有给我们实际的突出显示(颜色)。所以我想必须有一些css准备好复制和粘贴,这实际上是不同代码元素的样式。或者我完全错过了什么?

我查看了一些突出显示prettifyprism等库的代码,但这些代码在浏览器中使用javascript进行自己的格式化。但由于redcarpet已经完成了格式化代码的繁重工作,因此不必再进行此操作。

任何提示?

3 个答案:

答案 0 :(得分:5)

你需要一些CSS魔法。使用this onepick one from here

答案 1 :(得分:3)

您可以使用荧光笔本身创建CSS

rougify style > rouge.css

或者

coderay stylesheet > coderay.css

答案 2 :(得分:0)

我喜欢分享所面临的解决方案,并且花了很多时间摆脱了这个问题。 Jekyll中的默认语法突出显示效果很差。就像大卫说的那样,您确实需要一些CSS魔术。首先检查this site,了解如果您遵循this要点来解决语法突出显示问题,将会得到什么结果。