🐥

MiniBrowser に JSC のオプションを渡す

2024/07/09に公開

オタクの後輩が「ある特定の時刻までのカウントダウンタイマーを作りたい」というので 「Intl.DurationFormat とか Temporal 使おうぜ」という提案をした。

Intl.DurationFormat は WebKit にしか実装されていないのだが、対象のOSは Ubuntu であり、Safari を入手することはできなかった。そこで Playwright 経由で WebKit GTK の MiniBrowser を入手し、それを使うことになった。

MiniBrowser 自体は普通に動き、さらに Intl.DurationFormat も普通に動くのだが(なんで feature flag になってないんだ)、 Temporal は JSC に --useTemporal オプションを渡さないと使うことができない。

MiniBrowser --help とかやって色々調べたのだが、どうやって MiniBrowser に JSC のオプションを使うのかすぐにはわからなかった。そこで、WebKit の Slack をさかのぼったところ、一ヶ月前の Reviewer 同士の会話から、以下のように環境変数を指定することで JSC のオプションを MiniBrowser から指定できることがわかった:

JSC_useTemporal=true ./MiniBrowser

後輩が「JavaScriptのオタクってたまに便利っすね」と言ってくれたが、そもそもJavaScriptのオタクがWebKitでしか動かないAPIを使うことを提案しなければこんなことにはなっていない。

Discussion