TeXの記憶(72) — bmatrixの両側のアキを調整する

AMSLaTeXでは行列を表示するためのbmatrixやpmatrixがあります。数式のある組版ではいつもamsmath.styを利用しているのでarray環境を使わずにbmatrix(やpmatrix)を使っています。

入力も少なくて便利なbmatrixなのですが、両側のブラケットと中の要素の間隔がちょっと狭く感じるときもあります。そこで両側のアキを調整してみました。

1013

bmatrixやpmatrix自身と関連するマクロは手元のバージョンでは

texmf-dist/tex/latex/amsmath/

の中の、amsmath.styとamstex.styで定義されています。

これらを覗いてみると \env@matrix と \endmatrix で両側のブラケット(や丸カッコ)との間を\arraycolsepの分だけ詰めていいました。そこで、詰める分をちょっと減らしてやれば目的のマクロができあがります。修正した以下の4行だけ一時的なマクロファイルに入れました。

\def\env@matrix{\hskip -.4\arraycolsep
  \let\@ifnextchar\new@ifnextchar
  \array{*\c@MaxMatrixCols c}}%
\def\endmatrix{\endarray \hskip -.4\arraycolsep}

コメント