基于prismjs的代码语法高亮typecho插件

![29276-5zbuefhvnyw.png](https://www.proyy.com/wp-content/uploads/2020/09/2573411243.png)
基于prismjs的代码语法高亮typecho插件
基于prismjs的代码语法高亮typecho插件,支持众多常见的代码语言高亮显示,共提供11种代码高亮风格自由切换,支持显示代码语言类型、行号,以及支持复制代码到剪切板功能
起始
最初基于 Highlight 插件,开发一款名为ColorHighlight插件
ColorHighlight插件实现Mac风格代码高亮
基于 Highlight的代码语法高亮插件 for Typecho,可显示语言类型、行号,有复制代码到剪切板等功能…
但因为插件本身存在不少BUG,自己又不想重写结构,于是便重新基于CodeHighlighter开发了一款
依旧在原有的代码高亮样式上新增了Mac风格,修改了部分JS代码
下载
插件最新更新时间:2019/11/18(go语言高亮支持
handsome.min.css更新时间:2020/2/05
Code-Prettify-for-typecho-master.zip
激活
以Handsome主题为例,其它主题可能出现样式错误
点击开合查看
第 1 步:下载本插件,解压,放到 usr/plugins/ 目录中;
第 2 步:文件夹名改为 CodePrettify;
第 3 步:登录管理后台,激活插件
(请勿与其它同类插件同时启用,以免互相影响)
第 4 步:设置:选择主题风格,是否显示行号等。
第 5 步:修改(替换)/usr/themes/handsome/assets/css/下的handsome.min.css文件
由于handsome主题最新加入授权,旧版本必须更新至最新版,所以这里就不提供旧版css文件
Handsome 6.0.0 版本:
Handsome 5.3.1 版本:
提取码:a0d8
如果事先有对handsome.min.css进行过魔改的同学,按照以下步骤修改
handsome.min.css下新增以下代码
.page pre code {
position: relative;
display: block;
overflow-x: auto;
margin: 4.4px 0.px .4px 1px;
padding: 0;
max-height: 500px;
padding-left: 3.5em
}
.page .code-toolbar pre code {
position: relative;
display: block;
overflow-x: auto;
margin: 4.4px 0.px .4px 1px;
padding: 0;
max-height: 500px;
padding-left: 3.5em
}
.page pre {
padding: 0;
border-radius: 0;
overflow: hidden
}
post-content pre code改成
#post-content pre code {
position: relative;
display: block;
overflow-x: auto;
margin: 4.4px 0.px .4px 1px;
padding: 0;
max-height: 500px;
padding-left: 3.5em
}
删除#post-content button
删除#post-content pre:before
删除code::-webkit-scrollbar-track-piece
删除code::-webkit-scrollbar
用法
\“`php(语言类型选填)

\“`
删除上边代码中的\
若不填写语言类型
效果如下:
//此代码高亮样式可在 主题外观设置–>代码高亮的风格里自行设置
Pjax
如果你的网站有开启Pjax(handsome主题默认开启)
请把以下代码添加到回调函数的地方,在你使用的主题设置里看看
以Handsome主题为例:
主题 –> 设置外观 –> Pjax –> PJAX回调函数
if (typeof Prism !== ‘undefined’) {
var pres = document.getElementsByTagName(‘pre’);
for (var i = 0; i < pres.length; i++){ if (pres[i].getElementsByTagName('code').length > 0)
pres[i].className = ‘line-numbers’;}
Prism.highlightAll(true,null);}
若插件里设置不显示行号,PJAX函数要改为
if (typeof Prism !== ‘undefined’) {
Prism.highlightAll(true,null);}
重要说明
可设置项
选择高亮主题风格 (官方提供的 6 种风格切换,本人自己新增了三种(Mac风格))
coy.css
dark.css
BlackMac.css(黑色Mac风格)
GrayMac.css (默认选中:Mac风格(灰色))
WhiteMac.css(白色Mac风格)
twilight.css
tomorrow-night.css
是否在代码左侧显示行号 (默认开启)
后记
很多人反馈插件在其它主题上没有效果或是样式不正常
抱歉,实在做不到完全兼容
有些主题自带代码高亮,小白又不懂怎么删除。
只能尽量做好handsome主题完美兼容
若真的很喜欢这款插件可以在本文留言,博主有时间会帮忙解决
有任何意见或发现任何BUG也欢迎留言
反馈问题的各位大佬,我求求你们,下次能不能给个演示地址?凡是没给的一律不解答

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享