utte

fmt 文章を指定した幅に整形する

fmt [オプション] [ファイル...]

試してみる

主なオプション

-w 幅1行の最大の幅を指定する(既定は75)
-s長い行を分割するだけにして、短い行はつなげない
-u単語の間を1つの空白にする
-p 接頭辞指定した文字列で始まる行だけを整形する
-t段落の最初の行だけ、2行目以降と字下げを変える

解説

基本

fmt は、テキストの段落を読み、指定した幅に収まるように改行し直します。短い行はつなげ、長い行は折り返します。メールの本文や README の文章を整えるときに使います。

段落の判定

空行が、段落の区切りです。段落をまたいだ結合はしません。段落内の字下げは、保たれます。

幅の既定値

-w の既定は75桁です。実際には、その93%ほどを目標(-g)にして折り返すので、行の長さは、指定した幅より少し短めになります。

日本語について

fmt は、単語を空白で区切る英語のような文章向けです。日本語には空白がないので、うまく折り返せません。日本語の長い行は、折り返しのほか、fold などを使うことになりますが、これも文字の途中で切ることがあります。

似たコマンド

fold は、単語を気にせず、指定した幅で機械的に折り返します。fmt は、単語の途中では折り返しません。

関連するコマンド

LinuC 101の出題範囲