改行・改段落の扱い

LaTeX で初心者がいちばん戸惑うのが「改行」と「改段落」の扱いです。鍵はたった二つ。空行を入れると新しい段落が始まる こと、そして **\\ は段落ではなく「行」を折る命令** であること。この区別さえ押さえれば、\\ を連打して段落を分ける典型的な失敗を避けられます。あわせて字下げ(インデント)と段落間の空きの調整方法も見ていきます。

空行が段落を区切る

LaTeX では、1 行以上の空行(空白だけの行を含む)が段落の区切り になります。逆に言えば、ソース中で 1 回だけ改行しても、それは出力では ただの空白 1 つ として扱われ、文はつながったままです。どこで行を折るかを決めるのは LaTeX 自身で、あなたが原稿で押した改行キーは最終的な行の折り位置に影響しません。これは「ソースの見た目」と「出力の見た目」を切り離す LaTeX の根本的な考え方で、空白の細かな扱いは「記法のルール」のページでも扱います。

次のソースを見てください。前半は 3 行に分けて書いていますが、出力では切れ目なく 1 つの段落になります。空行を 1 つ入れたところで、初めて段落が変わります。なお空行をいくつ重ねても効果は同じで、段落が一つ増えるだけです。

document.tex
これらの 3 行は
ソースでは改行していますが、
出力では 1 つの段落になります。

空行をはさんだので、ここから新しい段落です。

空行のかわりに **\par** 命令を書いても、まったく同じく段落が変わります。\par は空行が使えない場面(たとえば自作命令の定義の中)で役立ちますが、ふだんの本文では 空行のほうが読みやすい ので、そちらが好まれます。逆に、\section{...} の引数の中や数式モードの中では空行を入れられず、入れるとエラーになります。

行の改行と段落の改行は別物

ここが最重要点です。**\\(バックスラッシュ 2 つ)と \newline は、段落の中で「行」を強制的に折る命令** であって、段落を区切る命令ではありません。\\ は「ここで行を終える」よう印を付けるだけで、段落モードを抜けたり段落を終えたりはしません。そのため、段落を分けるつもりで \\ を打つのは誤りです。公式リファレンスも「\\ で新しい段落を始めてはいけない。代わりに 2 つの段落のあいだに空行を置くこと」と明言しています。

なぜ問題かというと、\\ で段落を分けても 字下げが付かず、段落間の空きも入らず、さらに行末が両端揃え(ジャスティファイ)されないまま になるからです。結果として「なんとなく改行はされるが、見た目が段落になっていない」中途半端な組版になります。段落の切れ目は必ず空行(または \par)で、行の途中での改行だけ \\ を使う、と覚えましょう。

\\ には便利な拡張があります。\\[2ex] のように 角括弧で長さを足す と、その行のあとに余分な縦の空きが入ります(負の値も可)。これは表(tabular)や別行立ての数式環境で行間を空けたいときによく使います。また \\* は、その改行位置での 改ページを禁止 して 2 行を同じページに保ちます。なお、折る「行」が存在しない場所(段落の先頭など)で \\ を使うと、There's no line here to end というエラーになります。

では \newline\linebreak はどう違うのでしょう。段落モードでは **\newline\\ とまったく同じ(行末を引き伸ばさずにそのまま折る)です。一方 \linebreak は、その位置で折ると同時に行の空白を引き伸ばして右マージンまで両端揃え** します。だから無理に揃えると単語間が間延びすることがあります。\linebreak[n](n は 0〜4)と書くと折りたい強さを指定でき、4 は強制、1 は「できれば」程度の弱い要望になります。表の中では \newline がセル内だけの改行、\\ が行全体の改行、という違いも覚えておくと役立ちます。

字下げ(インデント)を操る

LaTeX は既定で 各段落の最初の 1 行を字下げ します。ただし、見出し(\section など)の直後の最初の段落だけは字下げしません。これは英文の伝統的な組版にならった挙動です。日本語組版では全角の字下げが普通なので、和文クラスではこのあたりの既定値が調整されています。

個々の段落で字下げを切り替えるには二つの命令を使います。**\noindent を段落の先頭に置くと、その段落の字下げを抑制します(中断した段落を続けるときにも使います)。逆に \indent** は字下げを強制し、内部的には \parindent 幅の空の箱を出力します。どちらも段落の途中で使っても効果はありません(途中ではすでに字下げの判断が済んでいるため)。

字下げの量そのものは長さパラメータ **\parindent で決まります。標準クラス(1 段組)の既定値は、本文 10pt で 15pt、11pt で 17pt、12pt で 1.5em、2 段組では 1em です。段落のあいだに入る縦の空きは長さ \parskip で、標準クラスの既定値は 0pt plus1pt**(ほぼゼロで、わずかに伸縮可)です。値を変えるには \setlength を使い、ふつうはプリアンブルに書きます。

latex
\setlength{\parindent}{2em}   % 字下げを 2em に
\setlength{\parskip}{6pt}      % 段落間に 6pt の空き

ブロック段落と parskip パッケージ

ビジネス文書や Web 風のレイアウトでは、字下げをやめて 段落のあいだを空きで区切る「ブロック段落」がよく好まれます。素朴にやるなら、プリアンブルで \parindent を 0 にして \parskip に空きを与えます。次がその最小形です。

latex
\setlength{\parindent}{0pt}
\setlength{\parskip}{\baselineskip}

ただし \parskip を手で大きくすると、目次・箇条書き・図表まわりなど 段落の空きを流用している箇所まで間延び してしまう副作用があります。これを綺麗に処理してくれるのが **parskip パッケージ** で、\usepackage{parskip} と書くだけで済みます。既定では \parindent を 0pt に、\parskip.5\baselineskip plus 2pt に設定し、目次などの乱れも抑えます。plus 付きの伸縮する空きは、LaTeX が より良い改ページ位置を見つける のにも役立ちます。字下げを残したい場合は \usepackage[indent]{parskip} のようにオプションで指定できます。

改ページ・非分割スペースとの違い

段落の区切りと 改ページ は別物です。**\newpage はその場でページを終えて次のページに移りますが、段落を分けるわけではありません。\clearpage** はさらに、保留中の図表(フロート)をすべて出力してからページを変えます。どちらも「段落を変えたい」目的では使わないでください。改行・改ページの細かな調整は「改行位置の調整」「改ページの調整」のページでさらに扱います。

逆に「折ってほしくない」ための道具もあります。チルダ **~改行されない空白**(非分割スペース)で、Fig.~3Dr.~Smith のように、空白の前後を必ず同じ行に保ちたいときに使います。**\, は数値と単位のあいだなどに入れる細い空き(thin space)で、いずれも 行や段落を折る命令ではありません**。これらは見た目の微調整のための空白であり、改行・改段落とは役割がはっきり違います。