nna774.net(つまり、このページのこと)をHonoで書き直した。
今まではmiddleman, middleman-blogを使って書いてたが、手元でビルドが成功しない状況が続いていた。
一方並行してHonoの話をイベントで何度か聞いていた。 それがv4でついにSSG(Server Side Generation)に対応したということで、乗換えてみることにした。
いくつかの問題があるものの、一旦全てworkaroundすることができたので、乗り換えることに成功した。
気付いている問題
app.get('/パス/', ...)
のようなパスにマルチバイト文字列を渡した場合、内部には/パス/のように登録されるが、アクセスする際に/%E3%83%91%E3%82%B9/のようにエンコードされるためか、マッチされない。
encodeURIしたパスを登録して、ファイルに書き出す際にdecodeURIすることでごまかしている。
app.get('/feed.xml', ...)
のようなコードからSSGすると、feed.xml.htmlが生成される。 https://github.com/honojs/hono/pull/2236によって直っているように思うのだが、これを含んだバージョンを使っても発生する。index.html.htmlのようにhtmlが2つにはならなくなったのに。 ビルド後にrenameでごまかしている。
踏んだものはこれぐらいか。
普段
普段はScrapboxのほうにブログを書いているが、ひさしぶりにこちらを更新するのもわるくない感じがするので、記事を書く際にはこっちを使ってもいいのかもしれない……と思ってきた。 最後の記事が2018年か……という気持ちにはなってしまった。