TROFF(1)

名称
troff - groff テキストフォーマットシステムの troff プロセッサ

書式
troff [-abcivzCERU] [-d cs] [-f fam] [-F dir] [-m name] [-M dir] [-n num] [-o list] [-r cn] [-T name] [-w name] [-W name] [ files... ]

コマンドラインオプションとパラメータの間には、 空白を含めることができます。

解説
本マニュアルでは、GNU バージョンの troff について記述しています。 これは、groff ドキュメントフォーマットシステムの一部です。 本コマンドは UNIX troff と高い互換性を持っている一方で、 多くの拡張がなされています。 この拡張については、 groff_diff(7) を参照してください。 通常 troff は groff(1) コマンドから起動されます。 また groff は、適切な前処理プログラムと後処理プログラムを 適切なオプションを用いて、適切な順序で起動します。

オプション

-a  ASCII 文字のみの近似的な出力を行います。

-b  各警告とエラーメッセージに対するバックトレースを表示します。 これは、警告やエラーの原因を調べるのに有用です。 出力される行番号は必ずしも正しくはありません。 as や am リクエストによって、 troff が行番号を誤認する可能性があるからです。

-c  カラー出力を無効にします (互換モードでは常に無効です)。

-C  互換モードを有効にします。

-dcs
-dname=s
    マクロ c または name を文字列 s と定義します。 c は 1 文字のマクロ名です。

-E  troff のエラーメッセージを一切出力しません。 これは、 tm や tm1 リクエストを用いたマクロパッケージによって標準エラー出力へ表示される メッセージには影響しないことに注意してください。

-ffam
    fam をデフォルトのフォントファミリとして使用します。

-Fdir
    ディレクトリ (またはディレクトリパス) dir 以下のサブディレクトリ devname (name は出力デバイス名) を検索し、その中からフォントファイルと DESC ファイルを探します。 dir は、他のすべてのフォントディレクトリより前に調べられます。

-i  指定されたファイルをすべて処理したあとに、標準入力を読み取ります。

-mname
    マクロファイル name.tmac を読み取ります。 見つからなければ、かわりに tmac.name を試みます。 まず最初に -M コマンドラインオプションで指定されたディレクトリ、続いて GROFF_TMAC_PATH 環境変数で指定されたディレクトリ、 そして現在のディレクトリ (安全でないモードの場合のみ)、 ホームディレクトリ、/usr/share/tmac/、/usr/share/tmac/、 /usr/share/tmac の順に検索します。

-Mdir
    指定したディレクトリ (またはディレクトリパス) dir からマクロファイルを検索します。 これは他のすべてのマクロディレクトリより前に調べられます。

-nnum
    最初のページ番号を num とします。

-olist
    list で指定したページのみを出力します。 list は、コンマで区切られたページ範囲のリストです: n は n ページの出力、 m-n は m ページから n ページまでの出力、 -n は n ページまでの出力、 n- は n ページ以降の出力を意味します。 troff はリストの最後のページを印刷し終えると終了します。

-rcn
-rname=n
    数値レジスタ c または name の値を n とします。 c は 1 文字の名前です。 n は troff で扱える数式です。

-R  troffrc と troffrc-end を読み取りません。

-Tname
    デバイス name 用の出力を生成します。 デフォルトは ps です。 更なる解説は groff(1) を参照してください。

-U  安全でないモード。 これによって以下のリクエストが有効になります: open, opena, pso, sy, pi 。 このオプションが指定されない場合、セキュリティのために これらの危険性のあるリクエストは禁止されます。 またこのオプションによって、現在のディレクトリがマクロ検索パスに追加されます。

-v  バージョン番号を表示します。

-wname
    name で指定した分類の警告を行います。 指定できる警告は、後述の 警告 のサブセクションを参照してください。 例えば、すべての警告を有効にする場合、 -w all とします。 -w オプションは複数指定できます。

-Wname
    name で指定した分類の警告を行いません。 -W オプションは複数指定することができます。

-z  フォーマットした結果を出力しません。

警告
troff が出力する警告は以下のカテゴリに分類されます。 各警告に関連する名前は -w と -W オプションで使用可能です。 また番号は、 warn リクエストおよび .warn レジスタが使用します。 番号は、ビット合成しやすいように常に 2 の冪乗となっています。

ビット | コード | 警告 | ビット | コード | 警告
0 | 1 | char | 10 | 1024 | reg
1 | 2 | number | 11 | 2048 | tab
2 | 4 | break | 12 | 4096 | right-brace
3 | 8 | delim | 13 | 8192 | missing
4 | 16 | el | 14 | 16384 | input
5 | 32 | scale | 15 | 32768 | escape
6 | 64 | range | 16 | 65536 | space
7 | 128 | syntax | 17 | 131072 | font
8 | 256 | di | 18 | 262144 | ig
9 | 512 | mac | 19 | 524288 | color

break	4
    行詰めモードにおいて、行を分割できなかったため、 行の長さよりも短くなりました。 これはデフォルトで有効です。

char	1
    存在しない文字です。 これはデフォルトで有効です。

color	524288
    色に関する警告です。

delim	8
    閉じる方のデリミタがないか、もしくはマッチしませんでした。

