如何更高效地将脚注插入 Hexo post?
How do I more efficiently insert footnotes into a Hexo post?
我一直在尝试在我的 Hexo posts 中插入脚注(用 Markdown 编写,如果它们的标记语言相关的话)。我的背景是使用 Jekyll 为我的网站提供动力,当我使用 Jekyll 时,我会在其中添加 [^n]
(其中 n 是正整数,即 n ∈ {1,2,3,...})文本和类似内容:
[^1]: footnote #1
[^2]: footnote #2
[^3]: footnote #3
...
在 post 的末尾,其中 footnote #1
、#2
、#3
、 等 被替换为我的实际脚注。而使用 Hexo,事情似乎有点复杂。我在 https://hexo.io/plugins/, unsuccessfully I might add, then I used Google to search for the answer and found this gist https://gist.github.com/kuanyui/d1728c2a526a615de56c 寻找脚注插件。我试图通过将它添加到我的 Hexo 站点的 script
文件夹来使用这个要点,但是失败了(有关完整的错误详细信息,请参阅要点,因为我在那里评论了详细信息)。然后我尝试了一个 HTML 技巧,我通过检查我的 Jekyll posts 的生成内容学到了这些技巧,这些内容通过上述方法添加了脚注。即添加:
<sup id="fnref:n"><a href="#fn:n" class="footnote">n</a></sup>
(其中 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>
到post结束。问题是这种方法虽然有效,但也很乏味(即,每个脚注需要比我想要的更多的输入),所以我尝试创建这个 ejs 模板(对应于文本脚注),我放置在我的 layouts
文件夹中,名称为 footnotes.ejs
:
<sup id ="fnref:<%= n %>"><a href="#fn:<%= n %>"><%= n %></a></sup>
并将其插入到我的 post 中:
<%- include('layouts/footnotes', {n:1}); %>
但这也失败了(失败我的意思是当我生成我的 hexo 网站时,这个文本引用完全没有格式化)。
所以我在这里寻求一种更有效的方法来在 Hexo posts 中插入脚注。也就是说,每个脚注需要尽可能少的打字。
我刚刚创建了一个 hexo-plugin 来支持 markdown 脚注:
所以,你只需要安装
npm install hexo-footnotes --save
如果Hexo 自动检测所有插件,就可以了。
如果不是这种情况,请在您的 _config.yml
文件中注册插件:
plugins:
- hexo-footnotes
语法如下 :
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)
这是结果 :
我一直在尝试在我的 Hexo posts 中插入脚注(用 Markdown 编写,如果它们的标记语言相关的话)。我的背景是使用 Jekyll 为我的网站提供动力,当我使用 Jekyll 时,我会在其中添加 [^n]
(其中 n 是正整数,即 n ∈ {1,2,3,...})文本和类似内容:
[^1]: footnote #1
[^2]: footnote #2
[^3]: footnote #3
...
在 post 的末尾,其中 footnote #1
、#2
、#3
、 等 被替换为我的实际脚注。而使用 Hexo,事情似乎有点复杂。我在 https://hexo.io/plugins/, unsuccessfully I might add, then I used Google to search for the answer and found this gist https://gist.github.com/kuanyui/d1728c2a526a615de56c 寻找脚注插件。我试图通过将它添加到我的 Hexo 站点的 script
文件夹来使用这个要点,但是失败了(有关完整的错误详细信息,请参阅要点,因为我在那里评论了详细信息)。然后我尝试了一个 HTML 技巧,我通过检查我的 Jekyll posts 的生成内容学到了这些技巧,这些内容通过上述方法添加了脚注。即添加:
<sup id="fnref:n"><a href="#fn:n" class="footnote">n</a></sup>
(其中 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>
到post结束。问题是这种方法虽然有效,但也很乏味(即,每个脚注需要比我想要的更多的输入),所以我尝试创建这个 ejs 模板(对应于文本脚注),我放置在我的 layouts
文件夹中,名称为 footnotes.ejs
:
<sup id ="fnref:<%= n %>"><a href="#fn:<%= n %>"><%= n %></a></sup>
并将其插入到我的 post 中:
<%- include('layouts/footnotes', {n:1}); %>
但这也失败了(失败我的意思是当我生成我的 hexo 网站时,这个文本引用完全没有格式化)。
所以我在这里寻求一种更有效的方法来在 Hexo posts 中插入脚注。也就是说,每个脚注需要尽可能少的打字。
我刚刚创建了一个 hexo-plugin 来支持 markdown 脚注:
所以,你只需要安装
npm install hexo-footnotes --save
如果Hexo 自动检测所有插件,就可以了。
如果不是这种情况,请在您的 _config.yml
文件中注册插件:
plugins:
- hexo-footnotes
语法如下 :
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)
这是结果 :