その他の小技

なんでもありの小技集です。

まず、箇条書きの環境をカスタマイズしてみましょう。
ナンバリングつきの箇条書きはenumerate環境、記号つきはitemize環境を用います。さらにenumerate.styを用いると、enumerate環境を簡単にカスタマイズすることができます。


プリアンブル /
\usepackage{enumerate}

romannum環境の定義 /
\newcounter{rmnum}
\newenvironment{romannum}
{\begin{list}{{\upshape (\roman{rmnum})}}%
{\usecounter{rmnum}%
\setlength{\leftmargin}{18pt}%
\setlength{\itemindent}{12pt}}}{\end{list}}

出力 /
(i)   (1項目め)
(ii)   (2項目め)
(iii)   (3項目め)


新しいカウンタrmnumを定義して使っています。\romanは、カウンタの値を小文字のローマ数字で出力するための命令です。\setlengthの中の値を変えることで、インデント量を変更することができます。
使い方はenumerate環境とまったく同じですので、そちらを参照してください。

それではもう少し練習してみましょう。今度は、アルゴリズムを記述するための環境を作ってみます。


algstep環境の定義 /
\newcounter{alnum}
\newenvironment{algstep}
{\begin{list}{{\upshape\bf Step~\arabic{alnum}:}}%
{\usecounter{alnum}%
\setlength{\leftmargin}{28pt}%
\setlength{\itemindent}{12pt}}}{\end{list}}

出力 /
Step 1:   (1項目め)
Step 2:   (2項目め)
Step 3:   (3項目め)


次は、数式環境における「負の空白」についてみてみましょう。
これは\! という制御綴りで、\mskip -3muにあたります(関連タグはこちら)。私は、ローマ数字の大文字を書くときに用いることがあります。たとえばローマ数字の2は、アルファベットのIを2つ並べれば良いのですが、IIのように間に空白が空いてしまいます。この空白を無くしてUのように出力したい場合には、次のように書きます。


ローマ数字T,Uの定義 /
\newcommand{\RI}{\ensuremath{\rm I}}
\newcommand{\RII}{\ensuremath{\rm I \! I}}


ところで、LaTeXの解説本によっては、多重積分(面積分など)の記号を書くときにこの「負の空白」を用いればよい、という記述がみられます。たとえば、『LaTeX2e階梯』では\int \! \! \! \intのように3つ用いることが推奨されています。ですが、AMS-LaTeXでは\iintという制御綴りがもともと用意されていますので、そちらを用いた方がよいでしょう。
同様に、積分記号3つなら\iiint、4つは\iiiint、それ以上の場合は\idotsintを用います。

(2001.8.16)

Back