refer コマンド

目的

文書内で参考資料を見つけ、その資料を文書に挿入します。

構文

refer [ -b ] [ -e ] [ -P ] [ -S ] [ -a [ Number ] ] [ -B Label.Macro ] [ -c Keys ] [ -f Number | -k Label | -l Letter, Digit ] [ -n ] [ -p Reference ] [ -s Keys ] [ File ... ]

説明

refer コマンドは、nroff または troff コマンドのプリプロセッサーです。refer コマンドは、脚注または巻末の注に関する参照を検索してフォーマットします。また、このコマンドは、適切な書式で入力されたスタンドアロン参考文献一覧などのデータに索引を付け、検索し、ソートして出力するように設計された一連のプログラムの基礎となります。

引用が不完全であってもキーワードが十分に正確であれば、refer コマンドは、参考文献データベースを検索し、タイトル、著者、定期刊行物などのどこかにこれらのキーワードを持つ参照がないか調べます。 入力ファイル (そうでなければ標準入力) は、.[ (ピリオド、左大括弧) と .] (ピリオド、右大括弧) 区切り文字で囲まれた行を除き、標準出力にコピーされます。区切り文字で囲まれた行は、キーワードを含むものと見なされ、参考文献データベースからの情報で置換されます。ユーザーは、別のデータベースを検索したり、特定のフィールドを上書きしたり、新規フィールドを追加することもできます。ソースがどこであれ、参照データは、troff コマンド・ストリングのセットに割り当てられます。ms マクロ・パッケージなどのマクロ・パッケージは、これらの文字列から生成された完全な参照テキストを印刷します。デフォルトでは、参照には脚注番号のフラグが付きます。

独自の参照を使用する場合は、それらを例のセクションで説明するフォーマットにします。これらの参照にアクセスするには、-p フラグを使用するか、REFER 環境変数をそれらの参照ファイルに設定します。refer コマンドを使用する前に、参照に対して indxbib コマンドを実行すると、参照の検索速度を増すことができます。索引を付けなければ、線型検索が実行されます。refer コマンドをプリプロセッサー・コマンド (eqnneqn、または tbl コマンド) のいずれかと一緒に使用する場合は、パイプ接続を介して渡されるデータ量を最小に抑えるために、最初に refer コマンドを発行しなければなりません。

注: 参照ファイルを編集する場合、そのファイルに対して indxbib コマンドを再発行しなければなりません。indxbib コマンドを使用しない場合は、 その参照ファイルに関連する .ia.ib.ic、および .ig ファイルをすべて除去してください。これらのファイルを除去しないと、 refer コマンドから「too many hits」というエラー・メッセージが表示されます。

refer コマンドおよびそれに関連するプログラムは、ブランク行で区切られたレコードからなる参照ファイルから入力されることを予期します。レコードとは、それぞれに 1 種類の情報が入っているフィールド (行) の集合体です。フィールドは、先頭の % (パーセント記号) の後にキー文字、スペース文字、およびフィールドの内容が続く行で始まり、最後にフィールドの内容を持つ行で開始し、% (パーセント記号) で始まる次の行まで継続します。フィールドの出力順序とフォーマットは、nroff および troff コマンド用に指定されたマクロ (脚注および巻末の注用)、または roffbib コマンド用に指定されたマクロ (スタンドアロン参考文献一覧用) で制御されます。最も一般的なキー文字およびそれらに対応するフィールドのリストについては、addbib コマンドのセクションを参照してください。

フラグ

項目 説明
-b ベア・モード: テキスト内にフラグを入れません (数字もラベルも)。
-e 参照を見つかった場所に置いておく代わりに、次のフォーマットのシーケンスを見つけるまで累積します。

.[
$LIST$
.]

次に、それまで収集されたすべての参照を書き出します。

-P 参照シグナルの前ではなく、その後に句読点を入れます。句読点は場所により異なり、 refer メッセージ・カタログ内で定義されます。
-S 参照を自然科学または社会科学フォーマットで生成します。
-a Number 最初から数えて指定数の著者名を反転させます (J. A. Jones ではなく Jones, J. A.)。 Number 変数を省略すると、すべての作成者名が反転します。
-B Label.Macro 参考文献一覧モードを指定します。ブランク行で区切られたレコードからなるファイルを選んで、そのファイルを troff コマンド入力にします。指定ラベルは、指定マクロになり、デフォルトでは Label 変数値は %X.Macro 変数値は .AP (注釈パラグラフ) となります。
-c Keys キー文字が Keys 変数内にあるフィールドを SMALL CAPS を使用して大文字に変換します。 例えば、Jack は JACK になります。
-f Number 脚注番号をデフォルトの 1 のではなく指定された番号に設定します。数値ではなくラベルを使用する場合、このフラグは効果がありません。 -k フラグ および -l フラグのセクションを参照してください。
-k Label 番号の参照を使う代わりに、%Label で始まる参照データ行内で指定されたラベルを使用します。デフォルトでは、Label 変数値は L です。
-l Letter,Digit 番号の参照を使う代わりに、主著者の姓と出版年度からなるラベルを使用します。姓のうち前の方の指定文字と、日付のうち後の方の指定数字だけを使用します。Letter 変数または Digit 変数を省略すると、それぞれ、名前全体または日付全体が使用されます。
-n デフォルトの /usr/share/dict/papers/Ind ファイルを検索しません。REFER 環境変数を設定すると、デフォルト・ファイルの代わりに指定したファイルが検索されます。 この場合には、 -n フラグは影響を与えません。
-p Reference Reference 変数を検索対象の参照ファイルとして扱います。デフォルト・ファイルは最後に検索されます。
-sKeys キー文字が Keys 変数文字列で指定されたフィールド別に参照をソートします。それに応じてテキスト内の参照番号を付け直します。このフラグは -e フラグを暗黙指定します。Keys 変数で指定されたキー文字の後に数値を指定して、このようなフィールドをいくつ使用するかを示すことができます。この場合、q + (プラス記号) はきわめて大きな数値を示します。デフォルト値は AD で、最初に主著者で、次に日付でソートします。例えば、すべての著者、次にタイトルでソートするときは、-sA+T を入力します。

参考文献一覧フィールドの行末にブランク・スペースを付けると、レコードが正しくソートおよび反転されないので注意してください。多量の参照をソートすると、メモリー・ダンプが起こることがあります。

以下は、refer コマンドのエントリー例です。

%A M.E. Lesk

%T Some Applications of Inverted Indexes on the UNIXSystem

%B UNIXProgrammer's Manual

%V 2b

%I Bell Laboratories
%C Murray Hill, NJ

%D 1978

ファイル

項目 説明
/usr/share/dict/papers/Ind デフォルトの参照ファイルが入っています。
/usr/lbin/refer 関連プログラムが入っています。