diff --git a/ja_JP.eucJP/man/man1/afmtodit.1 b/ja_JP.eucJP/man/man1/afmtodit.1 index 81534f3c5e..ee30e20612 100644 --- a/ja_JP.eucJP/man/man1/afmtodit.1 +++ b/ja_JP.eucJP/man/man1/afmtodit.1 @@ -1,226 +1,227 @@ .ig \"-*- nroff -*- -.\" jpman %Id: afmtodit.1,v 1.4 2001/03/08 14:57:49 mistral Stab % +.\" jpman %Id: afmtodit.1,v 1.5 2001/03/19 16:49:50 yt-kage Stab % Copyright (C) 1989-2000 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English. .. .\" Like TP, but if specified indent is more than half .\" the current line-length - indent, use the default indent. .de Tp .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP .el .TP "\\$1" .. .\" WORD: left italic correction 左イタリック補正 .\" WORD: bounding box: バウンディングボックス [grops.1,psbb.1] .TH AFMTODIT 1 "7 December 2000" "Groff Version 1.16.1" .SH 名称 afmtodit \- groff \-Tps で用いるフォントファイルを作成する .SH 書式 .nr a \n(.j .ad l .nr i \n(.i .in +\w'\fBafmtodit 'u .ti \niu .B afmtodit .de OP .ie \\n(.$-1 .RI "[\ \fB\\$1\fP" "\\$2" "\ ]" .el .RB "[\ " "\\$1" "\ ]" .. .OP \-ns .OP \-d desc_file .OP \-e enc_file .OP \-i n .OP \-a n .I afm_file .I map_file .I font .br .ad \na .SH 解説 .B afmtodit は、groff および .B grops で用いるフォントファイルを作成します。 .B afmtodit は perl で記述されていますので、これを使用するには perl バージョン 3 がインストールされている必要があります。 .I afm_file は、フォント作成に用いる AFM (Adobe Font Metric) ファイルです。 .I map_file -は、groff 上の文字名と PostScript 上の文字名の対応を定義するファイルです。 -このファイルの各行は、下記のフォーマットから成ります。 +は、groff 上の文字名と PostScript 上の文字名の対応を定義する +ファイルです。このファイルの各行は、下記のフォーマットから成ります。 .IP .I ps_char groff_char .LP ここで、 .I ps_char はその文字の PostScript 上の名前、 .I groff_char -はその文字の groff 上の名前 (つまり、groff フォントファイルで使用される名前) -です。 +はその文字の groff 上の名前 (つまり、groff フォントファイルで +使用される名前) です。 .I map_file 内には同じ .I ps_char が 2 回以上使用されていてもかまいません。しかし、 同じ .I groff_char を 2 回以上使用することはできません。 .I font は、このフォントの groff 上の名前です。 もし、 .I map_file で定義されていない PostScript 文字が このフォントのエンコード方式に含まれていた場合、 .B afmtodit はその文字を名前のない文字として groff フォントファイルに出力します。 名前のない文字を .B troff 上で扱うには、エスケープシーケンス .B \eN を使用します。 groff フォントファイルは .I font という名前のファイルに出力されます。 .LP そのフォントに対するダウンロード可能なフォントがある場合、ファイル .B /usr/share/groff_font/devps/download に列挙可能です。 .BR grops (1) を参照してください。 .LP .B \-i オプションが指定されていた場合、 .B afmtodit は各文字についてイタリック補正 (italic correction)、 左イタリック補正 (left italic correction) および 添字補正 (subscript correction) を自動生成します (これら補正パラメータの意味については、 .BR groff_font (5) を参照してください)。 これらのパラメータは、各文字ごとに .I afm_file に下記の行を追加することにより設定されます。 .IP .BI italicCorrection\ ps_char\ n .br .BI leftItalicCorrection\ ps_char\ n .br .BI subscriptCorrection\ ps_char\ n .LP ここで、 .I ps_char はその文字の PostScript 上の名前、 .I n はパラメータの値 (1/1000 em 単位) です。 これらのパラメータは、通常はイタリックフォント (または斜体) でのみ必要とされます。 .SH オプション .TP .B \-n このフォントには .B ligatures コマンド (合字) を出力しません。 等幅フォント使用時に指定してください。 .TP .B \-s -特殊なフォントであることを指定します。フォントファイルに +特別フォントであることを指定します。フォントファイルに .B special コマンドを追加します。 .TP .BI \-d desc_file デバイス記述ファイルをデフォルトの .B DESC ではなく、 .I desc_file に指定します。 .TP .BI \-e enc_file PostScript フォントが、 .I enc_file -内に記述されているエンコード方式で再エンコードされるべきことを指定します。 +内に記述されているエンコード方式で再エンコードされるべきことを +指定します。 .I enc_file のフォーマットは .BR grops (1) を参照してください。 .TP .BI \-a n フォントファイル内で、 .I n を傾斜パラメータとして使用します。 このパラメータは groff がアクセント記号の位置を決定するのに使用され、 デフォルトの値は、 .I afm_file の中で指定される ItalicAngle 値に -1 を掛けた値です。 しかし、実際のイタリックフォントではもっと小さな値の方が 望ましいことがあります。 もし、イタリックフォントに付くアクセント記号が 正しい位置から離れすぎていると感じた場合、 .B \-a オプションを使用して、より小さな傾斜パラメータを与えてください。 .TP .BI \-i n 各文字のイタリック補正を生成します。 文字幅とイタリック補正の和が、 .I n /1000 em と 「文字のバウンディングボックスの右端が文字の原点からどれだけ右にあるか」 の和に等しくなるように、イタリック補正が生成されます。 負のイタリック補正になってしまう生成結果の場合、 その値の代りに 0 がイタリック補正として使用されます。 .IP 同様に、各文字の添字補正も生成します。 そのフォントの傾斜パラメータの正接 (tangent) に そのフォントの x の高さの 4/5 を掛けた値が、添字補正になります。 添字補正がイタリック補正より大きな値になってしまう生成結果の場合、 その値の代りにイタリック補正の値が添字補正として使用されます。 .IP 同様に、各文字の左イタリック補正も生成します。 左イタリック補正は、 .I n /1000 em と 「文字のバウンディングボックスの左端が文字の原点からどれだけ左にあるか」 の和に等しくなるように、生成されます。 左イタリック補正は、負値になる場合があります。 .IP このパラメータは、通常はイタリックフォント (または斜体) でのみ必要とされます。groff と共に配布されるフォントファイルは、 イタリックフォントに .B \-i50 オプションを使用して生成されています。 .SH 関連ファイル .Tp \w'\fB/usr/share/groff_font/devps/download'u+2n .B /usr/share/groff_font/devps/DESC デバイス記述ファイル .TP .BI /usr/share/groff_font/devps/ F フォント .I F のフォント記述ファイル .TP .B /usr/share/groff_font/devps/download ダウンロード可能なフォントの一覧 .TP .B /usr/share/groff_font/devps/text.enc テキストフォントで使用されるエンコード方式 .TP .B /usr/share/groff_font/devps/generate/textmap 標準の対応表 .SH 関連項目 .BR groff (1), .BR grops (1), .BR groff_font (5), .BR perl (1) diff --git a/ja_JP.eucJP/man/man1/grn.1 b/ja_JP.eucJP/man/man1/grn.1 index da6a4dff90..850ed5a302 100644 --- a/ja_JP.eucJP/man/man1/grn.1 +++ b/ja_JP.eucJP/man/man1/grn.1 @@ -1,659 +1,659 @@ .ig \"-*- nroff -*- Copyright (C) 2000 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English. .. -.\" jpman %Id: grn.1,v 1.2 2001/03/12 15:49:22 yt-kage Stab % +.\" jpman %Id: grn.1,v 1.2 2001/03/12 15:49:22 yt-kage Chk % .de TQ .br .ns .TP \\$1 .. .\" Like TP, but if specified indent is more than half .\" the current line-length - indent, use the default indent. .de Tp .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP .el .TP "\\$1" .. .\" WORD: stipple font スティプルフォント .\" WORD: dotted line 点線 .\" WORD: dashed line 破線 .\" WORD: dot-dashed line 1 点鎖線 .TH GRN 1 "7 December 2000" "Groff Version 1.16.1" .SH 名称 grn \- gremlin ファイル用 groff プリプロセッサ .SH 書式 .BR grn [ .B \-Cv ] [ .BI \-T dev ] [ .BI \-M dir ] [ .BI \-F dir ] [ .IR file\.\.\. ] .PP コマンドラインオプションとパラメータの間にはホワイトスペースを入れる ことができます。 .SH 解説 .I grn は、 .I groff の入力中に .I gremlin 図を入れるためのプリプロセッサです。 .I grn は、 .B .GS と .BR .GE の間にはさまれた入力行のみを処理し、標準出力に書き出します。 処理される行には .I grn コマンド (後述) が含まれていなくてはなりません。 これらのコマンドは、 .I gremlin ファイルを要求し、そのファイル中の図を変換し .I troff の入力ストリームに置きます。 .B .GS リクエストは、続けて C, L, R をとることができ、 .I gremlin 図全体を中央寄せ、左寄せ、あるいは右寄せにすることができます (デフォルトは中央寄せです)。 .I file が指定されていない場合は、標準入力が読み込まれます。 図の最後では、ページ位置は .I gremlin 図の下になります。 .I grn エントリが .BR .GE ではなく .B .GF で終わっている場合は、ページ位置は図の左上になります。 .PP 現在のところ、\-me マクロパッケージだけが .BR .GS , .BR .GE , および .BR .GF をサポートしていることに注意してください。 .PP 次のコマンドラインオプションを理解します: .TP .BI \-T dev プリンタ .IR dev 用の出力を用意します。 デフォルトのデバイスは .BR ps です。受け付け可能なデバイスについては .BR groff (1) を参照してください。 .TP .BI \-M dir ライブラリディレクトリを .IR dir に設定します。 カレントディレクトリに .I gremlin ファイルがなかった場合は、ファイル名の前に .I dir をつけ、再度ファイルを読み込もうとします。 ライブラリディレクトリのデフォルトは .BR /usr/share/tmac です。 .TP .BI \-F dir .I dir 中からサブディレクトリ .BI dev name .RI ( name はデバイス名です) を探し、通常の .BR /usr/share/groff_font の前に読み込まれる .B DESC ファイルを探します。 .TP .B \-C たとえ空白や改行以外の文字が後に続いていても .B .GS および .B .GE (それぞれに対して .BR .GF ) を認識します。 .\".TP .\".B \-s .\"This switch causes the picture to be traversed twice: .\"The first time, only the interiors of filled polygons (as borderless .\"polygons) are printed. .\"The second time, the outline is printed as a series of line segments. .\"This way, postprocessors that overwrite rather than merge picture elements .\"(such as Postscript) can still have text and graphics on a shaded .\"background. .TP .B \-v バージョン番号を表示します。 .SH grn コマンド .B .GS と .B .GE にはさまれた入力行はそれぞれ 1 つずつ .I grn コマンドを持っています。 コマンドは、ホワイトスペースで区切られた 1 つあるいは 2 つの文字列で できています。最初の文字列はコマンドであり、2 番目の文字列は オペランドです。 コマンドは大文字小文字どちらでも良く、省略して 1 文字にすることも できます。 .PP 図の環境に影響を与えるコマンド (これらは .BR default の前にリストされています。後述を参照してください) は、現在の図に対して のみ効果を持ちます。 次の図が始まると、環境は再度デフォルトに初期化されます。 コマンドは次のとおりです: .TP .BI 1\ N .TQ .BI 2\ N .TQ .BI 3\ N .TQ .BI 4\ N .IR gremlin のテキストサイズ番号 1 (2, 3, あるいは 4) を .I N ポイントに設定します。 デフォルトは 12 (16, 24, および 36) です。 .TP .BI roman\ f .TQ .BI italics\ f .TQ .BI bold\ f .TQ .BI special\ f ローマン体 (イタリック体、ボールド体、あるいは特殊文字) の フォントを .IR troff フォント .I f (フォント名あるいは番号) に設定します。 デフォルトは R (I, B, および S) です。 .TP .BI l\ f .TQ .BI stipple\ f スティプル (stipple) フォントを .IR troff のスティプルフォント .I f (フォント名あるいは番号) に設定します。 コマンド .B stipple は、`st' までになら省略できます ( .BR special との混乱を避けるためです)。 スティプルフォントにはデフォルトは .I ありません (デフォルトコマンドで設定されていない限りは)。そして、 スティプルフォントを指定しないままポリゴンを含んだ .I gremlin 図を取り込むのは不正になります。 .TP .BI x\ N .TQ .BI scale\ N (デフォルトの拡大処理に加えて) gremlin 図を .IR N 倍に拡大します。ここで N は 0 より大きな浮動小数値です。 コマンド .B scale は、`sc' までになら省略できます。 .TP .BI narrow\ N .TQ .BI medium\ N .TQ .BI thick\ N 細線 (中間の太さの線、および太線) の太さを 0.15 ポイント (この値は、コンパイル時に変更できます) の .I N 倍に設定します。 デフォルトは 1.0 (3.0, 5.0) です。これは、0.15 ポイント (0.45 ポイントおよび 0.75 ポイント) に対応しています。 太さを表す値が 0 のときは、使用できる中で最も小さな値を 選択します。 負の値をとると、線の太さが現在のポイントサイズに比例したものに なります。 .TP .BI pointscale\ テキストを図に合うようにスケーリングします。 gremlin テキストは、通常、図のスケールファクタによらず、 コマンド .BR 1 ,\ 2 ,\ 3 ,\ あるいは\ 4 で指定されるポイントサイズで表示されます。 .B pointscale を設定すると、ポイントサイズが図に合わせて変更されます (もちろん、 .IR troff の制限内で)。 .I off 以外のオペランドは何であっても テキストのスケーリングを有効にします。 .TP .B default 現在の図の環境をデフォルトに戻します。 このオプションは、 .I troff 入力ファイルの先頭でグローバルパラメータを設定するメカニズムとして 使われることを意図していますが、デフォルトの設定に戻したいときには いつでも使うことができます。 .TP .BI width\ N 図を強制的に幅 .I N インチにします。 このオプションは、同じ図中に存在する他のスケールファクタを 上書きします。 .RB ` width .IR 0 ' とすると、無視されます。 .TP .BI height\ N 他のスケールファクタを上書きして、図を強制的に高さ .I N インチにします。 `width' と `height' 両方が指定されているときには、より値の小さい定数が 図のスケールを決定します。 .B height および .B width コマンドは .B default コマンドを使って保存はされません。 しかしながら、このオプションが設定されている場合には ポイントサイズのスケーリングに影響を与えます。 .TP .BI file\ name カレントディレクトリ (あるいはライブラリディレクトリ。前述の .B \-M オプションを参照してください) に置かれた .I gremlin ファイル .I name から図を取得します。 .B file コマンドが 2 つ与えられた場合、2 つめのコマンドが最初のコマンドを 上書きします。 .I name が存在していない場合は、エラーメッセージが報告され、 .B .GE 行から処理が再開されます。 .SH groff に関しての注意 .I grn はプリプロセッサですので、現在のインデントやポイントサイズ、 余白や番号レジスタなどについては分かりません。 そのため、 .B .GS リクエストと .B .GE リクエストの間には .I troff への入力を置くことができません。 しかしながら、 .I gremlin テキストは現在 .IR troff で処理されます。そのため、 .I gremlin テキスト行にある .I troff への入力行はどれも正しいものになります (ただし、 行頭に `.' ディレクティブを置くことは禁止されています)。 そのため、 .I gremlin ファイル中に 定義済みのデリミタ (例えば .IR $$ ) で括った .I eqn 表記を埋め込むことによって、 .I gremlin 図の中に等式を書くことができます。 .PP .I grn を他のプリプロセッサと一緒に使う場合、 .IR tbl が仕事をしすぎないように .IR grn , .IR pic , および .I ideal よりも前に .I tbl を呼び出すのが最も良いやり方です。 .I eqn は必ず最後に起動させる必要があります。 .PP 図はエンティティとみなされますが、 ページの末尾を越えてしまった場合、 .I troff は図を分割しようとしてしまいます。 \-me マクロ中で図を `keeps' 中に置くことで 適切な位置決めができるようになります。 .PP .I grn は .IR troff の番号レジスタ .B g1 から .B g9 までを使い、そして .B .GS リクエストを処理する前にレジスタ .B g1 および .B g2 に .I gremlin 図の幅および高さ (デバイス単位) を設定します (これらのマクロを書き直したいと思っている人たちのために そうしています)。 .SH gremlin ファイル形式 .I gremlin ファイル形式には 2 つの異なった形式があります。 .I AED グラフィック端末用バージョンからのオリジナルの形式と .I SUN および .I X11 バージョンの形式です。 負の座標を用いた参照点を容認する .IR SUN / X11 バージョンの拡張機能は、 .I AED バージョンとは互換性が .B ありません 。 .I gremlin ファイルに負の座標が含まれていない限りは、どちらの形式のファイルも .I gremlin あるいは .IR grn で読み込むことができます。 他に .IR SUN / X11 フォーマットが異なる点は、図のオブジェクトに対して番号を 使うのではなく、名前 (例えば、POLYGON, CURVE) を使うことです。 同じ図を表すファイルを、それぞれの形式について 表 1 に示します。 .sp .DS .TS center, tab(@); l lw(0.1i) l. sungremlinfile@@gremlinfile 0 240.00 128.00@@0 240.00 128.00 CENTCENT@@2 240.00 128.00@@240.00 128.00 185.00 120.00@@185.00 120.00 240.00 120.00@@240.00 120.00 296.00 120.00@@296.00 120.00 *@@-1.00 -1.00 2 3@@2 3 10 A Triangle@@10 A Triangle POLYGON@@6 224.00 416.00@@224.00 416.00 96.00 160.00@@96.00 160.00 384.00 160.00@@384.00 160.00 *@@-1.00 -1.00 5 1@@5 1 0@@0 -1@@-1 .T& css. .sp 表 1. ファイル例 .TE .DE .sp .IP \(bu それぞれの .I gremlin ファイルの 1 行目は、 文字列 .B gremlinfile .RI ( AED バージョン) あるいは .B sungremlinfile .RI ( SUN / X11 バージョン) のどちらかです。 .IP \(bu ファイルの 2 行目には点の位置を決めるための方向、 .B x および .B y の値が含まれており、各値は空白で区切られています。 .B 0 あるいは .BR 1 をとる方向は、 .IR SUN / X11 バージョンでは無視されます。 .B 0 は、 .I gremlin 図が水平方向の形式で表示されることを意味しています (描画領域の幅が実際の図の高さよりも広くとられ、 上部にメニューがつきます)。 .B 1 は、 .I gremlin 図が垂直方向の形式で表示されることを意味しています (描画領域の高さが実際の図の幅よりも高くとられ、 左側にメニューがつきます)。 .B x および .B y は浮動小数値であり、このファイルが他のファイルに読み込まれる 際に利用される位置を与えます。 この行の要素は、それほど重要なものではありません。 ``1 0.00 0.00'' という値を推奨します。 .IP \(bu このファイルの残りの部分は 0 個あるいは 1 個以上の要素を 記述したものになっています。 最後の要素を記述した後には、文字列 ``-1'' を持った行がきます。 .SH 要素の記述 .IP \(bu 各要素の最初の行には、要素タイプを与える 10 進数 .RI ( AED バージョンの場合) あるいは要素の ASCII 文字での名称 .RI ( SUN / X11 バージョンの場合) が 1 つ 含まれています。 表 2 を参照してください。 .sp .DS .TS center, tab(@); css ccc nll. \fIgremlin\fP ファイルフォーマット \(mi オブジェクトタイプの仕様 .sp \fIAED\fP 番号@\fISUN\fP/\fIX11\fP 名称@解説 0@BOTLEFT@左下揃えのテキスト 1@BOTRIGHT@右下揃えのテキスト 2@CENTCENT@中央揃えのテキスト 3@VECTOR@ベクトル 4@ARC@円弧 5@CURVE@曲線 6@POLYGON@ポリゴン 10@TOPLEFT@左上揃えのテキスト 11@TOPCENT@中央上揃えのテキスト 12@TOPRIGHT@右上揃えのテキスト 13@CENTLEFT@左中央揃えのテキスト 14@CENTRIGHT@右中央揃えのテキスト 15@BOTCENT@中央下揃えのテキスト .T& css. .sp 表 2. \fIgremlin\fP ファイルにおける要素タイプの仕様 .TE .DE .sp .IP \(bu オブジェクトタイプの後には、可変数の行がきます。 各行は、オブジェクトの要素を表示するのに使われる点を指定します。 各行には、x 座標および y 座標が浮動小数値で入っており、 それぞれは空白文字で区切られています。 点のリストは、文字列 ``-1.0 -1.0'' を含んだ行 .RI ( AED バージョンの場合) あるいはアスタリスク ``*'' 1 個 .RI ( SUN / X11 バージョンの場合) で終わります。 .IP \(bu 点の後には、10 進数 2 個を含んだ行がきます。これは、 要素に対するブラシとサイズを与えます。 ブラシは、オブジェクトが描かれる際のスタイルを決定します。 ベクトル、円弧、および曲線については、ブラシの値として 正しいものが 6 個あります: .sp .DS .TS center, tab(@); ncw(0.1i)l. 1 \(mi@@細い点線 2 \(mi@@細い一点鎖線 3 \(mi@@太い直線 4 \(mi@@細い破線 5 \(mi@@細い直線 6 \(mi@@通常の直線 .TE .DE .sp ポリゴンに対しては、さらに 0 も正しい値となります。 この値は、境界線の見えないポリゴンを指定するものです。 テキストに対しては、ブラシは次のフォントを選択します: .sp .DS .TS center, tab(@); ncw(0.1i)l. 1 \(mi@@ローマン体 (groff での R フォント) 2 \(mi@@イタリック体 (groff での I フォント) 3 \(mi@@ボールド体 (groff での B フォント) 4 \(mi@@特殊文字 (groff での S フォント) .TE .DE .sp 図を .IR groff に通すために .I grn を使っている場合は、 ここでのフォントはただ開始時のフォントになるだけです: テキスト文字列には、 ``\\fI'' や ``\\d'' のような、 (他の多くのものがそうであるように) フォントを 変更する可能性のあるフォーマット用シーケンスを含んでも 構いません。 テキストでは、サイズフィールドは 1 から 4 までの 10 進数です。 これは、テキストが書かれるフォントサイズを選択します。 ポリゴンに対しては、このサイズフィールドはポリゴン内部を 埋めるために使われる点番号と解釈されます。 この番号は、表示する際にスティプルフォントに置き換える インデックスとして使われます。 .IP \(bu 各要素の最終行には、10 進数と文字列が空白文字 1 つで 区切られて入っています。 10 進数は、文字列中の文字数をカウントしたものです。 この情報はテキスト要素に対してのみ使われ、 テキスト文字列が情報の中に含まれています。 テキスト内部には空白文字が入っていても良いです。 円弧、曲線、およびベクトルについては、この要素の行には 文字列 ``0'' が入っています。 .SH 座標についての注意 .I gremlin は .IR AED 用に設計され、その座標系は .I AED の座標空間を反映したものになっています。 ベクトル図に対しては、x 値は 116 から 511 までをとり、 y 値は 0 から 483 までをとります。 水平方向の図に対しては、 x 値は 0 から 511 までをとり、 y 値は 0 から 367 までをとります。 この範囲に必ずこだわることはありませんが、 少なくともこの近傍にとどめておけば最良の結果が 得られるでしょう。 さらに、点のリストは (-1, -1) で終わりますので、 負の座標を使うことはできません。 .I gremlin 図は、``%f1.2'' という形式を使って座標を出力します。 ですので、 .I grn コードを変更したい場合には同じ形式を用いるのが おそらくは良い考えでしょう。 .SH SUN/X11 バージョンの座標についての注意 .IR SUN / X11 バージョンの .IR gremlin 図では、オブジェクト生成に用いられる座標の範囲に 制限はもうありません。 しかし、負の座標を持ったファイルでは、 .IR AED 上で表示させようとすると問題が .B 発生するでしょう 。 .SH 関連ファイル .Tp \w'/usr/share/groff_font/devname/DESC'u+3n .BI /usr/share/groff_font/dev name /DESC デバイス .IR name 用のデバイス定義ファイル .SH 関連項目 .BR gremlin (1), .BR groff (1), .BR pic (1), .BR ideal (1) .SH 歴史 .PP David Slattengren と Barry Roitblat がオリジナルの Berkeley 版 .IR grn を書きました。 .PP Daniel Senderowicz と Werner Lemberg が .IR groff 用に書き直しました。 diff --git a/ja_JP.eucJP/man/man1/grolbp.1 b/ja_JP.eucJP/man/man1/grolbp.1 index ed0c9141d6..fdd02c432f 100644 --- a/ja_JP.eucJP/man/man1/grolbp.1 +++ b/ja_JP.eucJP/man/man1/grolbp.1 @@ -1,356 +1,358 @@ '\" t .\" The above line should force the use of tbl as a preprocessor .\" vim: set syntax=nroff : .\" The above line should set vim into nroff mode .ig -.\" jpman %Id: grolbp.1,v 1.2 2001/03/08 00:56:42 mistral Stab % +.\" jpman %Id: grolbp.1,v 1.3 2001/03/19 16:49:45 yt-kage Stab % Copyright (C) 1994-2000 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English. Modified by Francisco Andres Verdu for the grolbp program. .. .de TQ .br .ns .TP \\$1 .. .\" Like TP, but if specified indent is more than half .\" the current line-length - indent, use the default indent. .de Tp .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP .el .TP "\\$1" .. .TH GROLBP 1 "7 December 2000" "Groff Version 1.16.1" .SH 名称 grolbp \- Canon CAPSL プリンタ (LBP-4 と LBP-8 シリーズレーザプリンタ) 用 groff ドライバ .SH 書式 .nr a \n(.j .ad l .nr i \n(.i .in +\w'\fBgrolbp 'u .ti \niu .B grolpb .de OP .ie \\n(.$-1 .RI "[\ \fB\\$1\fP" "\\$2" "\ ]" .el .RB "[\ " "\\$1" "\ ]" .. .OP \-l .OP \-\-landscape .OP \-v .OP \-\-version .OP \-c n .OP \-\-copies= numcopies .OP \-p paper_size .OP \-\-papersize= paper_size .OP \-o orientation .OP \-\-orientation= orientation .OP \-F dir .OP \-\-fontdir= dir .OP \-h .OP \-\-help .RI "[\ " files\|.\|.\|. "\ ]" .br .ad \na .SH 解説 .B grolbp は .B groff のドライバであり、Canon LBP\-4 と LBP\-8 プリンタに適した CPSL と VDM 形式の出力を生成します。 .LP grolj4 との互換性のために troff のものに加え、描画コマンドとして次のものが利用可能です: .TP .BI \eD'R\ dh\ dv ' 現在の位置と、現在の位置 .RI +( dh , dv ) とを対角とする罫線 (つまり黒く塗りつぶした矩形) を描きます。 .SH オプション 1 文字オプションとその引数との間には空白があってもなくても構いませんが、 -長いオプションとその引数との間には空白と、または等号記号 (`=') が +長いオプション名とその引数との間には空白と、または等号記号 (`=') が 必要なことに注意してください。 .TP .BI \-c numcopies .TQ .BI \-\-copies= numcopies 各ページを .I numcopies 回印刷します。 .TP .B \-l .TQ .B \-\-landscape landscape にて文書を印刷します。 .TP .BI \-p paper_size .TQ .BI \-\-papersize= paper_size 用紙サイズを .IR paper_size にします。 .IR paper_size は .BR "用紙サイズ" 節で示された有効なサイズ種別である必要があります。 .TP .BI \-o orientation .TQ .BI \-\-orientation= orientation 文書を .I orientation 方向に印刷します。 .I orientation は `portrait' または `landscape' である必要があります。 .TP .B \-v .TQ .B \-\-version バージョン番号を表示します。 .TP .BI \-F dir .TQ .BI \-\-fontdir= dir フォントやデバイス記述ファイルを .IB dir /devlbp というディレクトリから探すようにします。 .TP .B \-h .TQ .B \-\-help 簡単なへルプを表示します。 .SH 書体 .\" XXX いまいちしっくりこない ドライバは Dutch, Swiss, Swiss-Narrow スケーラブル書体それぞれに対して、 Regular, Bold, Italic, Bold-Italic スタイルをサポートしています。 -さらに Courier と 等幅 Elite 書体の -それぞれ 8 と 12 ポイント (Courier 用)、8 と 10 ポイント (Elite 用) -に対して Regular, Bold, Italic スタイルがサポートされています。 +さらに Courier 書体の 8, 12 ポイント、 +等幅 Elite 書体の 8, 10 ポイントそれぞれに対して +Regular, Bold, Italic スタイルがサポートされています。 .PP これらのフォントを使用するためのフォント名を以下の表にまとめます: .PP .TS tab(|) allbox center; c c c c c ab c c c c . 書体 | Regular | Bold | Italic | Bold-Italic Dutch | TR | TB | TI | TBI Swiss | HR | HB | HI | HBI Swiss Narrow | HNR | HNB | HNI | HNBI Courier | CR | CB | CI | Elite | ER | EB | EI | .TE .PP .SH 用紙サイズ 用紙サイズは .B DESC ファイルまたは .BR grolbp に対するコマンド行オプションで指定できます。 用紙サイズが両方で指定された場合は、コマンド行オプションが .B DESC -ファイルの内容よりも優先されます (この原則はページの向きにも適用されます)。 +ファイルの内容よりも優先されます (この原則はページの向きにも +適用されます)。 .PP .B DESC ファイルで用紙サイズを設定するには、 .B papersize .IR desired_papersize , を含んだ行をそのファイルに記入します。 .I desired_papersize -は次のうちのいづれかです: +は次のうちのいずれかです: .IP \(bu 4 認識される用紙サイズのうち 1 つ: `a4', `letter', `legal', `executive' .IP \(bu 4 .B カスタム用紙サイズ .\" XXX subsection 小節で説明するカスタム定義された用紙サイズ .IP \(bu 4 -上記形式のどれか希望の用紙サイズが 1 行目に書かれているファイルの名前 (例えば +希望の用紙サイズが上記形式のいずれかで 1 行目に書かれている +ファイル名 (例えば .IR /etc/papersize ) .PP -複数の有効な papersize 行が +有効な papersize 行が複数 .B DESC -ファイルに書かれて場合には、最初の有効なもののみが使用されます。 +ファイルに書かれている場合には、最初の有効なもののみが使用されます。 .PP コマンド行で用紙サイズを設定するには、 .sp 1 .in +2m .BI \-p \ desired_papersize .in -2m .sp 1 または .sp 1 .in +2m .BI \-\-papersize= desired_papersize .in -2m .sp 1 を他の .B grolbp オプションに加えます。 .B desired_papersize は .B DESC ファイルと同じ形式です。 .PP 用紙サイズには大文字小文字の区別はありません (すなわち `A4' は `a4' と同じです)。 .PP .B DESC ファイルやコマンド行で用紙サイズが指定されなかった場合には、 デフォルトサイズの A4 が使用されます。 .TP .SH カスタム用紙サイズ カスタム定義された用紙サイズは .BI cust length x width 形式で指定します。ここで .I length と .I width には使用したい用紙寸法のプリンタ単位 (1/300 インチ) が入ります。 例えば、2 インチ× 4 インチの葉書サイズ用紙に印刷するには、 .B DESC ファイルの先頭に .sp 1 .in +2m .B papersize cust600x1200 .in -2m .sp 1 という行を書きます。 .SH ページ向き ページサイズと同様、印刷ページの向き .RB ( portrait または .BR landscape ) は .B DESC ファイルまたはコマンド行オプションで指定できます。 ここでも大文字小文字の区別はありません。 .PP .B DESC ファイルで向きを設定するには、以下の行を書きます: .sp 1 .in +2m .B orientation .RB [ portrait | landscape ] .in -2m .sp 1 用紙サイズと同じように、 .B DESC ファイル中の最初の有効な orientation コマンドのみが使用されます。 .PP コマンド行オプションでページ向きを設定するには .B DESC ファイルと同じパラメータ .RB ( portrait または .BR landscape ) を .B \-o または .B \-\-orientation オプションで指定します。 また .B \-l オプションによる強制的な landscape でのページ印刷も可能です。 .SH フォントファイル形式 .BR groff_font (5) に記述されている通常コマンドに加えて、 .B grolbp -はプリンタに送るフォント名を指定するコマンド +は要求された時にプリンタに送るフォント名を指定するコマンド .I lbpname を用意しています。 このコマンドの文法は次のとおりです: .sp 1 .in +2m .B lbpname .I printer_font_name .in -2m .IP \(bu ビットマップフォントでは .I printer_font_name -は次の形式です +は次の形式です。 .sp 1 .in +2m .RI N\(la base_fontname \(ra\(la font_style \(ra .in -2m .sp 1 .\" XXX なんかしっくりこない .I base_fontname はプリンタのフォントリストに現れる名前から最初の 1 文字を除いた フォントサイズまで (フォントサイズは含まない) のフォント名です。 .I font_style は .BR R , .BR I , .BR B のうちの 1 文字で、それぞれ Roman, Italic, Bold のフォントスタイルを 示しています。 .IP 例えば、プリンタの .I font listing A がフォント `Nelite12I.ISO_USA' を表示した場合、フォント設定ファイルの -対応する項目は次のものになります +対応する項目は次のものになります。 .sp 1 .in +2m .B lbpname NeliteI .in -2m .IP -ただし (上述した) 利用可能なビットマップフォントのフォント名と +ただし (前述した) 利用可能なビットマップフォントのフォント名と フォントサイズはプログラム中にハードコードされているため、 新しいビットマップフォントを追加でサポートするには .B grolbp を書き換える必要があることに注意してください。 .IP \(bu スケーラブルフォントでは、 .I printer_font_name はプリンタの .IR "font listing A" に表示されるフォント名と同じです。 .IP 例えば、プリンタの .I font listing A -に `Swiss-Bold' と表示される、bold スタイルな `Swiss' を選択するのに必要な +に `Swiss-Bold' と表示される、bold 体の `Swiss' を選択するのに必要な .B lbpname -コマンド行は次のようになります +コマンド行は次のようになります。 .sp 1 .in +2m .B lbpname Swiss-Bold .in -2m .sp 1 .PP .B lbpname の引数は大文字小文字が区別されます。 .SH 関連ファイル .TP .B /usr/share/groff_font/devlbp/DESC デバイス記述ファイルです。 .TP .BI /usr/share/groff_font/devlbp/ F -.IR F . +.IR F というフォントに対する記述ファイルです。 .SH 関連項目 .BR groff (1), .BR troff (1), .BR groff_out (5), .BR groff_font (5), .BR groff_char (7) .\" .\" Local Variables: .\" mode: nroff .\" End: diff --git a/ja_JP.eucJP/man/man1/hpftodit.1 b/ja_JP.eucJP/man/man1/hpftodit.1 index d9c5e28a23..7ec5a6f9f3 100644 --- a/ja_JP.eucJP/man/man1/hpftodit.1 +++ b/ja_JP.eucJP/man/man1/hpftodit.1 @@ -1,149 +1,151 @@ .ig \"-*- nroff -*- -.\" jpman %Id: hpftodit.1,v 1.2 2001/03/08 14:57:46 mistral Stab % +.\" jpman %Id: hpftodit.1,v 1.3 2001/03/19 16:49:47 yt-kage Stab % Copyright (C) 1994-2000 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be included in translations approved by the Free Software Foundation instead of in the original English. .. .\" Like TP, but if specified indent is more than half .\" the current line-length - indent, use the default indent. .de Tp .ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP .el .TP "\\$1" .. .\" WORD: left italic correction 左イタリック補正 .\" WORD: bounding box: バウンディングボックス [grops.1,psbb.1] .\" WORD: design unit: 設計単位 (XXX) .TH HPFTODIT 1 "7 December 2000" "Groff Version 1.16.1" .SH 名称 hpftodit \- groff \-Tlj4 で用いるフォント記述ファイルを作成する .SH 書式 .B hpftodit [ .B \-sv ] [ .BI \-i n ] .I tfm_file .I map_file .I font .PP .B \-i コマンド行オプションとそのパラメータの間には空白があっても構いません。 .SH 解説 .B hpftodit は、HP のタグ付きフォントメトリックファイルから .B groff \-Tlj4\fR で用いるフォントファイルを作成します。 .I tfm_file は、フォント作成に用いるタグ付きフォントメトリックファイル名です。 .I map_file は groff での文字名を記述したファイルです。 このファイルの各行は、下記のフォーマットから成ります。 .IP .I n c1 c2 \fR.\|.\|. .LP ここで、 .I n -はその文字の MSL 番号を与える十進の整数で、 +はその文字の MSL 番号を与える 10 進の整数で、 .IR c1 , .IR c2 ,.\|.\|. はその文字の groff 上の名前です。 .I font は、出力する groff フォントファイル名です。 groff フォントファイルは .IR font という名前のファイルに出力されます。 .LP -特殊なフォント (カレントフォントの中に文字が見つからない場合に +特別フォント (カレントフォントの中に文字が見つからない場合に 検索されるフォント) に対しては .B \-s オプションを指定する必要があります。 -特殊なフォントは DESC ファイルの +特別フォントは DESC ファイルの .B fonts -コマンドで列挙します。特殊なフォント以外は列挙する必要はありません。 +コマンドで列挙します。特別フォント以外は列挙する必要はありません。 .B troff がそのフォントを最初に使用したときに自動的にマウントできるからです。 .LP .B \-i オプションが指定されていた場合、 .B hpftodit は各文字についてイタリック補正 (italic correction)、 左イタリック補正 (left italic correction) および 添字補正 (subscript correction) を自動生成します (これら補正パラメータの意味については、 .BR groff_font (5) を参照してください)。 .SH オプション .TP .B \-v バージョン番号を表示します。 .TP .B \-s -特殊なフォントであることを指定します。フォントファイルに +特別フォントであることを指定します。フォントファイルに .B special コマンドを追加します。 .TP .BI \-i n 各文字のイタリック補正を生成します。 文字幅とイタリック補正の和が、 .I n 設計単位と -「文字のバウンディングボックスの右端が文字の原点からどれだけ右にあるか」 -の和に等しくなるように、イタリック補正が生成されます。 -負のイタリック補正になってしまう生成結果の場合、 +「文字のバウンディングボックスの右端が文字の原点から +どれだけ右にあるか」との和に等しくなるように +イタリック補正が生成されます。 +生成結果が負値になってしまう場合、 その値の代りに 0 がイタリック補正として使用されます。 Intellifont フォントでは、8782 設計単位で 1 em です。 .IP 同様に、各文字の添字補正も生成します。 そのフォントの傾斜パラメータの正接 (tangent) に -そのフォントの x の高さの 4/5 を掛けた値が、添字補正になります。 -添字補正がイタリック補正より大きな値になってしまう生成結果の場合、 -その値の代りにイタリック補正の値が添字補正として使用されます。 +そのフォントの x 方向の高さの 4/5 を掛けた値が、添字補正になります。 +添字補正がイタリック補正より大きな値になってしまう +生成結果になった場合、 +その値の代りにイタリック補正が添字補正として使用されます。 .IP 同様に、各文字の左イタリック補正も生成します。 左イタリック補正は、 .I n 設計単位と -「文字のバウンディングボックスの左端が文字の原点からどれだけ左にあるか」 -の和に等しくなるように、生成されます。 +「文字のバウンディングボックスの左端が文字の原点から +どれだけ左にあるか」との和に等しくなるように生成されます。 左イタリック補正は、負値になる場合があります。 .IP -このパラメータは、通常はイタリックフォント (または斜体) +このパラメータは、通常はイタリック (または斜体) フォント でのみ必要とされます。 .SH 関連ファイル .Tp \w'\fB/usr/share/groff_font/devlj4/DESC'u+2n .B /usr/share/groff_font/devlj4/DESC デバイス記述ファイル .TP .BI /usr/share/groff_font/devlj4/ F フォント .IR F のフォント記述ファイル .SH バグ .LP -このプルグラムはタグ付きフォントメトリック形式に関する +このプログラムは、タグ付きフォントメトリック形式に関する 完全で公式な文書の助けを受けずに書かれました。 -テストに使用した Laserjet 4 の内蔵フォントに似ていない -tfm ファイルを扱おうとして失敗することがありえます。 +そのため、テストに使用した Laserjet 4 の内蔵フォントに似ていない +tfm ファイルを扱おうとすると失敗する可能性があります。 .LP TrueType tfm ファイルはサポートしていません。 .SH 関連項目 .BR groff (1), .BR grolj4 (1), .BR groff_font (5) diff --git a/ja_JP.eucJP/man/man1/realpath.1 b/ja_JP.eucJP/man/man1/realpath.1 index faf84a2055..d1c7ffb7b3 100644 --- a/ja_JP.eucJP/man/man1/realpath.1 +++ b/ja_JP.eucJP/man/man1/realpath.1 @@ -1,71 +1,71 @@ .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the Institute of Electrical and Electronics Engineers, Inc. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)pwd.1 8.2 (Berkeley) 4/28/95 .\" From: src/bin/pwd/pwd.1,v 1.11 2000/11/20 11:39:39 ru Exp .\" %FreeBSD: src/bin/pwd/realpath.1,v 1.2.2.2 2001/02/22 07:31:17 ru Exp % -.\" jpman %Id: realpath.1,v 1.3 2001/03/18 14:59:45 yt-kage Exp % +.\" jpman %Id: realpath.1,v 1.3 2001/03/18 14:59:45 yt-kage Stab % .\" .Dd November 24, 2000 .Dt REALPATH 1 .Os FreeBSD .Sh 名称 .Nm realpath .Nd 物理的なパスを解決して返す .Sh 書式 .Nm .Ar path .Sh 解説 .Nm は .Ar path 中のすべてのシンボリックリンク、余分な .Ql / キャラクタ、 .Pa /./ と .Pa /../ のリファレンスを .Xr realpath 3 関数を用いて解決します。 .Sh 診断 .Nm は成功時には 0 を、エラー発生時には 0 より大きい値を返します。 .Sh 関連項目 .Xr realpath 3 .Sh 歴史 .Nm ユーティリティは .Fx 4.3 から登場しました。 diff --git a/ja_JP.eucJP/man/man7/groff.7 b/ja_JP.eucJP/man/man7/groff.7 index 5fc4244f38..e0d7f07a37 100644 --- a/ja_JP.eucJP/man/man7/groff.7 +++ b/ja_JP.eucJP/man/man7/groff.7 @@ -1,2984 +1,2986 @@ .\" st -*- nroff -*- .ig -.\" jpman %Id: groff.7,v 0.0 2000/12/29 19:27:19 horikawa Stab % +.\" jpman %Id: groff.7,v 1.3 2001/03/19 16:37:48 yt-kage Stab % groff.7 This file is part of groff, the GNU roff type-setting system. Copyright (C) 2000 Free Software Foundation, Inc. written by Bernd Warken Last update: 17 May 2000 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being this .ig-section and AUTHOR, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the Free Documentation License is included as a file called FDL in the main directory of the groff source package. .\"WORD: diversion ディバージョン[groff.7] .\"WORD: divert 転換する(出力データを別の場所に貯め込むこと)[groff.7] .\"WORD: line adjustment 行の位置揃え[groff.7] .\"WORD: roff formatting system roff 清書システム[groff.7] .\"WORD: control line 制御行[groff.7] .\"WORD: formatting element 整形要素[groff.7] .\"WORD: in-line 行埋め込み式の[groff.7] .\"WORD: scale indicator 単位指定子[groff.7] .\"WORD: trap トラップ[groff.7] .\"WORD: no-break control character 非改行制御文字[groff.7] .\"WORD: center センタリングする(動詞)[groff.7] .\"WORD: special 特別フォント[groff.7] .\"WORD: leader リーダ(目次などで項目とページ番号の間に引く線)[groff.7] .\"WORD: intra-line skip 行間スキップ(行と行の間に入れる空き)[groff.7] .\"WORD: fill 行詰め(する)[groff.7] .\"WORD: built-in condition 組み込み条件式[groff.7] .\"WORD: baseline 基準線(文字位置の基準となる水平線)[groff.7] .. . .\" -------------------------------------------------------------------- .\" Setup .\" -------------------------------------------------------------------- . .if n \{\ . mso tmac.tty-char . ftr CR R . ftr CI I . ftr CB B .\} . .if '\*[.T]'dvi' \{\ . ftr CB CW .\} . .\" a comment macro which does nothing .de c .. . .\" a tab string .ds t "\t . .eo . .c text lines in macro definitions or bracketed sections \{...\} .de text . if 1 \&\$*\& .. . .de option . ds @tmp@ \f(CB\$1\fP . shift 1 . text \*[@tmp@]\$* . rm @tmp@ .. . .als shellcommand option . .c --------- characters --------- . .de character . ds @tmp@ \f(CB\$1\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de 'char . ds @tmp@ \(oq\f(CB\$1\fP\(cq . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de ''char . ds @tmp@ \(lq\f(CB\$1\fP\(rq . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .c --------- requests --------- . .c request synopsis .de REQ . ds @tmp@ \&\$1 . shift 1 . IP "\f(CB\&\*[@tmp@] \fP\f(CI\&\$*\fP" 10n . rm @tmp@ .. . .de request . ds @tmp@ \f(CB\$1\fP . shift 1 . text \*[@tmp@]\$* . rm @tmp@ .. . .c --------- macro or function arguments --------- . .de argument . ds @tmp@ \f(CI\$1\fP . shift 1 . while (\n[.$] >= 2) \{\ . as @tmp@ \/\f(CR\$1\fP\f(CI\,\$2\fP . shift 2 . \} . if \n[.$] .as @tmp@ \/\f(CR\$1\fP . text \*[@tmp@] . rm @tmp@ .. . .c argument followed by a numerical expression .de argterm . ds @tmp@ \f(CI\$1\fP\|\f(CR\$2\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .c --------- numerical elements --------- . .de number . ds @tmp@ \f(CR\$1\fP . shift 1 . text \*[@tmp@]\$* . rm @tmp@ .. . .de prefixednumber . ds @tmp@ \&\$1\ \f(CR\$2\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .als scaleindicator request . .de scalednumber . ds @tmp@ \f(CR\$1\fP\f(CB\$2\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .de operator . ds @tmp@ \(oq\f(CB\$1\fP\(cq . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .c --------- escape sequences --------- . .de esc[arg] . ds @tmp@ \f(CB\(rs\$1[\fP\f(CI\$2\fP\f(CB]\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .de esc(arg . ds @tmp@ \f(CB\(rs\$1(\fP\f(CI\$2\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .de escarg . ds @tmp@ \f(CB\(rs\$1\fP\f(CI\$2\fP . shift 2 . text \*[@tmp@]\$* . rm @tmp@ .. . .de esc[] . ds @tmp@ \f(CB\(rs[\fP\f(CI\$1\fP\f(CB]\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de esc( . ds @tmp@ \f(CB\(rs(\fP\f(CI\$1\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de esc . ds @tmp@ \f(CB\(rs\$1\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de (esc . ds @tmp@ \f(CB\(rs(\$1\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .de [esc] . ds @tmp@ \f(CB\(rs[\$1]\fP . shift . text \*[@tmp@]\$* . rm @tmp@ .. . .c escape sequence synopsis .de ESC . ds @tmp@ \&\$1 . shift 1 . IP "\f(CB\(rs\&\*[@tmp@]\fP\f(CI\&\$*\fP" . rm @tmp@ .. . .c synopsis for escape sequences with a long name .de ESC[] . ds @arg1@ \&\$1 . ds @arg2@ \&\$2 . shift 2 . IP "\f(CB\(rs\&\*[@arg1@][\fP\f(CI\&\*[@arg2@]\fP\f(CB]\&\$*\fP" . rm @arg1@ . rm @arg2@ .. . .c synopsis escape sequence with quoted argument . de ESCq . ds @tmp@ \&\$1 . shift 1 . IP "\f(CB\(rs\&\*[@tmp@]\(cq\fP\f(CI\h'-0.2m'\$*\/\fP\f(CB\(cq\fP" . rm @tmp@ .. . .c synopsis for 2-escapes (special characters) .de ESc . ds @tmp@ \$1 . TP 14n . text \f(CB\(rs(\&\*[@tmp@]\ \ \ \fP\fR\(\*[@tmp@]\fP . shift 1 . text \$*. . rm @tmp@ .. . .c --------- registers --------- . .c synopsis for registers .de REG . TP 10n . text \&\f(CR\(rsn[\fP\f(CB\$1\fP\f(CR]\fP . shift 1 .if \n[.$] \&\$* .. . .als register request . .c --------- warnings --------- . .als warning request . .c description of warnings .de Warning . ne (2v + 1) . TP 12n . text \f(CB\$1\fP . text \f(CI\$2\fP . br .. . .ec . .\" WORD: first measure 最初のステップ (音楽用語では第一小節) .\" -------------------------------------------------------------------- .\" Title .\" -------------------------------------------------------------------- . .TH GROFF 7 "7 December 2000" "Groff Version 1.16.1" .SH 名称 groff \- GNU roff 言語の簡易リファレンス . .\" -------------------------------------------------------------------- .SH 解説 .\" -------------------------------------------------------------------- .I groff とは、 .I GNU roff を表しており、roff 清書システムをフリーで実装したものです。 groff システムの概観ならびに背景については .BR roff (7) を参照してください。 .LP このドキュメントでは、groff 内で使用される、あらかじめ定義された roff 言語要素を簡潔に説明しているだけです。 古くからある機能と groff 拡張機能についての両方とも 扱っています。 .LP 歴史的に、 .I roff 言語 は .IR troff と呼ばれています。 .I groff は、古くからあるシステムと互換性を持ちつつ、独自の拡張機能も 提供しています。そのため GNU 版では、 .IR roff , .IR troff , .I groff 言語 という術語は同義として使うこともできるでしょう。 しかし、 .I troff は、どちらかと言えば古くからの機能に対して適用されるという 傾向があり、それに対して、 .I groff は GNU 拡張に重きを置いています。そして、 .I roff は、この言語の一般的な術語になっています。 .LP このファイルは、 .I groff .BR info (1) ファイルにある完全なドキュメントの簡易版に過ぎません。 info ファイルの方がより詳細で実情に近く、正確な情報を含んでいます。 .LP groff ドキュメントを書くために使う一般的な文法は比較的 やさしいのですが、 roff 言語の拡張機能を書くのは少々骨が折れるかもしれません。 .LP roff 言語は、行指向の言語です。 行には、制御行とテキスト行の 2 種類しかありません。 制御行は制御文字で始まります。制御文字は、デフォルトではピリオド .''char . あるいはシングルクォート .''char ' です。そのほかの文字で始まる行はすべてテキスト行です。 .LP .B 制御行 は、コマンドを表し、オプションで引数を取ることもあります。 制御行は、次のような文法になります。 先頭の制御文字の後には、コマンド名を続けることができます。 引数は、もしあれば、コマンド名や他の引数と空白で分けられます。 例えば、次のようにします。 .RS .LP \&\.command_name arg1 arg2 .RE .LP インデント用に、先頭の制御文字とコマンド名との間にはスペースや タブ文字をいくつ入れても良いですが、制御文字は行の先頭になくては なりません。 .LP .B テキスト行 は、表示される部分のことです。 テキスト行はエスケープシーケンスで変更することができます。 エスケープシーケンスは先頭にバックスラッシュ .'char \(rs を置くことで認識されます。 これらは、行や単語の一部に含まれ、整形要素となったり 関数となったりします。 シングルクォート .''char ' で区切られた引数を取るものもあります。 また、開き括弧 .'char ( で始めたり、角括弧 .'char [ と .'char ] で括ったりする符号化で長さが決まるシーケンスもあります。 .LP roff 言語は、マクロなど、言語拡張機能を書くための柔軟な手段を 提供しています。 マクロ定義を解釈する際に、roff システムは .BR "コピーモード" と呼ばれる特別なモードに入ります。 .LP コピーモードの振る舞いはとても扱いにくいものでもありますが、 確実に安全に使えるようにするルールがいくつかあります。 .IP 1. 表示可能なバックスラッシュは .esc e と記述しなくてはなりません。 もっと正確に言えば、 .esc e は現在のエスケープ文字を表します。 バックスラッシュのグリフを得るには .esc (rs を使用してください。 .IP 2. バックスラッシュはすべて 2 重にしてください。 .IP 3. テキスト行はすべて、スペースをとらない特殊文字 .esc & で始めてください。 .LP このやり方は、一番効率の良いコードが生成できる というわけではありませんが、最初の一歩としては使えるはずです。 さらに良いやり方については groff info ファイルおよび .BR groff_tmac (5) を参照してください。 .LP roff ソースファイルを読むのはこれよりは簡単です。 すべてのマクロ定義部分で 2 重になっているバックスラッシュを 1 つに置き換えればよいだけです。 . .\" -------------------------------------------------------------------- .SH "groff 要素" .\"-------------------------------------------------------------------- roff 言語の要素は、テキストファイルに整形用情報を 付加するものです。基本的な要素は、あらかじめ定義されたコマンド および変数であり、 この要素のおかげで roff は本格的なプログラミング言語に なっているのです。 .LP roff コマンドには 2 種類あります。コマンドは 引数を取ることもあります。 .B リクエスト は、ドット .'char . あるいは .''char ' で始まる行に書かれるものです。これに対して .B エスケープシーケンス は、 バックスラッシュ .'char \(rs で始まる、行埋め込み式の関数や単語中の整形要素です。 .LP ユーザは独自の整形コマンドを .request .de リクエストを使って定義することができます。これらのコマンドは .BR マクロ と呼ばれていますが、実際にはリクエストとまったく同様に使われます。 マクロパッケージは groff 言語で書かれた定義済みのマクロセットです。 ユーザが独自にエスケープシーケンスを作成できる場合というのは 非常に限られており、特殊文字のみマップすることができます。 .LP groff 言語は、インタフェースによってさまざまな種類の変数を 提供しています。定義済みの変数もありますが、 ユーザも同様に自分で変数を定義できます。 .LP .B 文字列 変数は文字列を格納します。 この変数は .request .ds リクエストで設定され、値は .esc * エスケープシーケンスを使って取り出します。 .LP .B レジスタ 変数は数値、スケールファクタつき数字、場合によっては文字列に似た オブジェクトを格納できます。 .request .nr リクエストで設定され、値は .esc n エスケープシーケンスを使って取り出します。 .LP .B 環境 変数は、行の長さやフォントサイズなどのような グローバルな整形パラメータをユーザが後で再利用するために 一時的に格納できるようにする変数です。 .request .ev リクエストによってできます。 .LP .B フォント は、名前もしくは内部番号のどちらかで判別されます。 現在のフォントは .request .ft リクエストもしくは .esc f エスケープシーケンスで選択されます。 デバイスごとに特殊なフォントがありますが、次のフォントはすべての デバイスで利用可能です。 .B R は標準フォント、ローマン体です。 .B B はその .B ボールド体 です。 .I イタリック体 フォントは .B I と呼ばれておりどこででも利用可能ですが、テキストデバイスでは ローマン体フォントに下線がついたものとして表示されます。 グラフィカルの出力デバイスに対しては、次のフォントの固定幅の 修飾文字が存在します。 .BR CR , .BR CI , および .BR CB です。 テキストデバイスでは、いずれにしても文字はすべて固定幅です。 .LP さらに、roff の拡張要素がいくつかあります。 .B ディバージョン は後で利用できるように情報をマクロに格納します。 .B トラップ はページの先頭から何行目とか、ディバージョンや入力において 何行目というような位置条件です。 アクションの中には、条件が揃ったときに自動的に起動するように 指示できるものがあります。 .LP これより詳細な情報については、groff info ファイルに示されています。 . .\" -------------------------------------------------------------------- .SH "制御文字" .\" -------------------------------------------------------------------- ある条件下で特別な制御タスクをもつ文字が いくつかあります。 .TP .character . ドットは、行の先頭あるいは .request .if , .request .ie , .request .el , および .request .while リクエスト中の条件の後にある場合のみ特別です。 その位置では、リクエスト (あるいはマクロ) を導入する制御文字になります。 .esc . エスケープを使うと、この特別な動作を遅らせることができます。 .request .cc リクエストを使うことで、この制御文字を別の文字に設定して、 ドット .'char . を特殊文字でなくすることができます。 .IP "" 他の位置にドットがあるときは、ただのドット文字以上の意味はありません。 テキスト段落の中では、文はそれぞれ新しい行で始めるほうが有利です。 .TP .character ' シングルクォートには 2 つの制御機能があります。行の先頭および 条件リクエスト内では、シングルクォートは非ブレーク制御文字に なります。これは、ドットのようにリクエストを導入しますが、 リクエストが行を折り返さないような追加のプロパティをつけるものです。 .request .c2 リクエストを用いると、非ブレーク制御文字を別の文字に設定する ことができます。 .IP "" 2 つめのタスクとして、シングルクォートは、 いくつかの関数エスケープシーケンスの中で 引数の区切り文字としてよく使用されます (引数に含まれない文字のペアなら どれでも良いのですが)。 その他の場所にあれば、シングルクォート文字あるいはアポストロフィ文字 になります。 groff は、表示用の表記として エスケープシーケンス .esc (cq を提供しています。 .TP .character \(dq ダブルクォートはリクエストおよびマクロ中の引数を括るときに使用されます。 エスケープされたダブルクォート .esc \(dq はコメントの開始になります。 それ以外は、ダブルクォートには特別な機能はありません。 groff は、表示用の表記として エスケープシーケンス .esc (dq を提供しています。 .TP .character \(rs バックスラッシュは、通常エスケープシーケンスの開始を意味しています (この文字は、 .request ec リクエストによって変更できます)。 表示用のエスケープ文字は、エスケープシーケンス .esc e で、バックスラッシュのグリフは .esc (rs で得られます。 .TP .character ( 開き括弧は、エスケープシーケンス内で、ちょうど 2 文字でできた エスケープ名あるいは引数を導入したときのみ特別な意味を持ちます。 groff では、この動作は \f(CB[]\fP の組で置き換えることができます。 .TP .character [ 開き角括弧は、groff のエスケープシーケンス内でのみ特別な意味を持ちます。 これは、長いエスケープシーケンス名やエスケープシーケンスの引数を 導入するときに使用します。 それ以外の場合は、例えばマクロ呼び出しなどでも特別な意味はありません。 .TP .character ] 閉じ角括弧は、groff のエスケープシーケンス内でのみ特別な意味を持ちます。 これは、長いエスケープシーケンス名やエスケープシーケンスの引数を 終わらせます。 それ以外の場合は、特別な意味はありません。 .TP \f(CIspace\fP 空白文字は、機能的な働きしか持たない文字です。これは、 リクエストやマクロの引数の区切り文字、 およびテキスト行における単語の区切り文字です。 また、空白文字は groff の単語間の水平方向の空白計算に作用します。 定義された空白幅を得たい場合は、 .'char "\(rs\ " (エスケープ文字とそれに続いた空白文字)、 .esc | , .esc ^ , あるいは .esc h のようなエスケープシーケンスを使う必要があります。 .IP \f(CInewline\fP テキストの段落においては、改行は空白文字とほぼ同じような作用をします。 連結された行は、エスケープした改行で指定できます。 つまり、行の最後の文字に .'char \(rs を指定するのです。 .IP \f(CItab\fP テキスト中にタブ文字があれば、インタプリタは次の定義済みのタブ位置へ 水平方向にインデントを作ります。 タブ位置の調整には洗練されたインタフェースが存在します。 . .\" -------------------------------------------------------------------- .SH "数式" .\" -------------------------------------------------------------------- .B 数値 は、符号つき整数、符号なし整数、浮動小数点実数のいずれか、およびそれに 単位指定子を付加したものです。 .B 単位指定子 は、計測単位を表す 1 文字の略語です。 単位指定子が後についた数字は、サイズに関する値を意味しています。 デフォルトでは、数値は単位指定を持ちません。つまり、 単なる数字にすぎません。 .LP roff 言語では、次の単位指定子を定義しています。 .LP .na .nh .TS center, tab(@); LfCB Lw(4i). c@センチメートル i@インチ P@パイカ\ \(eq\ 1/6\ インチ p@ポイント\ \(eq\ 1/72\ インチ m@T{ em\ \(eq\ \fRポイント値でのフォントサイズ (文字 `\f(CRm\fR' の幅) T} M@\f(CRem\fR の 100 倍 n@en\ \(eq\ em/2 u@\fR実際の出力デバイスでの基本単位 v@\fR基本単位での行送り幅 z@T{ スケールされたポイント数\ \(eq\ 1 ポイントの 1/\f(CIsizescale\fR 倍 (フォントの \fIDESC\fP ファイルで定義) T} .TE .LP .ad .hy .B 数式 は、先で定義された数値と算術演算子 .operator + , .operator \- , .operator * , .operator / , .operator % .RI ( 剰余 ), 比較演算子 .operator == ( .operator = と同じ), .operator <= , .operator >= , .operator < , .operator > , 論理演算子 .operator & .RI ( 論理積 ), .operator : .RI ( 論理和 ), .operator ! .RI ( 否定 ), および括弧 .operator ( と .operator ) との組み合わせです。 .LP さらに、 .I groff は、数式に対して次の演算子を追加しました。 .LP .na .nh .TS center, tab(@); LfCB Lw(4i). e1\f(CB>?\fPe2@\f(CIe1\fP と \f(CIe2\fP の最大値 e1\f(CB 「特別フォント」 . .REQ .ft 直前のフォントに戻します。 リクエスト .request \(rsfP と同じです。 . .REQ .ft font フォント名または番号 .argument font に変更します。 エスケープシーケンス .esc[arg] f font と同じです。 . .REQ .ftr font1 font2 フォント .argument font1 をフォント .argument font2 に変換します。 . .REQ .hc 追加ハイフネーション指定文字を削除します。 . .REQ .hc c 追加ハイフネーション指定文字として\ \c .argument c を設定します。 . .REQ .hcode c1 code1 c2 code2 ... 文字 .argument c1 のハイフネーションコードを .argument code1 に、文字 .argument c2 のコードを .argument code2 のように設定します。 . .REQ .hla lang 現在のハイフネーション言語を .argument lang に設定します。 . .REQ .hlm n ハイフンされた行の最大連続数を .argument n に設定します。 . .REQ .hpf file ハイフネーションのパターンをファイル .argument file から読み込みます。 . .REQ .hw words 例外的なハイフネーションをする単語のリストを .argument words で指定します。 . .REQ .hy N ハイフネーションモードを .argument N に変更します。 . .REQ .hym n ハイフネーションのマージンを .argument n に設定します (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .hys n ハイフネーションのスペースを .argument n に設定します。 . .REQ .ie cond anything 条件式 .argument cond が真ならば .argument anything を処理します。偽の場合はリクエスト .request .el へ移動します。 . .REQ .if cond anything 条件式 .argument cond が真ならば .argument anything を処理します。偽の場合は何もしません。 . .REQ .ig リクエスト .request .. が呼ばれるまでテキストを無視します。 . .REQ .ig end リクエスト .request .end が呼ばれるまでテキストを無視します。 . .REQ .in インデント量を直前の値に戻します。 . .REQ .in \(+-N 引き数 .argument \(+-N に従ってインデント量を変更します (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .it N trap 入力行のカウントトラップを位置 .argument N に設定します。 . .REQ .kern pairwise kerning を有効にします。 . .REQ .kern n .argument n が 0 ならば pairwise kerning を無効にします。0 でなければ 有効にします。 . .REQ .lc リーダ繰り返し文字の定義を削除します。 . .REQ .lc c リーダ繰り返し文字を\ \c .argument c に設定します。 . .REQ .length register anything 文字列 .argument anything の文字列長をレジスタ .argument register に書き込みます。 . .REQ .lf N file 入力する行数を .argument N に、ファイル名を .argument file に設定します。 . .REQ .lg N 引数 .argument N が 0 より大きければリガチャ (合字) モードにします。 . .REQ .ll 行幅を直前の値に戻します。 . .REQ .ll \(+-N 行幅を引数 .argument \(+-N に従って設定します (デフォルトの設定は .scalednumber 6.5 i で、単位指定子は .scaleindicator m です)。 . .REQ .ls 追加の行間スキップ量を直前の値に戻します。 . .REQ .ls N 追加の行間スキップ量を .argument N に設定します。 つまり、テキストの出力行それぞれの後に .argument N -1 行の空白行を挿入します。 . .REQ .lt \(+-N タイトルの長さです (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .mc マージンの文字を無効にします。 . .REQ .mc c それぞれのテキスト行の後と右側マージンの間に文字 .argument c を出力します。 . .REQ .mc c N マージン文字を .argument c に、右側マージンからの距離を .argument N に設定します (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .mk register 現在の垂直位置を .argument register にマークします。 . .REQ .mso file リクエスト .so と同じですが、tmac ディレクトリにある .I file も検索されます。 . .REQ .na 出力行の位置揃えを行いません。 . .REQ .ne 1 行分の行送りが必要です。 . .REQ .ne N .argument N 行分の行送りが必要です (デフォルトの単位指定子は\ \c .scaleindicator v です)。 . .REQ .nf 出力行に行詰めや位置揃えを行いません。 . .REQ .nh ハイフネーションをしません。 . .REQ .nm 行番号モードを無効にします。 . .REQ .nm \(+-N M S I 行番号モードの、行番号、行番号出力間隔、空白、インデントを 設定します。 . .REQ .nn 次の行に行番号をつけません。 . .REQ .nn N 次の .argument N 行に行番号をつけません。 . .REQ .nr register \(+-N M レジスタの値を、インクリメント値 .argument M で .argument \(+-N に設定・変更します。 . .REQ .nroff 組み込み条件式 .B n を真に、 .B t を偽にします。 . .REQ .ns 空白なしモードにします。 . .REQ .nx filename 次のファイルを表します。 . .REQ .open stream filename ファイル .register filename を書き込みモードでオープンし、名前 .register stream を持つストリームに関連づけます。 . .REQ .opena stream filename リクエスト .request .open と同じですが、追加モードでファイルをオープンします。 . .REQ .os リクエスト .request .sv で指定された行送り量を出力します。 . .REQ .pc ページ番号文字を .'char % に戻します。 . .REQ .pc c ページ番号文字を設定します。 . .REQ .pi program プログラム .argument program に出力をパイプします (nroff のみ)。 . .REQ .pl ページ長をデフォルトの .scalednumber 11 i に設定します。 現在のページ長はレジスタ .register .p に格納されています。 . .REQ .pl \(+-N ページ長を .argument \(+-N に変更します (デフォルトの単位指定子は\ \c .scaleindicator v です)。 . .REQ .pm マクロ名とサイズを出力します (サイズは 1 ブロック 128 バイトの ブロック数です)。 . .REQ ".pm t" マクロ全体のサイズだけを出力します (サイズは 1 ブロック 128 バイトの ブロック数です)。 . .REQ .pn \(+-N 次のページ番号を .argument N に設定します。 . .REQ .pnr 現在定義されている数値レジスタの名前と内容を標準エラー出力に 出力します。 . .REQ .po ページオフセットを直前の値に戻します。現在のページオフセットはレジスタ .register .o に格納されています。 . .REQ .po \(+-N ページオフセットを .argument N に設定します。 . .REQ .ps ポイントサイズを直前の値に戻します。 . .REQ .ps \(+-N ポイントサイズを指定します。エスケープシーケンス .esc[arg] s \(+-N と同じです。 . .REQ .psbb filename PostScript 画像 .argument filename のための矩形領域を取得します。 . .REQ .pso command リクエスト .request .so と同様ですが、 .argument command の標準出力から入力します。 . .REQ .ptr すべてのトラップの名前と位置を標準エラー出力に出力します (入力行のトラップとディバージョンのトラップは含まれません)。 . .REQ .rchar c1 c2... 文字定義 .argument c1 , .argument c2 , .argument ... を削除します。 . .REQ .rd prompt 挿入を読み込みます。 . .REQ .rj n 次の .argument n 行の入力行を右寄せします。 . .REQ .rm name .argument name で指定されたリクエスト、マクロ、文字列を削除します。 . .REQ .rn old new .argument old で指定されたリクエスト、マクロ、文字列の名前を .argument new に変更します。 . .REQ .rnn reg1 reg2 レジスタ名 .argument reg1 を .argument reg2 に変更します。 . .REQ .rr register レジスタ .argument register を削除します。 . .REQ .rs 空白をもとに戻します。つまり空白なしモードを無効にします。 . .REQ .rt \(+-N マークしておいた垂直位置まで戻します (上方向のみ)。 (デフォルトの単位指定子は\ \c .scaleindicator v です)。 . .REQ .shc ソフトハイフン文字を .esc (hy に戻します。 . .REQ .shc c ソフトハイフン文字を .argument c に設定します。 . .REQ .shift n マクロにおいて、引き数を位置 .argument n にシフトします。 . .REQ .so filename ソースファイルをインクルードします。 . .REQ .sp 1 行スキップします。 . .REQ .sp N .argument N の行送りを挿入します。 .argument N の符号によって上下方向が決まります (デフォルトの単位指定子は .scaleindicator v です)。 . .REQ .special s1 s2 ... フォント .argument s1 , .argument s2 , などを特別とします。現在のフォントにない文字をこれらから検索します。 . .REQ .ss N 空白文字のサイズを .argument N /12 に設定します。単位は現在のフォントの空白幅です。 . .REQ .ss N M 空白文字のサイズを .argument N /12 に、文の空白サイズを .argument M /12 に設定します。単位は現在のフォントの空白幅 (\f(CR\(eq1/3 em\fP) です。 . .REQ .sty n style 位置 .argument n のフォントをスタイル .argument style に関連づけます。 . .REQ .substring register n1 n2 レジスタ .argument register の文字列の中の部分文字列 .argument n1 を .argument n2 に置き換えます。 . .REQ .sv 行送り量を .scalednumber 1 v に設定します。 . .REQ .sv N リクエスト .os で出力される空白行の送り量を .argument N に設定します。 . .REQ .sy command-line プログラム .argument command-line を実行します。 . .REQ ".ta T" N タブ位置を .argument N の倍数に設定します (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .ta n1 n2 ... nn \f(CBT\fP r1 r2 ... rn 位置 .argument n1 , .argument n2 , \&... , .argument nn のタブ位置をそれぞれ .argument nn + r1 , .argument nn + r2 , \&... .argument nn + rn に、さらにそれ以降を .argument nn + rn + r1 , .argument nn + rn + r2 , \&... .argument nn + rn + rn のように設定します。 . .\".REQ .tar .\"Restore internally saved tab positions. .\". .\".REQ .tas .\"Save tab positions internally. . .REQ .tc タブ繰り返し文字を削除します。 . .REQ .tc c タブ繰り返し文字を\ \c .argument c に設定します。 . .REQ .ti \(+-N 次の行を一時的にインデントします (デフォルトの単位指定子は\ \c .scaleindicator m です)。 . .REQ .tkf font s1 n1 s2 n2 フォント .argument font のトラックカーニングを有効にします。 . .REQ .tl \f(CB'\fPleft\f(CB'\fPcenter\f(CB'\fPright\f(CB'\fP 3 つの部位をもつタイトルです。 . .REQ .trf filename ファイル .argument filename の内容をそのまま出力します。 . .REQ .tm anything .argument anything を端末 (UNIX の標準的なメッセージ出力先) に出力します。 .\" 「ターミナル」 => 「端末」 . .REQ .tr abcd.... 出力で .argument a を .argument b に、 .argument c を .argument d のように変換します。 . .REQ .trnt abcd.... リクエスト .request .tr と同じですが、 .esc ! によってディバージョンへと出力されるテキストは変換されません。 . .REQ .troff 組み込み条件式 .B t を真に、 .B n を偽に設定します。 . .REQ .uf font アンダーラインフォントセットを .argument font に設定します (リクエスト .request .ul で切り替わります)。 . .REQ .ul N 入力行を .argument N 行、アンダーライン付きにします (troff では イタリック体になります)。 . .REQ .vpt n .argument n が 0 でなければ垂直位置のトラップを有効にします。 0 ならば無効にします。 . .REQ .vs 行送り幅を直前の値に戻します。 . .REQ .vs N 行送りの基準線間隔を .argument N に設定します。 デフォルト値は .scalednumber 12 p です。 . .REQ .warn n 警告コードを .argument n に設定します。 . .REQ .wh N trap 位置によるトラップを設定します。負の値の場合はページ末尾からになります。 . .REQ .while cond anything 条件式 .argument cond が真ならば .argument anything を入力として受理します。 . .REQ .write stream anything ストリーム .argument stream へ .argument anything を書き込みます。 . .PD .LP これらの基本的な groff リクエストの他にも、 マクロの呼び出しがあります。 これらはマクロパッケージ (概要は .BR roff (7) を参照) やプリプロセッサに由来するものです。 .LP プリプロセッサマクロを認識するのは容易です。 これらは独特のマクロの対で括られています。 .LP .TS box, center, tab (@); c | c | c CfCB | CfCB | CfCB. プリプロセッサ@開始マクロ@終了マクロ = eqn@.PS@.PE grap@.G1@.G2 grn@.GS@.GE pic@.PS@.PE refer@.R1@.R2 soelim@\fIなし@\fIなし tbl@.TS@.TE .TE .LP . .\" -------------------------------------------------------------------- .SH "エスケープシーケンス" .\" -------------------------------------------------------------------- . エスケープシーケンスは、行中の要素であり、通常は バックスラッシュ .'char \(rs とそれに続けてエスケープ名をつける形で導入されます。場合によっては 必要な引数をつけることもあります。 入力処理は、エスケープ文字あるいはその引数の直後から再開されます。 引数には区切り文字がはさまっているわけではありません。 そのため、エスケープ名や引数の終わりを決定する方法が必要です。 .LP これは、名前 (エスケープ名、および変数名からなる引数) を 角括弧 .esc[] name で囲い、定数引数 (数式および文字) を アポストロフィ (ASCII 0x27) で .IR \(cqconstant\(cq のように囲うことによって実現します。 .LP エスケープ名には短い名前の省略形があります。 2 文字のエスケープ名は開き括弧で .esc( xy のように指定され、閉じ括弧は必要ありません。 そして、特殊文字である .'char [ と .'char ( 以外の 1 文字の名前はすべて .esc \fP\f(CIc のようにマーカなしで指定することができます。 .LP 長さ .number 1 の定数の引数もアポストロフィのマーカを省略できますが、 2 文字の名前のときには省略できません。 .LP 1 文字のエスケープシーケンスは主に行中での 関数とシステムに関連したタスク用に使われるのに対して、 .esc( "" が続いた 2 文字の名前は roff システムで定義済みの特殊文字用に 使われます。 2 文字より多い文字を持った名前 .esc[] name は、ほとんどユーザ定義の文字を表しています ( リクエスト .request .char を参照してください)。 . .\" -------------------------------------------------------------------- .SS "1 文字のエスケープシーケンス" .\" -------------------------------------------------------------------- . .PD 0 . .\" --------- comments --------- . .ESC \(dq コメントの開始です。 行末までのものすべてが無視されます。 . .ESC # 次の改行文字までのものすべてが無視されます。 これは、コピーモードで解釈されます。 .esc \(dq と似ていますが、終端となる改行を無視する点が異なります。 . .\" --------- strings --------- . .ESC * s 1 文字の名前 .argument s を持った文字列変数に格納される文字列です。 . .ESC *( st 2 文字の名前 .argument st を持った文字列変数に格納される文字列です。 . .ESC[] * stringvar 任意の長さの名前 .argument stringvar を持った文字列変数に格納される文字列です。 . .\" --------- macro arguments --------- . .ESC $0 現在のマクロが呼び出されている名前。 リクエスト .request .als は、1 つのマクロに複数の名前をつけることができます。 . .ESC $ x .argument x 番目のマクロの引数。ここで、 .argument x は、1 から 9 までの数値です。 . .ESC $( xy 2 桁の番号 .argument xy 番目のマクロの引数。 . .ESC[] $ nexp .argument nexp 番目のマクロの引数。ここで、 .argument nexp は 1 以上の整数に評価される数値表現です。 . .ESC $* マクロにおいて、引数すべてを空白文字区切りで連結したもの。 . .ESC $@ マクロにおいて、引数すべてをそれぞれダブルクォートで囲い、 空白文字で区切って連結したもの。 . .\" --------- escaped characters --------- . .ESC \(rs バックスラッシュ 1 個に縮退します。コピーモードで エスケープ文字として解釈されるのを遅らせるときに便利です。 表示可能なバックスラッシュには、 .esc e を使用してください。 . .ESC \(cq 揚音アクセント符号 \(aa 。 .esc( aa と同じです。 エスケープなし: アポストロフィ、右クォーテーション記号、シングルクォート (ASCII 0x27)。 . .ESC ` 抑音アクセント符号 \(ga 。 .esc( ga と同じです。 エスケープなし: 左クォート、バッククォート (ASCII 0x60)。 . .ESC \- 現在のフォントでの \- 符号。 . .ESC . 解釈されないドット (ピリオド)。行頭にあってもそうなります。 . .ESC % デフォルトでのオプションのハイフン文字。 . .ESC ! 透過行指定子。 . .ESC ? anything\fB?\fP ディバージョンにおいて、そのまま .argument anything を組み込みます。コピーモードで .argument anything は読み込まれます。 エスケープシーケンス .esc ! および .esc ? も参照してください。 . . .\" --------- spacing --------- . .ESC \& space 連結されない空白の大きさを持った空白文字 (改行もされません)。 . .ESC 0 数字の幅。 . .ESC | 1/6\ em の狭い空白文字。nroff では幅 0 です。 . .ESC ^ 1/12\ em やや狭い空白文字。nroff では幅 0 です。 . .ESC & 表示されない、幅 0 の文字。 . .ESC ) .esc & と同様ですが、文の終わりを認識する目的で、 cflags リクエストを 用いて透過になるように宣言された文字のように振る舞うという 点で異なります。 . .ESC / 次の文字がローマン体であるときには、それの前の文字の幅を増やして 次の文字との間の余白が修正されるようにします。 . .ESC , 前の文字がローマン体であるときには、次の文字の余白を変更して 前の文字との間の余白が修正されるようにします。 . .ESC ~ 改行されない空白。行を調整するとき、通常の単語間の空白のように 引き延ばされます。 . .ESC \& newline 無視される改行。行を連続させるときのためです。 . .\" --------- structuring --------- . .ESC { 条件入力の開始。 . .ESC } 条件入力の終了。 . .\" --------- longer escape names --------- . .ESC ( st 2 文字の名前を持った特殊文字。 セクション .BR "特殊文字" を参照してください。 .ESC[] \& name 任意の長さの名前 .argument name を持った文字 . .\" --------- alphabetical escapes --------- . .ESC a 解釈されないリーダ文字。 . .ESCq A anything .argument anything が文字列、マクロ、ディバージョン、レジスタ、環境、あるいは フォント名として受け付けられるものの場合、 .number 1 です。そうでない場合 .number 0 になります。 . .ESCq b abc... 角括弧を作る関数。 . .ESC c テキスト処理を中断します。 . .ESCq C char .argument char と呼ばれる文字。 .esc[] char と同じですが、他の roff バージョンと互換性があります。 . .ESC d 垂直単位で 1/2 em だけ前方 (下) に移動します (nroff では 1/2 行です)。 . .ESCq D charseq .argument charseq 中の文字で定義されたグラフィカルな要素を描きます。 詳細は groff info ファイルを参照してください。 . .ESC e 現在のエスケープ文字の表示できるバージョン。 . .ESC E エスケープ文字と等価ですが、コピーモードでは評価されません。 . .ESC f F 1 文字の名前もしくは 1 個の数字 .argument F を持つフォントに変更します。 . .ESC f( fo 2 文字の名前もしくは 2 個の数字 .argument fo を持つフォントに変更します。 . .ESC[] f font 任意の長さの名前もしくは数式 .argument font で表されるフォントに変更します。 . .ESC[] g reg リクエスト .request .af に適した、名前 .argument reg を持ったレジスタのフォーマットを返します。 別の形式として .esc(arg g xy および .escarg g x があります。 . .ESCq h N 局所的な水平移動。右側へ .argument N だけ移動します (負の値のときは左側へ移動します)。 . .ESCq H N 現在のフォントの高さを .argument N に設定します。 . .ESC[] k reg 任意の長さの名前 .argument reg を持つレジスタ中の水平入力位置をマークします。 別の形式では .esc(arg k xy と .escarg k x です。 . .ESCq l Nc 水平線描画関数 (文字 .argument c を用いることも可能です)。 . .ESCq L Nc 垂直描画関数 (文字 .argument c を用いることも可能です)。 . .ESC n r 1 文字の名前 .argument r を持つレジスタ変数に格納されている数値。 . .ESC n( re 2 文字の名前 .argument re を持つレジスタ変数に格納されている数値。 . .ESC[] n reg 任意の長さの名前 .argument reg を持つレジスタ変数に格納されている数値。 . .ESCq N n 現在のフォントで、コード .argument n で指定された文字を出力します。特殊フォントは検索されません。 リクエスト .request .char を用いて文字にフォントを追加するときに便利です。 . .ESCq o abc... 文字 .argument a , .argument b , .argument c , などを 2 度打ちします。 . .ESC p 改行のあと出力行を展開します。 . .ESC r 垂直方向に 1\ em 逆戻りします (nroff では 1 行逆戻りします)。 . .ESCq R name \(+-n リクエスト .request .nr .argument name .argument \(+-n と同じです。 . .ESC[] s \(+-N ポイントサイズを .I N スケールポイントに設定します。別の書式として .BI \(rss \(+- [ N ]\c , .BI \(rss' \(+-N '\c , .BI \(rss \(+- ' N '\c , .esc(arg s \(+-xy , .BI \(rss \(+- ( xy\c , .escarg s \(+-x が使えることに注意してください。 これは、リクエスト .request .ps と同じです。 . .ESCq S N 出力を .argument N 度傾けます。 . .ESC t 解釈されない水平タブ。 . .ESC u 垂直方向に 1/2 em 逆戻りします (nroff では 1/2 行逆戻りします)。 . .ESCq v N 局所的な垂直移動。 .argument N だけ下がります (負の値のときは上がります)。 . .ESC[] V env 環境変数 .argument env の内容。別の書式では、 .esc(arg V xy と .escarg V x が使えます。 . .ESCq w string 文字列 .argument string の幅。 . .ESCq x N さらに行送りする関数 (負の値なら前へ、正の値なら後ろへ 行送りします)。 . .ESCq X string .argument string をデバイス制御関数として出力します。 . .ESC[] Y name 文字列変数あるいはマクロ .argument name をデバイス制御関数として解釈しないように出力します。 別の書式では、 .esc(arg Y xy と .escarg Y x になります。 . .ESC z c 幅 0 (空白なし) で .argument c を出力します。 . .ESCq Z anything .argument anything を出力し、水平・垂直位置を元に戻します。 .argument anything にはタブや先頭文字は含まれません。 .PD .LP エスケープシーケンス .esc e , .esc . , .esc \(dq , .esc $ , .esc * , .esc a , .esc n , .esc t , .esc g , および .escarg \& newline はコピーモードで解釈されます。 .LP .esc ( あるいは .esc [ で始まるエスケープシーケンスは 1 文字のエスケープシーケンスを 表してはいませんが、2 つ以上の文字を持ったエスケープ名の 開始を示します。 .LP バックスラッシュの後に定義済みのエスケープシーケンスを 形成しない文字が続く場合は、バックスラッシュは黙って無視され、 文字そのものがマップされます。 . .\" -------------------------------------------------------------------- .SS "特殊文字" .\"-------------------------------------------------------------------- よく使われる特殊文字は文字 .argument x と .argument y を用いた .(esc \fP\f(CIxy の形式のエスケープシーケンスであらかじめ定義されています。 特殊文字の中には通常のフォントに含まれているものも一部ありますが、 ほとんどは特殊フォントでしか利用できません。 最も重要なグリフを抜き出したものを次に示します。完全なリストは、 .BR groff_char (7) にあります。 .RS .LP .PD 0 . .ESc bu 中黒 .ESc co 著作権記号 .ESc ct セント記号 (通貨) .ESc dd 2 重ダガー .ESc de 度記号 .ESc dg ダガー .ESc em 全角ダッシュ .ESc hy ハイフン .ESc rg 登録記号 .ESc sc セクション記号 .ESc ul アンダーライン文字 .ESc == 等号 .ESc >= 以上 .ESc <= 以下 .ESc != 不等号 .ESc -> 右矢印 .ESc <- 左矢印 .ESc +- プラスマイナス記号 .PD .RE . .\" -------------------------------------------------------------------- .SH レジスタ .\" -------------------------------------------------------------------- レジスタは値を格納する変数です。 groff では、ほとんどのレジスタは数値を格納しますが (前述セクション .B 数式 を参照してください)、なかには文字列値を保持できるものもあります。 .LP 各レジスタには名前が与えられています。 任意のレジスタを定義でき、リクエスト .request .nr .argument register で定義・設定できます。 .LP レジスタに格納された値は、エスケープシーケンス .esc n を用いて取り出すことができます。 .LP 最も有用なのは、定義済みのレジスタです。 次からは、レジスタのことを話しているのだということを明確にするため、 .argument name という表記を用いて .register name レジスタのことを示します。 .esc en[] 修飾はレジスタ名の一部ではないことを気にとめておいてください。 . .\" -------------------------------------------------------------------- .SS "読み込み専用レジスタ" .\"-------------------------------------------------------------------- 次のレジスタは、ユーザが書き換えられない定義済みの値を持った レジスタです (通常、ドットで始まるレジスタは読み込み専用です)。 ほとんどは、現在の設定についての情報を提供したり、リクエスト呼び出し からの結果を保存したりするものです。 .LP .PD 0 .REG .$ 現在のマクロの引数の個数 .REG .A オプション .B \-A が使用されているときに .B troff に .number 1 を設定します。 .BR ntoff では常に .number 1 です。 .REG .H 基本単位で表した、利用可能な水平方向の解像度 .REG .T オプション .B \-T が使用されているとき .number 1 が設定されています。 .REG .V 基本単位で表した、利用可能な垂直方向の解像度。 .REG . 最後に .escarg x 'N' を用いて指定した行送り幅。 .REG .C 互換モードが有効になっている場合は 1 で、そうでない場合 0 です。 .REG .c 現在の入力行番号 .REG .cdp 現在の環境に追加された最後の文字の深さ。 最後の文字が基準線から下に突き出ている場合に正になります。 .REG .ce リクエスト .request .ce で設定された中央寄せされる行の残数。 .REG .cht 現在の環境に追加された最後の文字の高さ。 基準線よりも上に文字が突き出ている場合に正になります。 .REG .csk 現在の環境に追加された最後の文字の傾き。 文字の傾きとは、文字の上についたアクセント記号が文字の中央からどれだけ 右に離れて置かれるかということです。 .\"the right of the center of a character...? .\"この訳が正しいと思います。 .REG .d 現在のディバージョンでの垂直方向の位置です。レジスタ .register nl と同じです。 .REG .ev 現在の環境の名前もしくは番号です (文字列の値です)。 .REG .f 現在のフォント番号です。 .REG .fam 現在のフォントファミリです (文字列の値です)。 .REG .fp 次に空いているフォント位置番号。 .REG .g GNU troff では常に 1 です。 マクロ中で groff で動作しているかどうかをテストする場合、 このレジスタを使用する必要があります。 .REG .h 現在のページあるいはディバージョンでのテキスト基準線の 最高点です。 .REG .hla リクエスト .B .hla で設定された現在のハイフネーション言語。 .REG .hlc 直前で連続したハイフネーション行数。 .REG .hlm 連続したハイフネーション行数の許される最大値。これは、 リクエスト .request .hlm で設定されます。 .REG .hy 現在のハイフネーションフラグ ( リクエスト .request .hy で設定されます)。 .REG .hym 現在のハイフネーションのマージン ( リクエスト .request .hym で設定されます)。 .REG .hys 現在のハイフネーション間隔 ( リクエスト .request .hys で設定されます)。 .REG .i 現在のインデント。 .REG .in 現在の出力行に対して適用されるインデント。 .REG .kern pairwise kerning が有効になっている場合 .number 1 で、無効になっていれば .number 0 です。 .REG .l 現在行の長さです。 .REG .lg 現在の合字モード ( リクエスト .request .lg で設定されます)。 .REG .ll 現在の出力行に対して適用される行の長さ。 .REG .lt タイトルの長さ ( リクエスト .request .lt で設定されます)。 .REG .n 直前の出力行でのテキスト部分の長さ。 .REG .ne トラップを生起させる原因となった最後のリクエスト .request .ne が必要とした空白の量。 このレジスタは、 .register .trunc と一緒に使用すると便利です。 .REG .o 現在のページのオフセット。 .REG .p 現在のページの長さ。 .REG .pn 次ページの番号。これは、 リクエスト .request .pn で定義された値もしくは現在ページに 1 を足した番号の いずれかです。 .REG .ps スケールポイントで表した現在のポイントサイズ。 .REG .psr 最後に要求された、スケールポイントで表した ポイントサイズ。 .REG .rj リクエスト .request rj によって設定された右寄せされる行の数。 .REG .s 10 進小数での現在のポイントサイズ。 .REG .sr 10 進小数での最後に要求されたポイントサイズ (文字列値)。 .REG .t 次のトラップまでの距離。 .REG .tabs 現在のタブ設定の文字列表現。 リクエスト .request .ta に対する引数として使用するのに適しています。 .REG .trunc 最近の垂直位置トラップによって切り詰められた垂直スペースの量。 リクエスト .request .ne によるトラップが引き起こされた場合は、そのリクエストによって生じた 垂直移動量をさらにマイナスした値になります。 別の言い方をすれば、トラップが発生した時点での、 トラップが起きなかった場合の垂直位置と現在の垂直位置との差を 表しています。 リクエスト .register .ne と一緒に使用すると便利です。 .REG .ss リクエスト .request .ss の第 1 引数によって設定されたパラメータの値。 .REG .sss リクエスト .request .ss の第 2 引数によって設定されたパラメータの値。 .REG .u 行連結モードのときは 1 で、そうでなければ 0 です。 .REG .v 現在の垂直方向の行送り量。 .REG .vpt 垂直位置トラップが有効なら .number 1 で、無効なら .number 0 です。 .REG .w 直前の文字の幅。 .REG .warn 現在有効になっている警告の番号コードの和。 .REG .x メジャーバージョン番号。 .REG .y マイナバージョン番号。 .REG .Y groff のリビジョン番号。 .REG .z 現在のディバージョン名。 .REG llx 与えられた PostScript 画像 ( .request .psbb で設定されます) の左下 x 座標 (PostScript 単位)。 .REG lly 与えられた PostScript 画像 ( .request .psbb で設定されます) の左下 y 座標 (PostScript 単位)。 .REG rsb .register sb と同様ですが、文字の高さおよび深さを勘定に含めています。 .REG rst .register st と同様ですが、文字の高さおよび深さを勘定に含めています。 .REG sb 文字列の、基準線の下側の深さ (幅関数 .esc w で生成されます)。 .REG skw .esc w 引数の最後の文字の中央からの右スキップ幅。 .REG ssc 添字の直前にある文字に追加すべき水平方向の空白量 (幅関数 .esc w で生成されます) (負の値になる可能性もあります)。 .REG st 文字列の、基準線の上の高さ (幅関数 .esc w で生成されます)。 .REG urx 与えられた PostScript 画像 ( .request .psbb で設定されます) の右上 x 座標 (PostScript 単位)。 .REG ury 与えられた PostScript 画像 ( .request .psbb で設定されます) の右上 y 座標 (PostScript 単位)。 .PD . .\" -------------------------------------------------------------------- .SS "書き込み可能なレジスタ" .\"-------------------------------------------------------------------- 次のレジスタは、ユーザによって読み書き可能です。 定義済みのデフォルト値を持っていますが、ドキュメントを カスタマイズするために変更できます。 .LP .PD 0 .REG % 現在のページ番号。 .REG c. 現在の入力行番号。 .REG ct 文字の種類 (幅関数 .esc w で指定されます)。 .REG dl 最後に行われたディバージョンの最大幅。 .REG dw 現在の曜日 (1-7)。 .REG dy 現在の日 (1-31)。 .REG hp 現在の入力行における水平位置。 .REG ln 出力行番号。 .REG mo 現在の月 (1-12)。 .REG nl 最後に表示されたテキストのベースラインの垂直方向の位置。 .REG slimit 0 よりも大きければ、入力スタック上のオブジェクトの最大数。 0 以下であれば、制限はありません。つまり、仮想メモリを使い果たすまで 再帰呼び出しし続けることができます。 .REG systat 最後の .request .sy リクエストによって実行された .I system() 関数の戻り値。 .REG year 現在の年 (2000 年問題対応です)。 .REG yr 現在の年から 1900 を引いたものです。2000 年問題対応にするには レジスタ .register year を代わりに使用してください。 .PD . .\" -------------------------------------------------------------------- .SH 警告 .\" -------------------------------------------------------------------- groff が生成する警告は各々名前およびコード番号で識別されます。 コードは 2 の冪乗になっていて、1 つの整数の上にビットエンコード できるようになっています。名前も警告のグループを参照するのに 使用できます。 .LP 警告と関連のある名前は、 .option \-w および .option \-W オプションで使用されます。 コード番号は リクエスト .request .warn および .esc[arg] n warn レジスタで使用されます。 .LP .PD 0 .Warning all group .warning di , .warning mac および .warning reg を除いたすべての警告です。 伝統的なマクロパッケージでの警告をすべて網羅しています。 .Warning break 4 行連結モード時に、1 行の長さよりも短くなるように 行を分割できませんでした。デフォルトでは有効です。 .Warning char 1 存在しない文字です。デフォルトでは有効です。 .Warning delim 8 閉じ区切り記号がないか、もしくは対応が取れません。 .Warning di 256 現在ディバージョンが存在しないのに 引数なしで .request .di あるいは .request .da を使っています。 .Warning el 16 対応するリクエスト .request .ie が存在しないのに .request .el リクエストを使っています。 .Warning escape 32768 認識されないエスケープシーケンスです。そのためエスケープ文字は 無視されます。 .Warning font 131072 存在しないフォントです。デフォルトでは有効です。 .Warning ig 262144 リクエスト .request \.ig を使って無視されているテキスト中で不正なエスケープがあります。 無視されるテキストの外側でこの警告が発生する場合、 エラーとなる状態です。 .Warning mac 512 定義されていない文字列、マクロ、およびディバージョンが使われました。 自動的に空文字として扱われます。通常は、名前ごとに 1 つしか 警告は出ません。 .Warning missing 8192 オプションではない引数が指定されていないリクエストです。 .Warning input 16384 不正な入力文字です。 .Warning number 2 不正な数式です。デフォルトでは有効です。 .Warning range 64 引数が範囲外です。 .Warning reg 1024 定義されていない番号レジスタを使っています。自動的に 値 0 をもつレジスタとして扱われます。通常は、 名前ごとに 1 つしか警告は出ません。 .Warning right-brace 4096 数字を指定すべき場所で .esc } が使われました。 .Warning scale 32 意味のない単位指定子です。 .Warning space 65536 リクエストあるいはマクロとその引数との間に空白がありません。 そのため、自動的にマクロは定義されません。 デフォルトでは有効です。 この警告は互換モードでは絶対に発生しません。 .Warning syntax 128 数式中の構文が曖昧です。 .Warning tab 2048 タブ文字の使い方が適切ではありません (クォートされていない マクロ引数中や数字を指定すべきところにタブ文字がある)。 .Warning w group すべての警告です。 .PD .LP .TS tab(@), box, expand; c c c | c c c | c c c R RI CB | R RI CB | R RI CB. Bit@Code@警告@Bit@Code@警告@Bit@Code@警告 _ 0@1@char@8@256@di@16@65536@space 1@2@number@9@512@mac@17@131072@font 2@4@break@10@1024@reg@18@262144@ig 3@8@delim@11@2048@tab 4@16@el@12@4096@right-brace 5@32@scale@13@8192@missing 6@64@range@14@16384@input 7@128@syntax@15@32768@escape .TE .LP . .\" -------------------------------------------------------------------- .SH 互換性 .\" -------------------------------------------------------------------- .I groff は、古典的な .I troff 用に書かれた roff コードや他の roff 実装用の roff コードを同じ方法で 処理できるようにする .B 互換モード を提供します。 .LP 互換モードはコマンドラインオプション .option \-C を用いて有効にでき、 .request .cp で有効にしたり無効にしたりできます。番号レジスタ .esc(arg n .C は、互換モードが有効であるとき .number 1 で、無効であるとき .number 0 です。 .LP 長い名前に対する GNU の考え方によってある種の非互換性が 生まれてしまうのでこれが必要になりました。 .I 古典的な troff は、 .IP .B \&.dsabcd .LP を .BR cd という中身を持った文字列 .B ab を定義しているものとして解釈します。 .I groff は、通常これを .request dsabcd という名前のマクロ呼び出しとして解釈します。 .LP さらに、 .I 古典的な troff では .esc *[ または .esc n[ を .register [ と呼ばれる文字列レジスタあるいは番号レジスタへのリファレンスとして 解釈します。 しかし、 .I GNU 独自の .IR モード では通常これを長い名前の始まりとして解釈してしまいます。 .LP .I 互換性 .IR モードでは、 groff はこれらを古典的な方法で解釈するようになりますが、長い名前は 認識されません。 .LP これに対して、 .I GNU 独自モード での groff は、文字列やマクロ、変換、番号レジスタ、フォントあるいは 環境名にエスケープシーケンス .esc e , .esc | , .esc ^ , .esc & , .esc } , .esc { , .esc "\ " (スペース), .esc ' , .esc ` , .esc - , .esc _ , .esc ! , .esc % , .esc c を使うことはできません。これに対して .I 古典的な troff ではこれらのエスケープシーケンスを使えます。 エスケープシーケンス .esc A は、名前の中でこれらのエスケープシーケンスを使わないようにするとき 役に立ちます。 .LP 小数のポイントサイズは、顕著な非互換性を生み出します。 .I 古典的な .IR troff では、 .request .ps リクエストは単位指定子を無視しますので、 .RS .LP .B .ps\ 10u .RE .LP とするとポイントサイズを 10 ポイントに設定します。 これに対して groff 独自のモードでは、ポイントサイズは スケールポイントで 10 ポイントに設定します。 .LP .I groff モードでは、整形されていない入力と整形された出力文字との間に 基本的な違いがあります。 出力文字がどのように出力されるかに影響を与えるものは、すべて その文字と一緒に格納されます。一度出力文字が作られれば、 その後でどのようなリクエストが実行されても出力文字は影響を受けません。 .request .bd , .request .cs , .request .tkf , .request .tr , .request .fp のいずれのリクエストでも同様です。 .LP 通常、出力文字は、入力文字を現在の出力行に追加する直前に 作られます。 マクロ、ディバージョン、文字列は、実はすべて 同じオブジェクトタイプです。 これらは、どのような組み合わせでも入力文字のリスト ならびに出力文字のリストを持っています。 .LP マクロを処理する目的では、出力文字は入力文字と同じような 振る舞いはしません。出力文字は、自分の構築元となった 入力文字ならば持っていたであろう特別な属性を一切 引き継ぎません。 次の例は、これらのことをもっと明解に示しています。 .LP .RS .nf .ft B \&.di x \(rs\(rs\(rs\(rs \&.br \&.di \&.x .ft .fi .RE .LP .I GNU モード では、これは .esc \(rs として表示されます。 つまり、入力されたバックスラッシュの対 .'char \(rs\(rs はそれぞれ 1 つのバックスラッシュ .'char \(rs に変換されます。 そして、結果として出力されるバックスラッシュは、 再度読み込まれるときにはエスケープ文字としては解釈されません。 .LP .I 古典的な troff では、こうしたバックスラッシュは再度読み込まれるときには エスケープ文字として解釈されるので、最終的には 1 つのバックスラッシュ .'char \(rs として出力されるでしょう。 .LP 出力可能な .'char \(rs を得る正しい方法は エスケープシーケンス .esc e を使うことでしょう。 これは、ディバージョン内で使用されているかどうかに関わらず、 現在のエスケープ文字を常に 1 つだけ出力します。 さらにこれは GNU モードでも互換モードでも動作します。 .LP ディバージョン内に、再度読み込まれたときに解釈したい エスケープシーケンスを格納するには、伝統的な 透過出力ファシリティ .esc ! あるいは新しいエスケープシーケンス .esc ? のどちらかが使用できます。 . .\" -------------------------------------------------------------------- .SH バグ .\" -------------------------------------------------------------------- 現在、groff システムのドキュメントは変更・刷新途上にあります。 それぞれのマニュアルには小さな不一致がある可能性があります。 .LP .B 警告 セクションは .BR troff (1) に属しています。 . .\" -------------------------------------------------------------------- .SH 作者 .\"-------------------------------------------------------------------- このドキュメントは groff、すなわち GNU roff 配布物の一部です。 Bernd Warken が書きました。 .LP このドキュメントは、FDL (GNU Free Documentation License) バージョン 1.1 以降の条項のもとに配布されています。 システムに FDL のコピーがあるはずですし、オンライン .RS .LP .I http://www.gnu.org/copyleft/fdl.html .RE .LP でも入手できます。 .LP もともと、groff 言語拡張については .BR troff (1) マニュアルページで管理されていました。 このドキュメントは groff 言語拡張の不可欠な部分を含んではいますが、 詳しい説明については、groff info ファイルの中にあります。 . .\" -------------------------------------------------------------------- .SH "関連項目" .\"-------------------------------------------------------------------- groff 言語の主な情報源は .B groff .BR info (1) ファイルです。 .LP roff および groff システムを調べたり、さらなるドキュメントへの ポインタを得るには、 .BR roff (7) を参照してください。 .LP フォーマッタプログラムについては .BR groff (1) および .BR troff (1) で説明されており、 前もって定義されているグリフ名のすべては .BR groff_char (7) で説明されています。 .LP 古くからある .I troff のドキュメントはオンライン .RS .LP .I http://cm.bell-labs.com/cm/cs/cstr.html .RE および .RS .I http://www.kohala.com/start/troff/ .RE にあります。 + +