Astro で使っている BudouX のバージョンを 0.7.0 に上げた
見出し部分の折り返しを自然にするために使っている BudouX のバージョンを最新の 0.7.0 に上げた。0.6.4 から 0.7.0 に上がる際に JSDOM を linkedom に置き換える破壊的変更が入ったことで、参考にしていたコードが使えなくなって困っていたのだが、Claude Code に調べてもらって解決した。
結論としては、wbr
要素を作るために linkedom
を使うようにすればよかった。
npm install linkedom
import { HTMLProcessingParser, jaModel } from "budoux"import { parseHTML } from "linkedom"
const { document } = parseHTML("")const wbr = document.createElement("wbr")
const parser = new HTMLProcessingParser(jaModel, { className: "budoux", separator: wbr,})
export function budouxProcess(html: string) { return parser.translateHTMLString(html)}
他の部分は参考にしたページのものから変更なしで動いてそう。やはり、静的サイトジェネレータを使っているからにはこういった処理は静的に解決できるのが気持ちいい。