Skip to main content

小书匠语法说明之脚注

概述

脚注语法不是标准的 commonmark, 不同的编辑器或者博客平台支持可能不一样。小书匠使用 markdown-it 的扩展 markdown-it-footnote 实现对上标的支持。

使用

元数据标识: grammar_footnote

想要使用该语法,需要在设置>扩展语法 里把脚注选项打开。或者在每篇文章的元数据里通过 grammar_footnote 进行控制。系统默认打开脚注语法功能

该语法书写格式主要参考了 pandoc footnote 的书写格式

内联式脚注

示例

  1. 1正文内容[^1] 
  2. 2 
  3. 3[^1]: 这是脚注定义. 

效果

正文内容[1]

引用式脚注

示例

  1. 1正文内容^[脚注定义内容] 

效果

正文内容[2]

HTML

  1. 1<p>正文内容<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p> 
  2. 2<p>正文内容<sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup></p> 
  3. 3 
  4. 4<hr class="footnotes-sep"> 
  5. 5 
  6. 6<div class="footnotes"> 
  7. 7<ol class="footnotes-list"> 
  8. 8<li id="fn1" class="footnote-item"><p class="xsj_paragraph xsj_paragraph_level_1">这是脚注定义. <a href="#fnref1" class="footnote-backref"></a></p> 
  9. 9</li> 
  10. 10<li id="fn2" class="footnote-item"><p class="xsj_paragraph xsj_paragraph_level_0">脚注定义内容 <a href="#fnref2" class="footnote-backref"></a></p> 
  11. 11</li> 
  12. 12</ol> 
  13. 13</div> 

多行脚注内容

允许在脚注定义里,进行多行定义,只要在新行里进行至少两个空格或者一个制表符就可以。

只有引用式脚注支持多行脚注内容,内联式脚注无注实现多行脚注内容定义。

示例

  1. 1这是一个使用了多行脚注内容的文章.[^longnote] 
  2. 2 
  3. 3[^longnote]: 多行脚注定义 
  4. 4 
  5. 5 注意前面要有空格 
  6. 6 在脚注里面定义数学公式 `!$x = {-b \pm \sqrt{b^2-4ac} \over 2a}.$` 
  7. 7 

效果

这是一个使用了多行脚注内容的文章.[3]

重复脚注引用

重复脚注引用指的是一个引用式脚注定义,在文章里多次被引用 。系统对该脚注编号会自动提供子编号功能

示例

  1. 1重复脚注引用 [^2] 
  2. 2另一个重复脚注引用 [^2] 
  3. 3 
  4. 4[^2]: 脚注定义 

效果

重复脚注引用 [4]
另一个重复脚注引用 [4:1]

疑问

  1. 脚注本身定义不需要放在文章的结尾,只是在生成 HTML 后系统会自动将所有脚注调至文章结尾处。
  2. 脚注里的引用(像前面的 ^1, ^longnote)名称,用户可以自行设定,系统在生成 HTML 后,会对编号进行统一处理。

相关

  1. markdown-it github官网
  2. markdown-it 语法测试
  3. markdown-it-footnote 扩展插件

  1. 这是脚注定义.

  2. 脚注定义内容

  3. 多行脚注定义

    注意前面要有空格
    在脚注里面定义数学公式

  4. 脚注定义