介绍

基于 prismjs 的代码语法高亮typecho插件,支持众多常见的代码语言高亮显示,共提供11种代码高亮风格自由切换,支持显示代码语言类型、行号,以及支持复制代码到剪切板功能,但因为插件本身存在不少BUG,自己又不想重写结构,于是便重新基于CodeHighlighter开发了一款,依旧在原有的代码高亮样式上新增了Mac风格,修改了部分JS代码。

转载自 Xcete'sBlog 仅作为记录,如侵删

作者博客地址:https://www.xcnte.com/

下载请前往作者博客下载

Handso7.3.1主题使用教程

第 1 步:下载本插件,解压,放到 usr/plugins/ 目录中;

第 2 步:文件夹名改为 CodePrettify;

第 3 步:登录管理后台,激活插件
(请勿与其它同类插件同时启用,以免互相影响)

第 4 步:设置:选择主题风格,是否显示行号等。

第 5 步:修改 /usr/themes/handsome/assets/css/handsome.min.css 文件

删除代码

pre {
    padding:0
}
pre code {
    display:block;
    overflow-x:auto;
    position:relative;
    margin:0;
    padding:15px
}

添加代码

#post-content pre code {
    display:block;
    overflow-x:auto;
    position:relative;
    margin:0;
    padding-left:50px;
}
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
}

用法

\```php(语言类型选填)
<?php echo 'hello jrotty!'; ?>
\```
删除上边代码中的\

Pjax设置

主题 --> 设置外观 --> 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);}
最后修改:2021 年 05 月 10 日 09 : 00 PM
如果觉得我的文章对你有用,请随意赞赏