di	256
    現在転換がないにもかかわらず、引数なしで di や da を使用しました。

el	16
    対応する ie リクエストのない、 el リクエストです。

escape	32768
    認識できないエスケープシーケンスです。 認識できないエスケープシーケンスがあった場合は、 そのエスケープ文字は無視されます。

font	131072
    存在しないフォントです。 これはデフォルトで有効です。

ig	262144
    ig リクエストによって無視されたテキストの中にある、不正なエスケープです。 これらは、無視されたテキストの中でなければエラーとなっているものです。

input	16384
    不正な入力文字です。

mac	512
    未定義の文字列、マクロ、転換を使用しました。 未定義の文字列、マクロ、転換を使用した場合、 その文字列は自動的に空に定義されます。 このため多くの場合、各名前に対する警告は、たかだか 1 回だけです。

missing	8192
    必要な引数が足りないリクエストです。

number	2
    不正な数式です。 これはデフォルトで有効です。

range	64
    引数が範囲を越えています。

reg	1024
    未定義の数値レジスタを使用しました。 未定義の数値レジスタを使用した場合、 そのレジスタは自動的に値 0 に定義されます。 このため多くの場合、特定の名前に対する警告は、たかだか 1 回だけです。

right-brace	4096
    数字が期待される場所で \} が使用されました。

scale	32
    意味のないスケールインジゲータです。

space	65536
    リクエストもしくはマクロとそれらの引数との間に空白がありません。 この警告は、最初の 2 文字が定義された名前であるような、 2 文字より長い未定義の名前があった場合に起こります。 この時、リクエストもしくはマクロは起動されません。 この警告が発せられる時、どのようなマクロも自動的には定義されません。 これはデフォルトで有効です。 この警告は互換モードでは起こりません。

syntax	128
    数式中に疑わしい文法があります。

tab	2048
    タブ文字の使い方が不適切です。 数字が期待される場所でタブを使用したか、 またはクォートされていないマクロの引数中でタブ文字を使用しました。

警告のグループを指定する名前もあります:

all di, mac, reg を除くすべての警告を指定します。 これは、伝統的なマクロパッケージを使用する際に有用な警告の すべてをカバーするよう意図されています。

w   すべての警告を指定します。

環境変数

GROFF_TMAC_PATH
    マクロファイルを検索すべきディレクトリ名の、コロン区切りのリストです。 troff は、それらの前に -M オプションで指定されたディレクトリを検索し、 次に本環境変数で指定されたディレクトリ、最後に標準のディレクトリ (現在のディレクトリ (安全でないモードの場合)、ホームディレクトリ、 /usr/share/tmac, /usr/share/tmac, /usr/share/tmac) を検索します。

GROFF_TYPESETTER
    デフォルトの出力デバイス。

GROFF_FONT_PATH
    devname ディレクトリを検索すべきディレクトリ名の、コロン区切りのリストです。 troff は、まず -F オプションで指定されたディレクトリを検索し、次に本環境変数で指定された ディレクトリ、最後に標準のディレクトリ ( (/usr/share/groff_font, /usr/share/groff_font, /usr/share/groff_font) を検索します。

関連ファイル
/usr/share/tmac/troffrc 初期化ファイル (他のマクロパッケージの前に呼び出されます)

/usr/share/tmac/troffrc-end
    初期化ファイル (他のマクロパッケージの後に呼び出されます)

/usr/share/tmac/name.tmac
/usr/share/tmac/tmac.name
    マクロファイル

/usr/share/groff_font/devname/DESC
    デバイス name 用のデバイス記述ファイル

/usr/share/groff_font/devname/F
    デバイス name のフォント F 用のフォント記述ファイル

troffrc と troffrc-end は、セキュリティのためデフォルトでは ( -U オプションが指定されていても) 現在のディレクトリと ホームディレクトリのどちらからも検索されない事に注意してください。 必要な場合は、 -M コマンドラインオプションもしくは GROFF_TMAC_PATH 環境変数を使用することで、これらのディレクトリを検索パスに加えられます。

作者
Copyright (C) 1989, 2001, 2002 Free Software Foundation, Inc.

この文書は、FDL (GNU Free Documentation License) バージョン 1.1 か それ以降のものに基づいて配布されています。 あなたは、システム上に FDL のコピーを受け取っているはずですが、 これは からもオンラインで入手可能です。 この文書は James Clark によって書かれ、 と によって修正されました。

この文書は GNU の roff ディストリビューションである groff の一部です。

関連項目

groff(1)
    groff システムの主要プログラムです。 これは troff を包むラッパとなっています。

groff(7)
    groff 言語の説明です。 これには、素の groff の持つすべての定義済みのリクエスト、レジスタ、エスケープについての 簡潔ですが完全なリファレンスが含まれています。 コマンドラインからは、以下のように呼び出します。

        man 7 groff

groff_diff(7)
    groff 言語と 古典的な troff 言語の違いです。 現在のところ、これが groff システムで実際の文書そのものです。

roff(7)
    groff や他の roff システムの概要です。 これにはさらなる関連文書へのポインタも含まれています。

groff info ファイル ( info(1) を参照) は、1 文書で groff のすべての説明をしています。