VGRIND(1-BSD) RISC/os Reference Manual VGRIND(1-BSD)
NAME
vgrind - grind nice listings of programs
SYNOPSIS
vgrind [ -f ] [ - ] [ -t ] [ -n ] [ -x ] [ -sn ] [ -h header
] [ -d file ]
[ -llanguage ] name ...
DESCRIPTION
vgrind formats the program sources which are arguments in a
nice style using troff(1). Comments are placed in italics,
keywords in bold face, and the name of the current function
is listed down the margin of each page as it is encountered.
vgrind runs in two basic modes, filter mode or regular mode.
In filter mode vgrind acts as a filter in a manner similar
to tbl(1). The standard input is passed directly to the
standard output except for lines bracketed by the troff-like
macros:
.vS - starts processing
.vE - ends processing
These lines are formatted as described above. The output
from this filter can be passed to troff for output. There
need be no particular ordering with eqn(1) or tbl(1).
In regular mode vgrind accepts input files, processes them,
and passes them to troff(1) for output.
In both modes vgrind passes any lines beginning with a
decimal point without conversion.
The options are:
-f forces filter mode
- forces input to be taken from standard input (default
if -f is specified )
-t similar to the same option in troff causing formatted
text to go to the standard output
-n forces no keyword bolding
-x outputs the index file in a ``pretty'' format. The
index file itself is produced whenever vgrind is run
with a file called index in the current directory. The
index of function definitions can then be run off by
giving vgrind the -x option and the file index as argu-
ment.
Printed 11/19/92 Page 1
VGRIND(1-BSD) RISC/os Reference Manual VGRIND(1-BSD)
-s specifies a point size to use on output (exactly the
same as the argument of a .ps)
-h specifies a particular header to put on every output
page (default is the file name)
-d specifies an alternate language definitions file
(default is /usr/lib/vgrindefs)
-l specifies the language to use. Currently known are
PASCAL (-lp), MODEL (-lm),C (-lc or the default), CSH
(-lcsh), SHELL (-lsh), RATFOR (-lr), MODULA2 (-lmod2),
YACC (-lyacc), ISP (-lisp), and ICON (-lI).
FILES
index file where source for index is created
/usr/lib/tmac/tmac.vgrind
macro package
/usr/lib/vfontedpr preprocessor
/usr/lib/vgrindefs language descriptions
AUTHOR
Dave Presotto & William Joy
SEE ALSO
troff(1).
vgrindefs(5) in the Programmer's Reference Manual.
BUGS
vfontedpr assumes that a certain programming style is fol-
lowed:
For C - function names can be preceded on a line only
by spaces, tabs, or an asterisk. The parenthesized
arguments must also be on the same line.
For PASCAL - function names need to appear on the same
line as the keywords function or procedure.
For MODEL - function names need to appear on the same
line as the keywords is beginproc.
If these conventions are not followed, the indexing and mar-
ginal function name comment mechanisms will fail.
More generally, arbitrary formatting styles for programs
mostly look bad. The use of spaces to align source code
fails miserably; if you plan to vgrind your program you
should use tabs. This is somewhat inevitable since the font
Page 2 Printed 11/19/92
VGRIND(1-BSD) RISC/os Reference Manual VGRIND(1-BSD)
used by vgrind is variable width.
The mechanism of ctags in recognizing functions should be
used here.
Filter mode does not work in documents using the -me or -ms
macros.
Printed 11/19/92 Page 3