Handsome主题Mac风格代码高亮–Typecho博客程序

Handsome主题Mac风格代码高亮–Typecho博客程序

以下是Mac风格代码高亮的正确打开方式(简明版)

作者:Xcnte’ s Blog(除特别注明外)
原文:https://www.xcnte.com/archives/523/

  • 下载插件
    [button color=”info” icon=”” url=”https://github.com/Xcnte/Code-Prettify-for-typecho” type=”round”]Github[/button]    [button color=”info” icon=”” url=”https://gitee.com/xcnte/Code-Prettify-for-typecho” type=”round”]Gitee[/button]

将插件文件夹名改为 CodePrettify 放到 usr/plugins/
(然后激活插件)

  • 魔改handsome.min.css文件

[collapse status=”false” title=”方式一:直接替换”]

替换/usr/themes/handsome/assets/css/handsome.min.css

Handsome 6.0.0 版本:[button color=”info” icon=”” url=”https://github.com/Xcnte/Code-Prettify-for-typecho” type=”round”]Github[/button]

Handsome 5.3.1 版本(提取码a0d8):[button color=”info” icon=”” url=”https://pan.baidu.com/share/init?surl=kwuvgtXMxN6EONRcN2RPUA” type=”round”]百度云[/button]
[/collapse]

[collapse status=”false” title=”方式二:魔改(适用于修改过主题的同学)”]

修改/usr/themes/handsome/assets/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
[/collapse]

  • 如果你的网站有开启Pjax(handsome主题默认开启)

需要添加回调函数,因为Pjax不会将js函数应用到新的页面上,造成的效果是打开文章后刷新一次才会有效果。

以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);}

如果插件里设置不显示行号,添加以下代码

if (typeof Prism !== 'undefined') {
Prism.highlightAll(true,null);}

此插件仅保证对Handsome主题的支持性。
如果到此为止还有一些奇葩问题,记得清除cookie。

2条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注