Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vgrind(1) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

vlp(1)

vgrindefs(5)

VGRIND(1)  —  NEWS-OS Programmer’s Manual

名称

vgrind − プログラムのきれいなリストを作り出す

形式

vgrind [ −f ] [ − ] [ −t ] [ −n ] [ −x ] [ −W ] [ −sn ] [ −h header ] [ −d file ] [ −llanguage ] name ... 

解説

vgrind は引数にあるソースプログラムを、 ditroff(1) を使ったきれいな形式に整形します。 コメントはイタリック体で、 キーワードはボールド体で、 その関数の名前が各々のページの欄外に(名前がある時)にリストされます。

vgrind は 2 つの基本的なモードで実行されます。 それはフィルタモードとレギュラーモードです。 フィルタモードでは vgrind は tbl(1) に似た方法で、 フィルタとして動作します。 標準入力は、 以下の troff 形式のマクロによって囲まれた行を除いて、 直接標準出力へ送られます。

.vS − 処理開始

.vE − 処理終了

これらの間の行は上に述べたように整形されます。 このフィルタからの出力は、 ditroff に渡して印字することができます。 eqn(1) や tbl(1) とともに使用する場合、特に順序は必要ありません。

レギュラーモードでは、 vgrind は入力ファイルを受け取り、 それらを処理し、 出力のために ditroff(1) に渡します。

両モードにおいて、 vgrind は小数点(ピリオド)で始まる行は変換せずに通過させます。

オプション

−f 強制的にフィルタモードにします。

− 標準入力からの入力を 強制します (−f オプションが指定されている時はデフォルトです)。

−t 同じオプションを指定した ditroff に似ています。 これにより整形されたテキストは標準出力に送られます。

−n キーワードをボールド体にしません。

−x 「プリティ」形式でインデックスファイルを出力します。 インデックスファイル自身は、 vgrind が実行される時にはいつでも、 カレントディレクトリ内の index という名前のファイルに作られます。

−W (幅が狭い) Varian プリンタでなく、 (幅の広い) Versatec プリンタに出力するように強制します。

−s 出力に使うポイントサイズを指定します (.ps の引数と全く同じです)。

−h 全ての出力ページに、特別な見出しを指定します (デフォルトはファイル名です)。

−d 代わりの言語定義ファイルを指定します (デフォルトは /usr/lib/vgrindefs)。

−l 使用する言語を指定します。 現在有効なものは次のとおりです。
PASCAL (−lp)、 MODEL (−lm)、 C (−lc またはデフォルト)、 CSH (−lcsh)、 SHELL (−lsh)、 RATFOR (−lr)、 MODULA2 (−lmod2)、 YACC (−lyacc)、 ISP (−lisp)、 ICON (−lI)。

関連ファイル

indexインデックスのソースのファイル
/usr/lib/tmac/tmac.vgrind マクロパッケージ
/usr/lib/vfontedprプリプロセッサ
/usr/lib/vgrindefs言語についての記述

著者

Dave Presotto & William Joy

関連事項

vlp(1), vgrindefs(5)

バグ

vfontedpr は以下のプログラミングスタイルを仮定します。

C − 関数名の前には、 スペース、 タブ、 アスタリスクだけの行を 置くことができます。 かっこで囲まれた引数は同じ行です。

PASCAL − 関数名は、 キーワード function または procedure が同じ行に現れます。

MODEL − 関数名は、 キーワード is beginproc が、同じ行に現れます。

これらの規則に従わない場合、 インデックス作成および関数名の境界を コメントする機能が誤動作します。 より一般的にいうと、 独断的なプログラムの整形スタイルのほとんどは、 見た目が悪いものです。 ソースコードを一直線に揃えるために スペースを使用すると失敗します。 ユーザが vgrind を使用する予定ならば、 タブを使用してください。 vgrind によって使用されるフォントの幅は自由なので、 これはある程度必然的です。

関数識別のための ctags のメカニズムはここで使用されるべきでした。

−me または −ms マクロを使っているドキュメントの中では、 フィルタモードはうまく動作しません (さて、どのようにしたら利用できるのでしょうか?)。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026