tail head cat sleep
QR code linking to this page

manページ  — FMT

名称

fmt – 簡単なテキストフォーマッタ

内容

書式


fmt [-cmnps] [-d chars] [-l num] [-t num] [goal [maximum ]| width | -w width] [file ...]

解説

fmt ユーティリティは簡単なテキストフォーマットプログラムです。 引数として name が指定されていればその名前のファイルを、 指定されていなければ標準入力を読み込み、 入力した行を次々に連結していき、 maximum を超えない範囲で、 goal で指定した長さに近い文字数に整形します。 デフォルトでは、 goal の長さは 65、 maximum の長さは goal に 10 を加えたものです。 または、前にハイフンを付けるか -w を使用することにより、単一の width パラメータを指定可能です。 例えば、 "fmt -w 72", "fmt -72", "fmt 72 72" は同じ出力となります。 入力行の先頭に空白 がある場合は、整形した出力の先頭にも空白が置かれ段づけされます。 また、空白行や、文字と文字の間の空白の数も、出力に受け継がれます。 行が結合されたり分割されるのは、空白においてのみです。 つまり、複数の単語が結合されたりハイフネーションされることはありません。

オプションは次の通りです:
-c
  テキストを中央寄せさせます。 この場合、他のほとんどのオプションは無視されます。 行の分割や結合は行われません。
-m
  入力に含まれるメールヘッダ行を目立つように整形しようとします。
-n
 amp;.’ (ドット) 文字で開始する行を整形します。 通常では、 fmt は、 nroff(1) との互換性のために、このような行を詰めます。
-p
  インデントされた段落を許します。 -p フラグ無しでは、行頭の空白数が変わると、新規段落が開始します。
-s
  行中の空白を潰し、複数の空白文字が単一の空白となるようにします (文末では、二つの空白となります)。
-d chars
  chars を文末文字として認識します (他の文字はそうでないと認識します)。 デフォルトでは、文末文字は終止符 (‘amp;.’) 疑問符 (‘amp;?’) 感嘆符 (‘amp;!’) です。 文字によっては、シェルから守るために、 エスケープが必要であることを覚えておいてください。
-l number
  各出力行の先頭の複数の空白をタブで置き換えます。 各 number 個の空白が、単一のタブで置き換えられます。 デフォルトは 8 です。 number が 0 である場合、空白は維持されます。
-t number
  入力ファイルのタブが、 number 個の空白をタブストップに仮定していると仮定します。 デフォルトは 8 です。

fmt ユーティリティは、メールメッセージを送信する前に整形するために役立ちますが、 他の簡単なタスクのためにも使うことができます。たとえば、 ex(1) のビジュアルモード(すなわち vi(1)) のなかで、次のコマンドを入力すると、 パラグラフを整形してくれます。

    amp;!}fmt

環境変数

environ(7) に記述されているように、 LANG, LC_ALL, LC_CTYPE 環境変数は fmt の実行に影響を及ぼします。

関連項目

fold(1), mail(1), nroff(1)

歴史

fmt コマンドは BSD 3 から登場しました。

このバージョンは完全に書き直したもので、 FreeBSD 4.4 に登場しました。

作者

Kurt Shoens Liz Allen ( goal の長さの概念を導入) Gareth McCaughan

バグ

このプログラムは、簡単で高速であるようにデザインされました。もっと複雑 な整形には、標準的なテキストプロセッサを使うのが適しています。

インデントされた段落の最初の行がとても長い場合 (goal の長さの 2 倍よりも長い場合)、 出力のインデントが誤りとなる可能性があります。

どの行がメールヘッダでありどれがそうでないかの判断を、 fmt ユーティリティが絶対に間違えないということはありません。


FMT (1) August 2, 2004

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

It's a UNIX system, I know this!
— Lex Murphy, Jurassic Park