ブログ - AI・DX・業務改善

kaizen

AI・DX・業務改善

a-blog cmsでマーメイド記法を表示できるようにしました。

マーメイド記法とは

https://qiita.com/hirokiwa/items/7a9ae5fb87958783bd82

ダイアログやガントチャートなど。いろんな図式をコードで表現する表記方法です。

この表記、直接1から書くことはありません。ですが、AIを利用するにつれ、目にすることが増えてきました。

実際に文字では表現できない分かり易さがあります。「これをa-blog cmsでも表現できるのでは?」と思い、カスタマイズを行いました。

実際のマーメイド表記

graph TD;
A[GTDリファクタリング] -->|毎日のタスク整理| B(タスクの分類: 実行 / 保留 / 削除)
B -->|実行| C{すぐできる?}
C -->|YES| D[即実行]
C -->|NO| E[スケジュールに組み込む]
B -->|保留| F[翌週のタスク候補に加える]
B -->|削除| G[不要なものをGTDから排除]


実際に変換したもの

graph TD;    A[GTDリファクタリング] -->|毎日のタスク整理| B(タスクの分類: 実行 / 保留 / 削除)    B -->|実行| C{すぐできる?}    C -->|YES| D[即実行]    C -->|NO| E[スケジュールに組み込む]    B -->|保留| F[翌週のタスク候補に加える]    B -->|削除| G[不要なものをGTDから排除]

カスタマイズした箇所

  • a-blog cmsのコンフィグ
  • tag-select.html
  • js
  • css

をそれぞれカスタマイズしました。

テキストタグセレクトに「mermaid」を追加

  • タグ「mermaid」
  • ラベル「マーメイド記法」

と追加しました。

利用しているテンプレートのinclude/unit/tag-select.html

divを追加し、変換するキーとなるclassを設定しました。

<!-- BEGIN mermaid -->
<div class="mermaid"></div><!-- END mermaid -->

読み込みjsに以下を追加

<script type="module">
import mermaid from '<https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs>';
mermaid.initialize();
</script>

読み込みCSSに以下を追加

/* Mermaidで生成されたSVGを中央揃えにする */ .mermaid svg { display: block; margin: 0 auto; }


CSSがなくても、ダイアログは表示されますが、図表が中央にある方が見栄えがよいため、そのようにしました。

ChatGPTが便利

上記の実装方法については、ChatGPTと相談しながら、行いました。

これくらいであれば、4oで問題なく相談できるかと思います。


その他のAI・DX・業務改善一覧