新設、移転

旧ブログ molecular coordinates を久しぶりに見に行ったら

この広告は、90 日以上更新していないブログに表示しています。

みたいなのが出ていて、そうなんだ〜と思ったので新しく記事を投稿する場所 /post を作った。 別に今までの記事はそのままでいいとは思ったが、しかし記事が少ないと寂しいので1ちゃんと書いた2記事は移転した3

コンテンツジェネレーション

coord-e.com のコンテンツは coord-e/coord-e.com から静的サイトジェネレーターライブラリ Hakyll を用いて生成されている。 ジェネレータの中では、コンテンツのソースから HTML を生成するのに Pandoc を使っている。

コンテンツのソースとして Markdown っぽいものを書きたかったが、Markdown はもともとプレーンテキストの状態での可読性を意識して設計されているもので4、こういう変換後のコンテンツにしか興味がない用途にはあまり向いていない5。 やはり GitHub Flavored MarkdownCommonMark を含む多数の方言はこの方針に習って設計されており、こういったコンテンツのソースとして使うにはしんどさがあった。 あったが、しかし他に良い形式が見つからず6結局 Markdown を7使うことにした。 幸い Pandoc’s Markdown に欲しい構文があった8し、気に入らない部分についてもコンテンツの生成途中で Pandoc の内部表現を変換してやることである程度好みの出力を得らているのでうれしいなと思っている。

ただそれでは対応できない気に入らないポイントもいくつかあり、結局パッチを当てることになった。Nix を使っているおかげ…なのかは知らないが依存関係の途中にパッチを当てて使うといったことが簡単にできていて、よかったなあという感じ


  1. 記事が多いとうれしい、とも↩︎

  2. 自分が昔に書いた文章と向き合うと難しい気持ちになります↩︎

  3. ただし原文から修正をしている。型クラスのやつは結構変えた、それ以外は textlint にかけたぐらいです↩︎

  4. いくつかの Markdown 方言で脚注を書くのに [^1] ... [^1]: ... などとやっているのはそういうことだろうと思っている↩︎

  5. 逆に README だとかソースコード内ドキュメントだとかには向いているんだろうと思っている↩︎

  6. AsciiDoc は惜しかったのだが Pandoc が入力に対応していない↩︎

  7. Pandoc の Markdown、Pandoc’s Markdown というのがあり、それ↩︎

  8. インライン脚注があるかないかが分かれ目で、publishable as-is の話が冒頭に書いてあったのでどうせないんだろうな…と思っていたら、あった↩︎