我一直在尝试在我的Jekyll Code Prettify中实施 blog 。我遵循了一些指南并且能够实现它,但它并不理想。这就是我所做的:
1 - 我前往_includes
并在head.html
中添加了必要的文件:
森伯斯特主题:
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?autoload=true&skin=sunburst&lang=css" defer="defer"></script>
主题的CSS文件(它位于GitHub上的css
文件夹中):
<link rel="stylesheet" href="/css/prettify.css" rel= 'stylesheet' type='text/css'>
2 - 例如,我使用了标记<pre class= "prettyprint"></pre>
来测试它。正如您在此post中看到的那样(代码块位于页面底部),它确实有效。如果您注意到,您会看到<iostream>
丢失,因为我使用了<pre></pre>
,因此它会看到<>
个字符,将其视为HTML并且不会显示<iostream>
。这是它的外观:
我可以使用HTML实体来修复它,但这并不理想。我已经搜索了2个小时,但无法找到可靠的来源来解决这个问题。
所以我的问题是:
是否可以使用``而不是<pre></pre>
使标记下的 Code Prettify 工作?如果没有,是否有另一种方法在Jekyll中实现它?还是让它更容易使用?如果这些都不可能,是否有更好的替代Jekyll支持Code Prettify
?
如果您需要查看其他文件,请检查我的repository。
答案 0 :(得分:2)
使用Jekyll,您可以使用两种highligting方法:
在_config.yml
中,设置:
kramdown:
input: GFM
突出显示您的代码:
``` c
include <iostream>
using namespace std;
int main () {
cout << "and then there were none" << endl;
return 0;
}
```
{% highlight c %}
include <iostream>
using namespace std;
int main () {
cout << "and then there were none" << endl;
return 0;
}
{% endhighlight %}
样式来自_scss/_syntax-highlighting.scss
。
答案 1 :(得分:-1)
我目前用于代码突出显示的插件是&#34; jekyll-rouge&#34;,它支持&#39;&#39;&#39;&#39;风格降价很好: