一直在用Pure Highlightjs插件,然后今天突然就想用 Prism了,小影主题自带Prism.js高亮,不过添加代码的时候还要自己使用语义化的 <pre>
元素和 <code>
元素来标记代码区块,我就直接做了个按钮代替= =
为什么选择 Prism.js ?
- 极致易用
- 引用 prism.css 和 prism.js,使用合适的 HTML5 标签(code.language-xxxx),搞定!
- 天生伶俐
- 语言的 CSS 类是可继承的,所以你只需定义一次就能应用到多个代码片段。
- 轻如鸿毛
- 代码压缩后只有 1.6KB。每添加一个语言平均增加 0.3-0.5KB,主题在 1KB 左右。
- 快如闪电
- 如果可能,支持通过 Web Workers 实现并行。
- 轻松扩展
- 定义新语言或扩展现有语法,或者新增功能都非常简单。
- 丰富样式
- 所有的样式通过 CSS 完成,并使用合理的类名如:.comment, .string, .property 等。
有谁在使用?
许多网站都在使用 Prism,如果你是前端开发者,那你一定十分熟悉这些网站:
连 JavaScript 之父 Brendan Eich 也在个人博客上使用!
如何使用:
你只需要在页面上引入 prism.css
和 prism.js
文件:
<!DOCTYPE html>
<html>
<head>
...
<link href="themes/prism.css" rel="stylesheet" />
</head>
<body>
...
<script src="prism.js"></script>
</body>
</html>
遵循 HTML5 标准,Prism 使用语义化的 <pre>
元素和 <code>
元素来标记代码区块:
<pre><code class="language-css">p { color: red }</code></pre>
添加快捷按钮
将以下代码添加到当前使用主题的functions.php文件中即可。
// 添加代码高亮按钮
function appthemes_add_quicktags() {
?>
<script type="text/javascript">
QTags.addButton( '代码高亮', '代码高亮', '<pre><code class="language-markup">', '</code></pre>\n' );
</script>
<?php
}
add_action('admin_print_footer_scripts', 'appthemes_add_quicktags' );
效果预览
试试吧,真的很棒!
Prism 官网 | 代码示例 | 立即下载 | GitHub
原创文章转载请注明:转载自:使用 Prism.js 实现漂亮的代码语法高亮,并且添加快捷按钮
typecho能用吗?
不清楚
好吧