うちにも入れたい
astro で動くプラグインを探している。 astro 製の starlight にあるのだから、 部品として公開してくれれば良いのだが見つからなかった。
astro の実装を探してみた。remark-directive ベース。後で読む。
https://github.com/withastro/starlight/blob/main/packages/starlight/integrations/asides.ts
ということで https://github.com/elviswolcott/remark-admonitions 。 どうも remark の API 変更で動かなくなってしまったぽい。
では動いているぽい。astro-3.6
。うちは astro-4.1
。
を見ると、
some plugins don’t work with recent versions of remark due to changes in its underlying parser (micromark). 👉 note: remark-directive is similar and up to date)
と書いてある。
でも、ちょっとシンタックスが違って remark-admonitions
の方が好みなんよね。
2つ手段がある。
remark-admonitions
を近代化するか、remark-directive
を改造するか。
remark-admonitions の近代化をやってみる
情報収集…
remark-13 (2020) からぽい?
vitest で test driven
micromark Extension
実装例
- https://github.com/micromark/micromark-extension-gfm-strikethrough/blob/main/dev/lib/syntax.js
- https://github.com/micromark/micromark-extension-directive/blob/main/dev/lib/syntax.js
とりあえずこれを読むべき。
inline と block だと block の方が難しい。 micromark でちょっとインタフェースが変わったのを辻褄合わせるだけ を想定してたのですが、手に負えん。 プランBへ。
remark-directive を改造
むずい