miyohideの日記

技術的なメモなどを記しています

2019年11月1日(金)

一週間が長かった。

Markdownの脚注対応

Markdownには脚注記法というものが存在します。こんな感じ。

ここに脚注を入れたいな。[^1]

[^1]: 脚注の注釈内容。

1個や2個ぐらいなら手で番号を振ってもいいのですが、3個以上になってくると面倒くさい。

そこで、注釈の内容をで囲んで脚注を入れたい場所にその文字列を挟み、後でRubyで変換させるようにしました。

例としてはこんな感じ。

ここに脚注を入れたいな。★脚注の注釈内容。★
ここにも脚注を入れたいな。★脚注の注釈内容2。★

これを下のようなRubyスクリプトで変換させます。

contents = File.read('sample.md')

i = 0
f = []

contents.gsub!(/(.+?)/) { |m| i += 1; f << "[^#{i}]: #{$1}" ; "[^#{i}]" }

print contents
print "\n"
print f.join("\n")

上のスクリプトconvert.rbってなファイルとして保存し、

ruby convert.rb > result.md

ってな感じで実行してやると脚注の番号付けがちょっと楽になります。