Jekyll on Github Pages: any way to add footnotes in Markdown?

后端 未结 3 1317
别那么骄傲
别那么骄傲 2021-01-30 12:34

I\'ve recently switched over to using Jekyll on Github Pages for my various blogs, and love that I can just push Markdown to Github and they handle the processing. I\'d like to

相关标签:
3条回答
  • 2021-01-30 12:56

    I use kramdown for markdown parsing and it handles footnotes nicely.

    Change this line in your _config.yml file:

    markdown: redcarpet
    

    to:

    markdown: kramdown
    
    0 讨论(0)
  • As of Jekyll 3.0.0, kramdown is the default Markdown processor, so the example in OP's question now works out of the box. The pattern is:

    Some text[^1].
    
    Some other text[^2].
    
    The identifier in the square brackets does not have to be numeric[^my_footnote].
    
    [^1]: Some footnote.
    [^2]: Other footnote.
    
    [^my_footnote]: This also works fine.
    

    Update 3rd Jan. 2020:

    • GitHub has its own markdown processor GFM, which is an extension of CommonMark. Both kramdown and GFM can be used to render GitHub Flavored Markdown.
    • Footnotes are not yet supported by GitHub Flavored Markdown, which means the above examples do not render correctly in the GitHub code repository.
    • Kramdown is still the default Markdown renderer for Jekyll. With kramdown, the above examples render correctly on sites based on GitHub Pages.
    0 讨论(0)
  • 2021-01-30 13:17

    Redcarpet

    When you want to use redcarpet there seems to be no convenient solution right now. Although Redcarpet 3 supports footnotes with the syntax you've used, it is not included into Jekyll, because Redcarpet 3 removes Ruby 1.8 compatibility (source).

    Solution 1: Use forked Redcarpet 2

    See this solution by Jerod Santo:

    Add a file called Gemfile to the root of your Jekyll folder with this content:

    source "https://rubygems.org"
    
    gem "jekyll"
    gem "redcarpet", github: "triplecanopy/redcarpet"
    

    or alternatively djui/redcarpet

    Theny adjust your _config.yml to

    markdown: redcarpet
    redcarpet:
      extensions: [footnotes]
    

    Solution 2: Fork Jekyll and include Redcarpet 3

    I don't know what's the easiest way to do this. Comments are welcome.

    Maruku

    Seems to support footnotes (source, source).

    0 讨论(0)
提交回复
热议问题