「Hexo」使用 Google Prettify 高亮代码

Hexo 的默认代码高亮使用 highlight.js,但是它对 c++ 支持十分不好,导致一些代码无法高亮,我尝试使用 prismpygments,均无效,最后使用了 Google Prettify 来高亮代码。

由于关闭 Hexo 的高亮会引发一些奇怪的 bug,我们这里就不关闭,而采取替换的方法。

引入

采用 bootcss 的 cdn,并引入。

然后在 color-themes-for-google-code-prettify 找到一个高亮主题并下载,我这里下的是 tomorrow.min.css

1
2
<script src="//cdn.bootcss.com/prettify/r298/prettify.min.js" type="text/javascript"></script>
<link rel="stylesheet" href="<%- theme.root_url %>/tomorrow.min.css" type="text/css">

渲染

由于没有禁用 Hexo 的默认高亮,先删去主题里的高亮,然后添加以下代码

1
2
3
4
5
6
<script>
$(window).load(function(){
$('pre').addClass('prettyprint');
prettyPrint();
})
</script>

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×