Hexo和Icarus折腾
主要是一些Hexo和Icarus以及在vscode上的插件及其设置,部分插件使用教程直接来自于插件的官方文档。
魔改
固定顶部导航
pjax
首页文章显示tags
宽度修改
WEBP格式
遇到的问题
hexo和vscode均兼容的图片显示
目前显示图片用的是
1 | {% asset_img hexo-blog-encrypt.png %} |
在vscode中没法正常显示,但在hexo s 和 hexo g 中都能正常显示。
尝试了一下利用Markdown Preview Enhanced中的Extend Parser进行渲染,目前网上主流的修改方式如下:
使用ctrl
+shift
+p
输入Markdown Preview Enhanced: Extend Parser
编辑onWillParseMarkdown函数。
1 | module.exports = { |
这样的修改方式实际上将{% asset_img hexo-blog-encrypt.png %}
修改为
,不知道什么版本的markdown能渲染出来(并且我使用vscode和typora都不能正常显示),但这样是有问题的,因为markdown显示图片需要使用相对地址,不应该使用文件名读取同名目录下的文件。
因此,需要在content前补充一个文件夹名,由于文件夹和文件以及标题是同名的,因此这里用标题来作为dir路径,如果你的不是这样命名,可能还需要别的方法。
1 | module.exports = { |
这样就能够正常预览了,虽然这样实现不太优雅hhhh,但预计未来会使用图床或对象存储进行图片存储,因此这个就不做调整了。
vscode中预览bulma样式
本站使用了bulma样式对markdown进行补充,但在vscode的预览中,引入的html语句因为没有css因此不能正常显示,因此需要把bulma的css引入进来。
使用ctrl
+shift
+p
输入Markdown Preview Enhanced: Customize CSS
编辑,将bulma的提供的css贴上或者引入均可。
导入后就可以看到显示的效果了,注意bulma提供的css对markdown有侵入,如果发现哪里出现问题了,把对应的css注释掉即可,以下是我修改的一些部分。
1 | // 注释number类 |
同时,在Markdown Preview Enhanced: Extend Parser
中,编辑onWillParseMarkdown函数,添加如下内容,将Raw代码块排除渲染。
1 | markdown = markdown.replace( |
显示效果:

插件
Waline 评论
Hexo-blog-encrypt 加密
html内容直接加密,应该还是比较安全的
安装
1 | npm install --save hexo-blog-encrypt |
使用
在文章前添加密码和其他说明(以下内容摘自hexo-blog-encrypt github)
1 | password: hello |
也可以在_config.yml中设置,其中tags可以根据tag设置密码,并自动加密
1 | # Security |
显示效果

Hexo-native-lazy-load 懒加载
使用npm install hexo-native-lazy-load --save
安装,并在_config.yml
添加:
1 | # lazy—load |
即可实现懒加载,图片不需要手动添加loading="lazy"
,如果f12后发现img标签没有正确的添加lazy属性,则需要执行hexo clean
,成功效果如下。

Hexo-generator-feed rss订阅
现在用rss的人已经不多了(虽然我还在用),所以要给博客加个rss。
使用npm hexo-generator-feed --save
安装,并在_config.yml
添加:
1 | # rss |
就可以使用了,具体配置参数可以在 https://github.com/hexojs/hexo-generator-feed 这里看。
同时还需要在Icarus中设置rss链接,在_config.icarus.yml
的widgets.social_links
中添加:
1 | RSS: |
即可显示rss按钮了。
Hexo-generator-sitemap 站点地图
使用npm install hexo-generator-sitemap --save
安装后,并在_config.yml
添加:
1 | # sitemap |
Hexo-tag-steamgame steam游戏插件
使用npm install hexo-tag-steamgame --save
安装后,在文章内添加:
1 | {% steamgame appid description %} |