オレの余剰次元

言いたいことも言えないこんな4次元じゃ

公開日
2022年5月14日

KaTeXで行頭に句読点がくる問題

数式止めはよくない?

句読点でカンマ,ピリオドを使っていると理系かぶれ,カッコつけと思われるかもしれませんが,私がそうしている最たる理由は,ディスプレイスタイルで数式を表示したとき,文末が「。」だとカッコ悪いからです.つまり,よって以下を得る:

みたいな書き方をしますが,文末が「。」だと締まりが悪いです:

どうでしょうか.新しい数学記号かと錯覚してしまうほどですね.

さて,私はインラインで以下のような書き方を頻繁にします.

...よって $A=B$.次に...

こうすると,$A=B$.のピリオドが行頭にくる可能性があります.よって $A=B$. の部分がHTMLで以下のようにレンダリングされます.

よって <span class="katex">
  <span class="katex-html">
    <span class="base">...</span>
  </span>
</span>

どうやら,.basedisplay 属性に inline-block が設定されているのが原因のようで,自前のCSSで以下のようにすると解決します.

.katex .base{
  display: inline!important;
}

勝手に display いじって,他の数式のレンダリングが崩れないか心配ですが今のところなさそうなので採用しています.正規のやり方ではないので,あんまりいい感じがしませんが.

あとは,$A=B.$のような数式止めと名付けることにした書き方をするのではなく,よって $A=B$ が成り立つ.のように書くというのも解決策ですが,冗長になるし,ある種の重言だと思っているのでやりません.

全角 or 半角? 明朝 or ゴシック?

数式関係でいうと句読点にカンマ,ピリオドを使うのはほぼ確定として,半角にするか全角にするか問題と,日本語の部分を明朝体にするかゴシック体にするか問題があります.究極的に体裁を整えるなら

  1. カンマ,ピリオドは半角
  2. 明朝体

とすべきでしょう.しかし,ウェブサイトってある程度,閲覧者に委ねるべきみたいな考え方もあるので悩ましいところです.ただ,数式は半角明朝で出力するしかないので,その時点で閲覧者に強制をしている部分があります.それと数学関係のドキュメントを読もうとしている人が,「明朝? 読みにくいんだよ!」みたいなこという人も少数派だと思うし……

とりあえず今のことろ,本サイトでは

  1. 日本語の部分の句読点は全角
  2. フォント指定はこちらからしない

という設定にしてます.体裁が整っていません.

ウェブサイトで明朝体にしたくない最もな理由は,Windows上で表示される文字が微妙だからです.それに尽きます.この世の全員がMacOSもしくはiOSユーザーだったら問答無用に明朝体指定にするのですが……