BH2*_*017 5 markdown footnotes hexo
我一直试图在我的Hexo帖子中插入脚注(用Markdown编写,如果他们的标记语言相关).我来自使用Jekyll为我的网站提供动力的背景,当我使用Jekyll时,我会[^n]在文本中添加(其中n是正整数,即n∈{1,2,3,...}),例如:
[^1]: footnote #1
[^2]: footnote #2
[^3]: footnote #3
...
Run Code Online (Sandbox Code Playgroud)
在帖子的末尾,其中footnote #1,#2,#3,等被替换为我的实际注脚.虽然Hexo的东西看起来有点复杂.我在https://hexo.io/plugins/上找了一个脚注插件,我可能会添加不成功,然后我用Google搜索答案并找到了这个要点https://gist.github.com/kuanyui/d1728c2a526a615de56c.我试图通过将它添加到我的Hexo站点的script文件夹来使用这个要点,但是这个失败了(有关完整的错误详情,请参阅要点,因为我在那里评论了详细信息).然后,我通过检查我的Jekyll帖子的生成内容尝试了一个HTML技巧,该帖子通过上述方法添加了脚注.即,添加:
<sup id="fnref:n"><a href="#fn:n" class="footnote">n</a></sup>
Run Code Online (Sandbox Code Playgroud)
(其中n又是正整数)在文本中我希望我的脚注出现并且:
<ol>
<li id="fn:1">Footnote #1.<a href="#fnref:1" class="reversefootnote">?</a></li>
<li id="fn:2">Footnote #2.<a href="#fnref:2" class="reversefootnote">?</a></li>
<li id="fn:3">Footnote #3.<a href="#fnref:3" class="reversefootnote">?</a></li>
...
</ol>
Run Code Online (Sandbox Code Playgroud)
到帖子的结尾.问题是这种方法虽然有效,但也很繁琐(即每个脚注需要比我想要的更多的打字),所以我尝试创建这个ejs模板(对应于文本脚注),我放在我的layouts文件夹下的名称footnotes.ejs:
<sup id ="fnref:<%= n %>"><a href="#fn:<%= n %>"><%= n %></a></sup>
Run Code Online (Sandbox Code Playgroud)
并将其插入我的帖子中:
<%- include('layouts/footnotes', {n:1}); %>
Run Code Online (Sandbox Code Playgroud)
但这也失败了(失败了,我的意思是当我生成我的hexo网站时,这个文本引文完全没有格式化).
所以我在这里要求一种更有效的方法将脚注插入Hexo帖子.即每个脚注尽可能少打字的人.
我刚刚创建了一个hexo-plugin来支持markdown脚注:
所以,你只需安装包
npm install hexo-footnotes --save
Run Code Online (Sandbox Code Playgroud)
如果Hexo自动检测所有插件,那就是全部.
如果不是这种情况,请在您的_config.yml文件中注册插件:
plugins:
- hexo-footnotes
Run Code Online (Sandbox Code Playgroud)
这是语法:
basic footnote[^1]
here is an inline footnote[^2](inline footnote)
and another one[^3]
and another one[^4]
[^1]: basic footnote content
[^3]: paragraph
footnote
content
[^4]: footnote content with some [markdown](https://en.wikipedia.org/wiki/Markdown)
Run Code Online (Sandbox Code Playgroud)
结果如下:

| 归档时间: |
|
| 查看次数: |
625 次 |
| 最近记录: |