KibelaのMarkdownはCommonMark に準拠しています。また、GitHub Flavored Markdown の拡張記法も一部サポートしています。
これにより、Kibelaの記事は、CommonMarkに準拠した他のサービスでも再利用できます。
また、CommonMarkに準拠した他のサービスからKibelaに移した記事も正しく表示できることを期待できます。
CommonMarkとは
CommonMarkは、マークダウンの標準となるべく開発されている仕様です。CommonMarkは2014年から開発が進められており、2017年3月には大手ソースコードホスティングサービスであるGitHubがCommonMarkに準拠したという発表がありました。
A formal spec for GitHub Flavored Markdown | GitHub Engineering
CommonMarkの対応サービスはまだそれほど多くありませんが、GitHubが採用したことにより今後CommonMark対応サービスが増加してゆくと考えられます。そこで将来的な相互運用性を期待してKibelaもCommonMarkを採用することにしました。
処理系の詳細
いずれも基本的に最新版に追従しています。
マークダウンの処理系
マークダウンの処理系としては、CommonMark処理系であるcommonmarkerを使っています。これはGFMの拡張をサポートしているgithub/cmark-gfmのRubyバインディングです。
構文ハイライトエンジン
コードブロック記法でサポートしている構文ハイライトエンジンとしては、rougeを利用しています。
PlantUML処理系
PlantUML記法のサポートのために PlantUML を利用しています。
LaTeX処理系
LaTeX記法のサポートのために MathJax を利用しています。