起因
笔者在将Hugo升级到 0.168.0后,使用原主题 hugo-theme-stack 构建站点时会弹出异常提示:
WARN deprecated: css.Sass: libsass was deprecated in Hugo v0.153.0 and will be removed in a future release. Use dartsass instead. See https://gohugo.io/functions/css/sass/#dart-sass
询问千问模型后,我才知晓Stack主题使用了LibSass编译器来处理样式,据说从Hugo的0.153.0版本就宣布弃用了。
我本着能不换主题就不换主题的态度,在网上搜寻补丁。
不过,了解到的方法都需要我通过NPM或其他方式在环境中安装Dart Sass,我感觉像是为了一碟醋去包一桌的饺子。
挑选
我知道,肯定会有人去建议我用AI许愿一个适配Hugo的主题。
但我实在是不知道该从哪里开始设计,与其继续迷茫下去,倒不如直接在网上找一个现成的主题。
于是,我发现了这款名为hugo-paper的主题。
没有眼花缭乱的特效,没有刺眼的泛白,它简直是为阅读而生。
改造
痛点只会在使用的时候涌现,我联合ChatGPT、DeepSeek和Gemini对这款主题进行了魔改。
说人话,就是对着AI许愿。
按照它们工作量,大致可以总结为:
| 选手 | 工作量 |
|---|---|
| ChatGPT | 60% |
| DeepSeek | 20% |
| Gemini | 10% |
修改后的样式基本存放于根目录下的layouts和assets两个文件夹,尽可能避免在更新主题后样式丢失的问题。
尺寸
加宽了主题的横向尺寸,不然我总觉得左右两侧留白太多,会让读者觉得我是个把电脑屏幕竖起来的人。
目录
在文章增加目录区域,点击可以跳转到对应的标题。
随着屏幕滚动,目录会自动高亮所在区域对应的标题。
宽屏模式下,目录会在右边显示。
窄屏模式下,目录会在文章标题下方显示。
图片
基于我的审美,图片的对齐方式被设置成居中。
同时,我还限制了文章页图片的最大高度,目前数值为500px,这样做的目的是为了避免一张图占满这块屏幕。
点击图片可以调出原生JS灯箱,具备镜像、反转、缩放的功能。
评论
上面三点只用了不到半天的时间解决,而评论区的改造对我来说简直是噩梦一般的存在。
因为这个主题并没有适配Twikoo,需要不断地对AI许愿来将它引入到文章页。
如果直接放入官方提供的前端代码,那么Twikoo前端页面会继承主题的样式,元素之间相互干架。

如果使用Shadow DOM来隔离样式,从样式上看没有什么问题,但是表情功能会出现异常,例如点击表情后没有消失表情页面,反而是在切换表情类型后会导致表情页面意外消失。
许愿来,许愿去,最后选择了用iframe来隔离样式。
这个方法应该是最能还原Twikoo前端样式的了,但也有诸多问题需要解决。
例如说第一次许愿用这个方法的时候,页面高度会被无限制地撑大。
第二次许愿后,页面不会被撑到太空,但底下也会留白一大片。
解决完上述问题后,又发现了不适配暗色模式的问题,切换到暗色后评论区的文字还是黑色的。
也就是说还要做一个监听主题亮色/暗色的方法,以此来自动切换文字的颜色。
感想
无关紧要的代码交给智脑解决就好了,我要做的也只有记录生活的片刻。