GRN
Section: User Commands (1)
Updated: 6 August 2001
Index JM Home Page
名称
grn - gremlin ファイル用 groff プリプロセッサ
書式
grn [ -Cv ] [ -Tdev ] [ -Mdir ] [ -Fdir ] [ file... ]
コマンドラインオプションとパラメータの間に空白を含めることが可能です。
解説
grn は、 groff の入力中に gremlin 図を入れるためのプリプロセッサです。 grn は、 .GS と .GE の間にはさまれた入力行のみを処理し、標準出力に書き出します。 処理される行には grn コマンド (後述) が含まれていなくてはなりません。 これらのコマンドは、 gremlin ファイルを要求し、そのファイル中の図を変換し troff の入力ストリームに置きます。 .GS リクエストは、続けて C, L, R をとることができ、 gremlin 図全体を中央揃え、左揃え、あるいは右揃えにすることができます (デフォルトは中央揃えです)。 file が指定されていない場合は、標準入力が読み込まれます。 図の最後では、ページ内での位置は gremlin 図の下になります。 grn エントリが .GE ではなく .GF で終わっている場合は、ページ内での位置は図の左上になります。
現在のところ、-me マクロパッケージだけが .GS, .GE, .GF をサポートしていることに注意してください。
次のコマンドラインオプションを理解します:
- -Tdev
- プリンタ dev 用の出力を用意します。 デフォルトのデバイスは ps です。受け付け可能なデバイスについては groff(1) を参照してください。
- -Mdir
- dir を、 gremlin ファイルのデフォルト検索パスの前に追加します。 デフォルトパスは (順番に)、現在のディレクトリ、ホームディレクトリ、 /usr/share/tmac, /usr/share/tmac, /usr/share/tmac (訳注: 重複していますが原文通りです) です。
- -Fdir
- dir 中からサブディレクトリ devname (name はデバイス名です) を探し、通常の /usr/share/groff_font の前に読み込まれる DESC ファイルを探します。
- -C
- たとえ空白や改行以外の文字が後に続いていても .GS および .GE (およびこれに相応する .GF) を認識します。
- -v
- バージョン番号を表示します。
grn コマンド
.GS と .GE にはさまれた入力行はそれぞれ 1 つずつ grn コマンドを持っています。 コマンドは、1 つの文字列か、空白で区切られた 2 つの文字列で できています。最初の文字列はコマンドであり、2 番目の文字列は オペランドです。 コマンドは大文字小文字どちらでも良く、1 文字までに縮めることもできます。
図の環境に影響を与えるコマンド (以降において default の前にリストされているもの) は、現在の図に対して のみ効果を持ちます。 次の図が始まると、環境はデフォルトで再初期化されます。 コマンドは次のとおりです:
- 1 N
- 2 N
- 3 N
- 4 N gremlin のテキストサイズ番号 1 (2, 3 または 4) を N ポイントに設定します。 デフォルトは 12 (16, 24, 36) です。
- roman f
- italics f
- bold f
- special f ローマン体 (イタリック体、ボールド体、あるいは特殊文字) の フォントを troff フォント f (フォント名あるいは番号) に設定します。 デフォルトは R (I, B, S) です。
- l f
- stipple f スティプル (stipple) フォントを troff のスティプルフォント f (フォント名あるいは番号) に設定します。 コマンド stipple は、`st' までになら省略できます ( special との混乱を避けるためです)。 スティプルフォントにはデフォルトは ありません (default コマンドで設定されていない限りは)。 スティプルフォントを指定しないまま、ポリゴンを含んだ gremlin 図を取り込むことは不正です。
- x N
- scale N (デフォルトの拡大処理に加えて) gremlin 図を N 倍に拡大します。ここで N は 0 より大きな浮動小数値です。 コマンド scale は、`sc' までになら省略できます。
- narrow N
- medium N
- thick N 細線 (中間の太さの線、および太線) の太さを
- 0.15 ポイント (この値は、コンパイル時に変更できます) の N 倍に設定します。 デフォルトは 1.0 (3.0, 5.0) です。これは、0.15 ポイント (0.45 ポイントおよび 0.75 ポイント) に対応しています。 太さを表す値が 0 のときは、使用できる中で最も小さな値を 選択します。 負の値は、現在のポイントサイズに比例した、線の太さの指定になります。
- pointscale <off/on>
- テキストを図に合うようにスケーリングします。 gremlin テキストは、通常、図のスケールファクタによらず、 コマンド 1, 2, 3, あるいは 4 で指定されるポイントサイズで表示されます。 pointscale を設定すると、ポイントサイズが図に合わせて変更されます (もちろん、 troff の制限内で)。 off 以外のオペランドは何であっても テキストのスケーリングを有効にします。
- default
- デフォルトの図の環境を、現在の図の環境で、再設定します。 このオプションは、 troff 入力ファイルの先頭でグローバルパラメータを設定するメカニズムとして 使われることを意図していますが、デフォルト設定を再設定したいときは いつでも使うことができます。
- width N
- 図を強制的に幅 N インチにします。 このオプションは、同じ図中に存在する他のスケールファクタに優先します。 `width 0' は、無視されます。
- height N
- 他のスケールファクタに優先して、図を強制的に高さ N インチにします。 `width' と `height' 両方が指定されているときには、 図をより小さくする制約が図のスケールを決定します。 height および width コマンドは、 default コマンドでは保存はされません。 しかしながら、 ポイントサイズスケーリングが使用されている場合には、 これに対する影響はあります。
- file name
- カレントディレクトリ (あるいはライブラリディレクトリ。前述の -M オプションを参照してください) に置かれた gremlin ファイル name から図を取得します。 file コマンドが 2 つ与えられた場合、2 つめのコマンドが最初のコマンドに優先します。 name が存在しない場合は、エラーメッセージが報告され、 .GE 行から処理が再開されます。
groff に関しての注意
grn はプリプロセッサですので、現在のインデントやポイントサイズ、 余白や番号レジスタなどについては分かりません。 そのため、 .GS リクエストと .GE リクエストの間には troff への入力を置くことができません。 しかしながら、 gremlin テキストは現在 troff で処理されます。そのため、 gremlin テキスト行にある troff への入力行はどれも正しいものになります (ただし、 行頭に `.' ディレクティブを置くことは禁止されています)。 そのため、 gremlin ファイル中に 定義済みのデリミタ (例えば $$) で括った eqn 表記を埋め込むことによって、 gremlin 図の中に等式を書くことができます。
grn を他のプリプロセッサと一緒に使う場合、 tbl が仕事をしすぎないようにするために、 grn, pic, ideal よりも前に tbl を呼び出すのが最も良いやり方です。 eqn は必ず最後に起動させるべきです。
図はひとつのエンティティとみなされますが、 ページの末尾を越えてしまった場合、 troff は図を分割しようとしてしまいます。 -me マクロ中で図を `keeps' 中に置くことで 適切な位置決めができるようになります。
grn は troff の番号レジスタ g1 から g9 までを使い、そして .GS リクエストを処理する前にレジスタ g1 および g2 に gremlin 図の幅および高さ (デバイス単位) を設定します (これらのマクロを書き直したいと思っている人たちのために そうしています)。
gremlin ファイル形式
gremlin ファイル形式には 2 つの異なった形式があります。 AED グラフィック端末用バージョン由来のオリジナルの形式と SUN および X11 バージョンの形式です。 負の座標を用いた参照点を容認する SUN/X11 バージョンの拡張機能は、 AED バージョンとは互換性が ありません 。 gremlin ファイルに負の座標が含まれていない限りは、どちらの形式のファイルも gremlin あるいは grn で読み込むことができます。 他に SUN/X11 の形式が異なる点は、図のオブジェクトに対して番号を 使うのではなく、名前 (例えば、POLYGON, CURVE) を使うことです。 同じ図を表すファイルを、それぞれの形式について 表 1 に示します。
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
|
表 1. ファイル例
|
- •
- それぞれの gremlin ファイルの 1 行目は、 文字列 gremlinfile (AED バージョン) あるいは sungremlinfile (SUN/X11バージョン) のどちらかです。
- •
- ファイルの 2 行目には点の位置を決めるための、方向、 x および y の値が含まれており、各値は空白で区切られています。 方向は、 0 あるいは 1 をとり、 SUN/X11 バージョンでは無視されます。 0 は、 gremlin 図が水平方向の形式で表示されることを意味しています (描画領域の幅が実際の図の高さよりも広くとられ、 上部にメニューがつきます)。 1 は、 gremlin 図が垂直方向の形式で表示されることを意味しています (描画領域の高さが実際の図の幅よりも高くとられ、 左側にメニューがつきます)。 x および y は浮動小数値であり、このファイルが他のファイルに読み込まれる 際に、位置決め点を与えるために使用されます。 この行の要素は、それほど重要なものではありません。 ``1 0.00 0.00'' という値を推奨します。
- •
- このファイルの残りの部分は 0 個以上の要素を 記述したものになっています。 最後の要素を記述した後には、文字列 ``-1'' を持った行がきます。
要素の記述
- •
-
各要素の最初の行には、要素タイプを与える 10 進数 (AED バージョンの場合) あるいは要素の ASCII 文字での名称 (SUN/X11 バージョンの場合) が 1 つ 含まれています。 表 2 を参照してください。
gremlin ファイルフォーマット - オブジェクトタイプの仕様
|
AED 番号 |
SUN/X11 名称 |
解説
|
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 |
中央下揃えのテキスト
|
表 2.
|
gremlin ファイルにおける要素タイプの仕様
|
- •
- オブジェクトタイプの後には、可変数の行がきます。 各行は、オブジェクトの要素を表示するのに使われる点を指定します。 各行には、x 座標および y 座標が浮動小数値で入っており、 それぞれは空白文字で区切られています。 点のリストは、文字列 ``-1.0 -1.0'' を含んだ行 (AED バージョンの場合) あるいはアスタリスク ``*'' 1 個 (SUN/X11 バージョンの場合) で終わります。
- •
-
点の後には、10 進数 2 個を含んだ行がきます。これは、 要素に対するブラシとサイズを与えます。 ブラシは、オブジェクトが描かれる際のスタイルを決定します。 ベクトル、円弧、および曲線については、ブラシの値として 6 個の正当な値があります:
1 - |
|
細い点線
|
2 - |
|
細い一点鎖線
|
3 - |
|
太い直線
|
4 - |
|
細い破線
|
5 - |
|
細い直線
|
6 - |
|
通常の直線
|
ポリゴンに対しては、さらに 0 も正当な値となります。 この値は、境界線の見えないポリゴンを指定するものです。 テキストに対しては、ブラシは次のようにフォントを選択します:
1 - |
|
ローマン体 (groff での R フォント)
|
2 - |
|
イタリック体 (groff での I フォント)
|
3 - |
|
ボールド体 (groff での B フォント)
|
4 - |
|
特殊文字 (groff での S フォント)
|
図を groff に通すために grn を使っている場合は、 ここでのフォントはただ開始時のフォントになるだけです: テキスト文字列には、 ``\fI'' や ``\d'' のような、フォントを変更し得る (他のこともする) フォーマット用シーケンスを含んでも構いません。 テキストでは、サイズフィールドは 1 から 4 までの 10 進数です。 これは、テキストが描画されるフォントサイズを選択します。 ポリゴンに対しては、このサイズフィールドはポリゴン内部を 埋めるために使われるスティプル番号と解釈されます。 この番号は、表示する際にスティプルフォントに置き換える インデックスとして使われます。
- •
- 各要素の最終行には、10 進数と文字列が空白文字 1 つで 区切られて入っています。 10 進数は、文字列中の文字数をカウントしたものです。 この情報はテキスト要素に対してのみ使われ、 テキスト文字列が情報の中に含まれています。 テキスト内部には空白文字が入っていても良いです。 円弧、曲線、およびベクトルについては、それぞれの要素が対応する行には 文字列 ``0'' が入っています。
座標についての注意
gremlin は AED 用に設計され、その座標系は AED の座標空間を反映したものになっています。 垂直方向の図に対しては、x 値は 116 から 511 までをとり、 y 値は 0 から 483 までをとります。 水平方向の図に対しては、 x 値は 0 から 511 までをとり、 y 値は 0 から 367 までをとります。 この範囲に必ずしもこだわることはありませんが、 少なくともこの近傍にとどめておけば最良の結果が 得られるでしょう。 さらに、点のリストは (-1, -1) で終わりますので、 負の座標を使うことはできません。 gremlin 図は、``%f1.2'' という形式を使って座標を出力します。 ですので、 grn コードを変更したい場合には同じ形式を用いるのが おそらくは良い考えでしょう。
SUN/X11 バージョンの座標についての注意
SUN/X11 バージョンの gremlin 図では、オブジェクト生成に用いられる座標の範囲に 制限はもうありません。 しかし、負の座標を持ったファイルでは、 AED 上で表示させようとすると問題が 発生するでしょう 。
関連ファイル
u+3n
- /usr/share/groff_font/devname/DESC デバイス name 用のデバイス定義ファイル
関連項目
gremlin(1), groff(1), pic(1), ideal(1)
歴史
David Slattengren と Barry Roitblat がオリジナルの Berkeley 版 grn を書きました。
Daniel Senderowicz と Werner Lemberg が groff 用に書き直しました。
関連キーワード
gremlin,
テキスト,
コマンド,
バージョン,
要素,
フォント,
座標,
groff,
形式,
設定
Linux マニュアル 一覧
[man1]
[man2]
[man3]
[man4]
[man5]
[man6]
[man7]
[man8]
[a]
[b]
[c]
[d]
[e]
[f]
[g]
[h]
[i]
[j]
[k]
[l]
[m]
[n]
[o]
[p]
[q]
[r]
[s]
[t]
[u]
[v]
[w]
[x]
[y]
[z]
Index
- 名称
- 書式
- 解説
- grn コマンド
- groff に関しての注意
- gremlin ファイル形式
- 要素の記述
- 座標についての注意
- SUN/X11 バージョンの座標についての注意
- 関連ファイル
- 関連項目
- 歴史
This document was created by man2html, using the manual pages.
Time: 12:08:54 GMT, June 11, 2022