roff(7) FreeBSD 一般コマンドマニュアル

roff

前のページ 上に戻る 次のページ

roff



解説

       roff   と は清書プログラム群の一般名称です。 troff, nroff,
       groff などの名前で知られています。

       roff 清書システムは、整形用言語、マクロパッケージ、プリ プ
       ロセッサ、出力デバイス用ポストプロセッサ、ユーザ用フロント
       エンドプログラム、そして変換ツールから構成されています。

       今日、最も一般的な roff システムはフリーソフトウェアでの実
       装である groff (`GNU roff') です。groff より前の実装は「古
       典」 (1973 年まで遡ります) と呼ぶことにします。

       groff は、古典である祖先のシステムと下位互換性があり ま す
       が、数多くの拡張がされており、今もなお進化し続けています。
       ほとんどすべての計算機システムで利用できるため、今日では事
       実上の roff 標準となっています。

       そ の古さにもかかわらず、roff は今日でも広く使用されていま
       す。例えば、UNIX システムのマニュアルページ (manページ) は
       roff  で書かれています。テキストデバイスに対する roff 出力
       は、いまだに並ぶもののないほど優れています。グラフィカルな
       出力も他のフリーの清書プログラムと同等の品質を持っています
       し、ものによっては商用システムのものよりも優れているときも
       あります。

       このドキュメントでは概要のみを示し、詳細なドキュメントにつ
       いてはポインタを示します。

       このドキュメントは維持されておらず、時代遅れになっている可
       能 性 が あります。正確なドキュメントが必要なら groff info
       ファイルを参照してください。これには詳細で現実に即した正確
       なリファレンス情報が含まれています。


整形用言語

       roff   システム用の言語を指す 3 つの用語があります。 troff
       言語は、 roff の古典的な部分に重点を置くときに使われます。
       groff  言語は GNU 拡張を含んでおり、それに対して roff 言語
       は一般的な用語です。

       groff 言語のすべての部分について記述されたドキュメントの一
       次情報源は groff info ファイルです。 groff(7) マニュアルペ
       ージでは、定義済みの言語要素すべてについて簡潔な説明をして
       います。

       roff  を使用したドキュメントは、普通のテキストファイルを整
       形用要素で修飾したものです。マクロパッケージの 1 つを 使っ
       て高品質のドキュメントを書くのはとても簡単なことです。マク
       ロパッケージは高水準プログラミング言語のようなものであり、
       そ れに対して素の roff 言語は C やアセンブラのような低水準
       言語にたとえられます。

       roff 言語は低水準のリクエスト、マクロ定義、エスケープシ ー
       れ ます。それには、 \( を用いた非 ASCII 文字の挿入、 \* を
       用いた文字列の内容の挿入、 \n を用いたレジスタ変数の挿入、
       \f を用いたフォントの変更、 \" を用いた文中のコメント、 \\
       のような特殊な制御文字のエスケープ、その他多くの機能が含ま
       れます。


フォーマッタ

       フォ ーマッタは groff ドキュメントを解析し、それを特殊なデ
       バイスに合った形式に変換するためのフロントエンドプログラム
       で す。 古 典 的 な roff にはフォーマッタが 2 つあります。
       nroff がテキストデバイス用で、 troff がグラフィカルデバ イ
       ス用です。

       こ れらのプログラムは groff 実装でもまだ存在しますが、通常
       は groff と呼ばれるプログラムを通してアクセスされます。 こ
       れ によって、古くからの機能を 1 つのプログラムに結合し、拡
       張できるのです。 groff には多くのコマンドラインオプショ ン
       が あります。その大部分が troff からもらい受けたものです。
       このオプションの密林から逃れるべく、ユーザフレンドリなユー
       ティ リティ grog (`groff guess' からとられた名前です) が作
       成されました。これは、どの引数を使うべきかを、ドキュメント
       から推測して、適切なコマンドラインを表示します。完璧なもの
       ではありませんが、取り掛かりには良いでしょう。


プリプロセッサ

       groff でもまだ利用可能な古典的プリプロセッサです。

              eqn    数式を埋め込むためのものです。
              grap   グラフィカル要素を構成するためのものです (こ
                     の プリプロセッサは groff と一緒にはついてき
                     ません。追加パッケージです)。
              grn    gremlin 図を埋め込むためのものです。
              pic    図を作成するためのものです。
              refer  参考文献の参照用です。
              soelim 他の roff ファイルを埋め込むためのものです。
              tbl    長方形のテーブル用です。

       これらのプリプロセッサはそれぞれ独自の言語を定義しており、
       プリプロセッサに通されると、roff コードに変換されます。 で
       すので、これらの言語で書かれた部分は roff ドキュメントに埋
       め込んであっても良いのです。こうした拡張ドキュメントは、実
       際 のフォーマッタにかけられる前に、対応する 1 つ以上のプリ
       プロセッサに通されます。

       プリプロセッサプログラムは、プリプロセッサ用に限定されてい
       る ド キュメントの部分を抽出し、変換します。プリプロセッサ
       は、それらのプログラム名を使った UNIX パイプラインで呼び出
       す ことも、もしくは groff オプションで自動的に呼び出すこと
       もできます。



                  |    refer      |        -R        |
                  |     tbl       |        -r        |
                  |    soelim     |        -s        |
                  +---------------+------------------+


マクロパッケージ

       マクロパッケージは、ある特殊な種類のドキュメントを簡便な方
       法でフォーマットするのに適したマクロの集合です。マクロパッ
       ケージによって、roff の使い勝手が格段に良くなります。 パッ
       ケージのマクロ定義は、 name.tmac (または tmac.name) と呼ば
       れるファイルに保管されています。ここで、 name はこのパッケ
       ージに対する roff 内部での名称です。すべての tmac ファイル
       は、 1 つあるいは少数のディレクトリ中の標準の場所に保管 さ
       れています。

       ドキュメントが使用するマクロパッケージは、フォーマッタのコ
       マンドラインオプション -m で指定し、例えば  troff -m  namegroff -m name とします。マクロパッケージの命名およびそ
       の置き場所についての一般的な詳細は groff_tmac(5) にあり ま
       す。

       古 くからある有名なマクロパッケージは man, mandoc, mdoc が
       マニュアルページ用、そして me, ms, mm が書籍、記事、そして
       手紙用です。これらのコレクションのほかにも、groff はさまざ
       まな用途の新しいマクロパッケージを提供しており、その数は増
       加しています。例えば、他のファイル形式を統合したり変換した
       りするものです。


ファイル名の拡張子

       マニュアルページ (man ページ) はファイル名の拡張子としてセ
       クション番号をとります。例えば、このドキュメントのファイル
       名は roff.7 です。つまり、このドキュメントはマニュアルペー
       ジの section 7 に保存されているということです。

       古 典 的なマクロパッケージは、パッケージ名を拡張子にとりま
       す。例えば、 me マクロパッケージを使ったドキュ メ ン ト は
       file.me  となり、 mm マクロパッケージに対しては file.mmms マクロパッケージに対しては file.mspic ファイルに 対
       しては file.pic といった具合です。


編集方法

       ほとんどのテキストエディタは roff を使ったドキュメントの編
       集をサポートしています。特に使い勝手が良いのが、Emacs   エ
       ディタとその仲間での nroff-mode です。


環境変数

       GROFF_TMAC_PATH
              コ ロ ン 区 切 り の 検 索 ディレクトリリストです。
              groff_tmac(5) を参照してください。

       GROFF_TYPESETTER
              デフォルトのデバイスです。

       かもしれません。以降、前者を <groff_font_dir> として、後者
       を <groff_macro_dir> として表現します。


       <groff_macro_dir>/troffrc
              troff 用の初期化ファイル

       <groff_macro_dir>/name.tmac
       <groff_macro_dir>/tmac.name
              マクロファイル

       <groff_font_dir>/devname/DESC
              name デバイス記述ファイル

       <groff_font_dir>/devname/F
              name デバイスの F フォント用のフォントファイル

       最後に、ローカルのマクロディレクトリ /usr/share/tmac  は、
       サイト固有のマクロとパッケージ用に提供されます。デフォルト
       では、メインのマクロディレクトリの前にここが検索されます。


バグ

       groff ドキュメントは現在も発展途上です。ドキュメント間で一
       時的に小さな食い違いが生じる可能性があります。


作者

       このドキュメントは groff すなわち GNU roff 配布物の一部 で
       す。 Bernd Warken <bwarken@mayn.de> が書きました。

       このドキュメントは FDL (GNU Free Documentation License) バ
       ージョン 1.1 以降の条項のもとに配布されています。FDL の コ
       ピーをシステム上に持っているはずです。また、これはオンライ
       ン

              <http://www.gnu.org/copyleft/fdl.html>
       でも入手可能です。


関連項目

       主な情報源は、 groff info(1) ファイルです。

       定義済みの groff 言語要素についても groff(7) マニュアル ペ
       ージに記載があります。

       フォ ーマッタおよびそのラッパについては groff(1), grog(1),
       nroff(1), troff(1) に記載があります。

       出力デバイス用のポストプロセッサについては grodvi(1), gro-
       html(1),  grolbp(1), grolj4(1), grops(1), grotty(1) に記載
       があります。

       標準プリプロセッサについ て は  eqn(1),  grn(1),  grap(1),
       pic(1), refer(1), soelim(1), tbl(1) に記載があります。
       groff 開発グループとの連絡の取り方や参加の仕方についての詳
       細も載っています。

       古典的なドキュメントは今でもオンラインで入手可能です。特に
       有益なのが、かのフリーである UNIX 7 用のベル研オリジナルの
       会 報 です。これは http://cm.bell-labs.com/cm/cs/cstr.html
       にあります。そして、故 Richard S. Stevens のコレクションが
       http://www.kohala.com/start/troff/ にあります。



Groff Version 1.17.2      6 August 2001                   ROFF(7)

ABELNET VPSサービス