喜びの声: 日本語と英数字の間にスペースを入れたくなる問題から解放された

text-autospaceの存在を知って、日本語と英数字の間にスペースを入れてしまう問題に終止符を打てたのでメモ。

結論、下記をやればいい:

  • 日本語–英数字の間隔をコントロールする目的のスペースは使わない
  • text-autospace: normal;を設定する

執筆時点(2026/07/20)ではtext-autospaceの仕様が完全には実装されていなさそうだったので、かんたんな検証結果をメモしておく。

前提

日本語と英数字が隙間なく詰まった文章は美しくないと思う。

ギッチリ詰まっていると色々な意味でみにくい。

ギッチリ詰まっていると色々な意味でみにくい。

あ、ステキ。

あ、ステキ。

気づいたら、日本語と英数字の間にスペースを入れる手癖がついてしまっていた。 いつの間にか編み出していた状況に応じた細かいルールや、この方法のデメリットなどは下記の記事で書き尽くされているのでここでは繰り返さない:

検証環境

  • macOS 15.6.1
  • Firefox 151.0.3 (aarch64)

試したこと

シンタックスの解説ドキュメントによると、text-autospaceには複数の値を設定できるようになっている。 ドキュメントをマネして設定してみたが、目標位置の間隔を思うように調整できないことがあったのでメモしておく。

日本語と数字の間:

日本語–数字間制御のレンダリング結果。text-autospaceにnormalあるいはideograph-numericを指定したときにスペースが追加されている

日本語–数字間制御のレンダリング結果。text-autospacenormalあるいはideograph-numericを指定したときにスペースが追加されている

日本語と英語アルファベットの間:

日本語–英字間制御のレンダリング結果。text-autospaceにnormalあるいはideograph-alphaを指定したときにスペースが追加されている

日本語–英字間制御のレンダリング結果。text-autospacenormalあるいはideograph-alphaを指定したときにスペースが追加されている

どちらも、text-autospaceに複数の値を設定したときにうまく動いていない。 結果を総合すると、normalを指定した時が一番いい感じになる。

シンタックスドキュメントの誤りかと思ってドキュメントを修正しかけたが、仕様を見たところ確かに[ ideograph-alpha || ideograph-numeric || punctuation ]なのでこれらについては「複数設定できる」は正しそう。

下記を見る限り、現時点で未実装なだけだと思う:

学んだこと

  • text-autospace: normal;は全てを解決する(2026/07/20現在)
  • 仕様がある機能の場合には、バグ起票・pull request作成の前に仕様書を読もう

このブログも晴れてスペースフリーになった。 見た目のためにコンテンツを汚染している罪悪感から解放されて、人生の幸福度が0.1%くらい上がった。 メンテナの方々、ありがとうございます。