Markdown 支持
Hexo 对 Markdown 语法的支持尚不完备,比如将内容标记为高亮: ==highlight==
, Obsidian 已经支持,但 Hexo 尚未跟进。类似的还有 footnote,目前只能通过插件搞定。
footnote 脚注
对一个业余文字爱好者来说,注释是免不了要加的。hexo-footnotes 可以为 Hexo 用户提供额外的 footnote 语法支持,直接命令行安装:
1 | npm install hexo-footnotes --save |
安装之后 Hexo 一般可以自动识别,此时在 Markdown 文件中添加注释即可。如果不能识别,则需要在 _config.yml
内手动配置:
1 | plugins: |
footnote 的语法请自行搜索。个人体验下来,目前还有两个问题尚待解决:
如果一条注释包含多个段落,则只有第一个段落会被识别,不知如何指定脚注的起讫范围?后续段落可以通过缩进来声明脚注的起讫,但仍然有个问题。第一段是纯文本,而后续段落都是<p>...</p>
标签,导致第一段与第二段之间缺少段间距。- ~~不知是否与主题 css 存在冲突,脚注序号、内容与返回按钮分成了三行。~~此问题已经解决,办法是修改
/Hexo/node_modules/hexo-footnotes/src/footnotes.js
,搜索display: inline-block;
,删除第二个结果。 - 脚注的标记不支持中文,
<sup id="fnref:1"><a href="#fn:1" rel="footnote">1</a></sup>
正常,[^注一]
则不正常。
最终效果可以参考这篇文章:鲁迅照片集
Markdown 与 HTML 标签混用
内容嵌入
Youtube 视频
Wordpress 里面插入 Youtube 视频很简单,网址粘贴进去,自动转换成视频播放界面。与之相比,Obsidian 还能找到 Simple Embeds 这样的插件,Hexo 简直太不方便了,反正我不怎么想在 Markdown 里面写这样的标签:
1 | {% youtube video_id [type] [cookie] %} |
作为互联网的老用户,平台或者软件搞私有标准的危害,我们可是太有体会了。还是希望 Hexo 能在 Markdown 通行标准的基础上发展,不要强推这种换个软件就无法识别的标签。
子页面
发现一个奇怪现象:关于 页面本来正常,但我想在这个页面下面再挂一份简历,计划的路径是 /about/resume
。Hexo 官方没有子页面的信息,所以我就直接在 source 文件夹建了一个 about
子文件夹,然后在里面新增了一个 resume.md
。没想到生成之后,这个简历倒是没有问题,主菜单点击关于页面报 403 错误了,令人一头雾水。
当然解决办法还是有的,将 about.md
移到 about
文件夹,并重命名为 index.md
,虽然生成网页之后实际路径其实从 /about.html
变成了 /about/index.html
,但这样一来,按照之前的路径访问就没有问题了。