hexo 配置 pangu—butterfly 主题
前言:不知道为什么有关这方面配置的博客很少,而且方法都不是很统一,因此做个记录。
一、模块配置
pangu(盘古)模块是一个渲染脚本,用于在博客的中英文、数字之间自动添加空格,使中英文文字混排变得美观。下面是开源地址和作者的碎碎念:
汉学家称这个空白字元为「盘古之白」,因为它劈开了全形字和半形字之间的混沌。另有研究显示,打字的时候不喜欢在中文和英文之间加空格的人,感情路都走得很辛苦,有七成的比例会在 34 岁的时候跟自己不爱的人结婚,而其余三成的人最后只能把遗产留给自己的猫。毕竟爱情跟书写都需要适时地留白。
我的 butterfly 主题版本是 4.9.0,在配置文件中找到pangu
关键字并启用:
pangu: |
这里site
表示全站启用,post
表示仅 post 页面启用。有些博客到这里就 OK 了,但是我的配置并未成功,还需要安装 hexo-pangu 组件,这里并不直接安装 pangu 组件是因为需要进行魔改才能生效,比较麻烦。
npm install hexo-pangu |
然后就能在页面中看到启用后的效果了。
二、相关问题
部署之后在控制台界面出现了Uncaught SyntaxError: Cannot use import statement outside a module
的报错。具体报错代码在pangu.min.js
中第 7 行:
import {Pangu} from "../shared/index.js"; |
大概意思是这个 js 文件使用了 ES6 的 import 语法,而浏览器默认不支持。解决方法可以将 pangu.min.js 设置为模块引入,或者将 js 本地重构,转换为浏览器可执行的 JavaScript。
经过搜索找到了 pangu 官方使用 UMD 构建的版本,可以兼容 script 引入:
<script src="https://cdn.jsdelivr.net/npm/pangu@7.2.0/dist/browser/pangu.umd.js"></script> |
由于 jsdelivr 国内访问不稳定,我将其部署在了本地,这样部署后就不会出现报错了:
options: |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 洛天的小窝!
评论