web-dev-qa-db-ja.com

GithubページのJekyll:Markdownに脚注を追加する方法は?

私は最近、さまざまなブログでGithubページでJekyllを使用するように切り替えました。MarkdownをGithubにプッシュするだけで処理を処理できることを気に入っています。この方法を引き続き使用したいのですが(Jekyllをローカルで実行して、事前に生成されたサイトをGithubにプッシュするのではなく)、自分のマシンにいない場合でも、Github UIを使用して投稿を簡単に追加および調整できます。

理解できなかったことが1つだけあります。Markdown脚注が機能しません。私はこのスタイルを使用しています:

I bet you'd like more information about this sentence [^1].

[^1]: Well lucky for you, I've included more information in footnote form.

Redcarpetマークダウンプロセッサの脚注拡張機能を有効にすることを提案する投稿(どこか)を見つけましたが、これもそれを行いません:

markdown: redcarpet
redcarpet:
  extensions: ["footnotes"]

Githubにプッシュする前に静的サイトを事前に生成せずにMarkdown脚注を使用する方法はありますか?

59
Brock Boland

私はマークダウン解析にkramdownを使用し、脚注を適切に処理します。

_config.ymlファイルの次の行を変更します。

markdown: redcarpet

に:

markdown: kramdown
62
Brian Willis

Jekyll 3.0.0以降、 kramdownがデフォルトのMarkdownプロセッサー なので、OPの質問の例はそのまま使用できます。パターンは次のとおりです。

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.
16
Yi Ou

レッドカーペット

redcarpetを使用したい場合、現在のところ便利な解決策はないようです。 Redcarpet 3は、使用した構文で脚注 をサポートしていますが、Redcarpet 3はRuby 1.8を削除するため、Jekyllには含まれません。互換性( ソース )。

解決策1:フォークしたRedcarpet 2を使用する

Jerod Santoによる this solution を参照してください:

次の内容でGemfileというファイルをJekyllフォルダーのルートに追加します。

source "https://rubygems.org"

gem "jekyll"
gem "redcarpet", github: "triplecanopy/redcarpet"

または djui/redcarpet

彼らはあなたの_config.yml

markdown: redcarpet
redcarpet:
  extensions: [footnotes]

解決策2:JekyllをフォークしてRedcarpet 3を含める

これを行う最も簡単な方法は何なのかわかりません。コメントは大歓迎です。

マルク

脚注をサポートしているようです( sourcesource )。

7
Martin Thoma