|
HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > g > groff_tmac - ファイルのフォーマットと規約の説明 groff_tmac - ファイルのフォーマットと規約の説明 - Linux コマンド集 一覧表名称groff_tmac - roff 清書システム内にあるマクロファイル 解説roff (7) 清書システムは、特殊な用途のドキュメントに適した マクロパッケージを提供しています。それぞれのマクロパッケージは、 そのパッケージの tmac ファイル と呼ばれるファイル中にマクロおよび定義を格納しています。 tmac という名前は、 ` T roff MAC ros'を縮めたものです。 tmac ファイルは、普通の roff ソースドキュメントです。ただし、 通常このファイルには定義および設定コマンドしか含まれておらず、 テキストは入っていません。tmac ファイルはすべて tmac ディレクトリという 1 つあるいは少数のディレクトリ内に 保管されています。 名称付け古くからある roff システムには、奇妙な名称付けの体系が ありました。 マクロパッケージの名称が で始まっている場合には、この文字は省略されました。例えば、 マニュアルページ用のマクロパッケージ man は an と呼ばれ、そのパッケージのマクロファイルは tmac.an と呼ばれました (現在のバージョンの groff では、このファイルは代りに an.tmac と呼ばれることに注意してください)。 似たような理由で、名称が
で始まらないマクロパッケージは、
をつけて表されることがよくありました。例えば、
tmac.doc
に対応するパッケージは、
mdoc
と呼ばれました。なぜなら、このパッケージをアクティブに
するためのコマンドラインは、次のように表されるからです。
現在の
groff(1)
のバージョンでは、パッケージ名に
が付こうが付くまいが、この悩ましいマクロパッケージの名称付け体系を
どちらも提供しています。ですので、
groff
では、
man
マクロパッケージは、次のいずれでも指定可能です。
システムでどのマクロパッケージが利用可能であるかを判別するのに 最も簡単な方法は、 tmac ディレクトリ群の中身を調べることです。 例えば、 tmac. anything または anything .tmac と呼ばれるファイルは、 anything という名前のマクロパッケージを決定しています。 groff では、マクロパッケージの大部分は、 古くからあるパッケージに対して を先頭に付けた groff_<name> (7)という名前のマニュアルページで説明がされています。 取り込みドキュメント中でマクロパッケージを使うための方法はいくつかあります。 実行時に、groff のオプション を用いてマクロファイル name .tmac 内の定義を 名称付け のセクションで述べたように利用可能にします。 このファイルが見付からない場合、 tmac. name が探されます。 groff リクエスト あるいは を用いてマクロファイルをドキュメントに取り込むことも可能です。 については、マクロファイルのフルパスでのファイル名を指定しなくては いけません \(em そのマクロファイルが保存されているディレクトリを 含む必要があります。 マクロファイルが tmac ディレクトリ群のどれか 1 つに格納されている場合、 代わりに を使用するほうが便利です。なぜなら、このリクエストは tmac パスを 探索してファイル名を見つけるからです。 更に、インクルードされるファイルの名前が name .tmac という書式の場合でこれが見付からない場合、 は代りに tmac. name をオープンしようとします。また、この逆も行います。 および リクエストを解決するために、roff プリプロセッサ が呼ばれなくてはならないことに注意してください。 ただし、インクルードされるファイルが前処理が必要な場合に限ります。 これは、コマンドライン上でパイプラインから直接呼ぶか、または の オプションを使うかすればできます。 約束事 のセクションで述べているように、 プリプロセッサワード中に文字 を入れても良いです。 例えば、マクロファイルが /usr/share/tmac/macros.tmac に保存されており、 docu.roff という名前のドキュメントで使用されているとします。 実行時において、このドキュメントに対するフォーマッタ呼び出しは
次のように行います。
.ft CR
.ft P
ドキュメント内に直接マクロファイルを取り込むには、
どちらの場合でも、フォーマッタは
.ft CR
約束事
最近の roff 清書システムの多くでサポートされている約束事があります。 次に述べられているような プリプロセッサワード がそれです。 ドキュメントの 1 行目がコメントである場合、 最初の単語 (コメント文字および空白の後) は プリプロセッサ ワード で構成されます。 これはつまり、このワードの文字が、ドキュメントを整形する際に 起動しなくてはならないプリプロセッサコマンドの省略形であると 解釈されるということです。 ほとんどの場合、プリプロセッサのオプションに対応した文字だけが 認識されます。それは、 です ( roff (7) を参照)。 さらに、ユーザへの良き忘備録として書いておきますが、 フォーマッタによっては ( man (1) プログラムのように) プリプロセッサワードで指定されたプリプロセッサを 自動的に起動させることまでもできるものがあります。ただし、このことを あてにしてはいけません。 マクロファイルを記述するマクロファイルを記述するのは簡単です。マクロ、文字列、レジスタなどの セットを設計してください。そしてそれを 1 つのファイルに 保存してください。 記述したマクロを使用するドキュメントは、 取り込み セクションで述べたように リクエストを使ってマクロを取り込みます。 tmac の機能を使用するには、マクロファイル whatever .tmac (または tmac. whatever ) を呼び出し、tmac パスのどれかのディレクトリにファイルを置きます。 関連ファイル セクションを参照してください。 そうすると、ドキュメントは 取り込み セクションで述べたように リクエストあるいは オプションを使ってマクロファイルを取り込むことができます。 もしあなたが書いたマクロが一般用途に使えるかもしれないものなら、 groff メンテナに連絡を取って、そのマクロが groff の contrib ソースディレクトリに含まれるようにしてください。 マクロを書く際には、いくつか一般的なガイドラインがあれば役に立つ
でしょう。
関連ファイルtmac メカニズムを使用したいマクロ名はすべて、 name .tmac または tmac. name の書式に従って名付けられなければなりません。 マクロファイルは、 tmac ディレクトリ群 に保存されています。このディレクトリ群すべてが 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 システムの詳細すべてについて信頼できる情報源は、groff の info (1) ファイルです。 groff の概要については、 roff (7) および groff ソースパッケージ中の README ファイルを参照してください。 groff tmac マクロパッケージは、 groff_man (7), groff_mwww (7), groff_mdoc (7), groff_mdoc.samples (7), groff_me (7), groff_mm (7), groff_mmroff (7), groff_ms (7) です。 groff の言語については groff (7) で、フォーマッタについては groff (1), troff (1) で説明されています。 ファイルシステム階層標準 (FHS) は
http://www.pathname.com/fhs/
で入手可能です。
|
|