今天写博客的时候突然发生一件非常恶心的事情
我个人用的是matery主题,然后图片用了hexo-asset-image
插件
一般来说流程是
- 配置_config.yml里面的post_asset_folder:false这个选项设置为true。
- 安装hexo-asset-image,运行hexo n “xxxx”来生成md博文时,/source/_posts文件夹内除了xxxx.md文件还有一个同名的文件夹,把图片放入该文件夹。
- 使用
![](xxx.png)
直接插入图片即可。
可真实情况是
生成图片的链接居然都变成了
1 | /.io//1.png |
重新hexo-clean,hexo-g也是一样的如下,太惨了
寻找解决办法
网上说原因是:
由于hexo3版本后对很多插件支持有问题,hexo-asset-image插件在处理data.permalink链接时出现路径错误,把年月去掉了,导致最后生成的路径为%d/xxx/xxx需要对其做兼容处理。通过判断当前版本是否等于3的版本做不同的路径分割。
反正和matery主题冲突了-我专门用了一个干净的环境也是一样的。
网上说改hexo-asset-image中的源码
改来改去确一直不生效,你说气不气
我的办法
这个插件中暑了,不如我们嗯嗯,卸载这个插件npm uninstall hexo-asset-image
看看会发生啥
其实总的来说是正常的,只是url重复了,比如
我在markdown中写![](hexo-matery与hexo-asset-image冲突问题/5.jpg)
生成的url是/hexo-matery与hexo-asset-image冲突问题/hexo-matery与hexo-asset-image冲突问题/5.jpg
!!!!居然重复了一遍
纠结怎么改插件,不如把所有的![]({文件夹名}/x.jpg)
改成![](x.jpg)
,虽然预览很恶心,但是hexo生成后没问题
写脚本
emm,终于觉得没白学python,一般我自己之前写了2中插入图片的语法,一种是![]({文件夹名}/x.jpg)
,一种是src="{文件夹啊名}/xx.jpg"
,所以通用脚本这样的
1 | # -- coding:utf-8 |