kakakakakku blog

Weekly Tech Blog: Keep on Learning!

mdline を使ってタイムライン(年表)を作ろう!

「mdline」を使うと「タイムライン(年表)」を簡単に作れる.実装は必要なく,Markdown から HTML に変換できる.シチュエーションは限定的かもしれないけど,非常に面白く,試してみた!

github.com

Ruby Releases History

今回は mdline を試すサンプルとして「Ruby Releases History」を作った.Ruby のバージョンごとにリリース日をタイムラインとしてプロットしている.そして Netlify に配信をしたため,以下の URL から実際にタイムラインを見れるようにしてある.

f:id:kakku22:20200106203239p:plain

リリース日など,データセットは以下の公式サイトを参考にした.流石に量が多く,今回は Mechanize を使ってシュッと Markdown を作った.

www.ruby-lang.org

コード関連は全て GitHub に公開してある.Netlify のビルド設定はプロジェクト設定にすることもできるけど,今回は netlify.toml を使ってリポジトリ管理にしてみた.Netlify も機能が多くてたくさん遊べそう!

github.com

mdline フォーマット

GitHub に記載されている通り,フォーマットは非常にシンプルで,以下の2種類となる.

## {{Date}}: TITLE

MARKDOWN BODY

## {{Date}}--{{Date}}: TITLE

MARKDOWN BODY

今回作った「Ruby Releases History」の一部を抜粋すると以下のようになる.

## 2002-03-01: Ruby 1.6.7

[more...](https://www.ruby-lang.org/en/news/2002/03/01/167-is-released/)

## 2003-08-04: Ruby 1.8.0

[more...](https://www.ruby-lang.org/en/news/2003/08/04/ruby-180-released/)

mdline 実行

1番簡単に使うなら「mdline CLI」をインストールし,mdline コマンドを実行する.オプションは少なく,HTML を指定する -o--output 以外はなかった.例えば <title> を指定できるようにしたり,あると便利な機能はまだまだありそう.

$ npm install -g mdline
$ mdline ruby-releases.md -o ruby-releases.html

まとめ

「mdline」を使ってオリジナルな「タイムライン(年表)」を作ろう!