|
|
1.1 root 1: .\" Copyright (c) 1980 Regents of the University of California.
2: .\" All rights reserved. The Berkeley software License Agreement
3: .\" specifies the terms and conditions for redistribution.
4: .\"
5: .\" @(#)vgrind.1 6.2 (Berkeley) 5/5/86
6: .\"
7: .TH VGRIND 1 "May 5, 1986"
8: .UC 4
9: .SH NAME
10: vgrind \- grind nice listings of programs
11: .SH SYNOPSIS
12: .B vgrind
13: [
14: .B \-f
15: ] [
16: .B \-
17: ] [
18: .B \-t
19: ] [
20: .B \-n
21: ] [
22: .B \-x
23: ] [
24: .B \-W
25: ] [
26: .B \-sn
27: ] [
28: .B \-h
29: header
30: ] [
31: .B \-d
32: file
33: ] [
34: .BI \-l language
35: ]
36: name ...
37: .SH DESCRIPTION
38: .I Vgrind
39: formats the program sources which are arguments
40: in a nice style using
41: .IR troff (1)
42: Comments are placed in italics, keywords in bold face,
43: and the name of the current function is listed down the margin of each
44: page as it is encountered.
45: .PP
46: .I Vgrind
47: runs in two basic modes, filter mode or regular mode. In filter mode
48: .I vgrind
49: acts as a filter in a manner similar to
50: .IR tbl (1).
51: The standard input is passed directly to the standard output except
52: for lines bracketed by the
53: .I troff-like
54: macros:
55: .IP .vS
56: - starts processing
57: .IP .vE
58: - ends processing
59: .LP
60: These lines are formatted as described above. The output from this
61: filter can be passed to
62: .I troff
63: for output. There need be no particular ordering with
64: .IR eqn (1)
65: or
66: .IR tbl (1).
67: .PP
68: In regular mode
69: .I vgrind
70: accepts input files, processes them, and passes them to
71: .IR troff (1)
72: for output.
73: .PP
74: In both modes
75: .I vgrind
76: passes any lines beginning with a decimal point without conversion.
77: .PP
78: The options are:
79: .IP \fB\-f\fP
80: forces filter mode
81: .IP \fB\-\fP
82: forces input to be taken from standard input (default if
83: .B \fB\-f\fP
84: is specified )
85: .IP \fB\-t\fP
86: similar to the same option in
87: .I troff
88: causing formatted text to go to the standard output
89: .IP \fB\-n\fP
90: forces no keyword bolding
91: .IP \fB\-x\fP
92: outputs the index file in a ``pretty'' format.
93: The index file itself is produced whenever
94: .I vgrind
95: is run with a file called
96: .I index
97: in the current directory.
98: The index of function
99: definitions can then be run off by giving
100: .I vgrind
101: the
102: .B \-x
103: option and the file
104: .I index
105: as argument.
106: .IP \fB\-W\fP
107: forces output to the (wide) Versatec printer rather than the (narrow)
108: Varian
109: .IP \fB\-s\fP
110: specifies a point size to use on output (exactly the same as the argument
111: of a .ps)
112: .IP \fB\-h\fP
113: specifies a particular header to put on every output page (default is
114: the file name)
115: .IP \fB\-d\fP
116: specifies an alternate language definitions
117: file (default is /usr/lib/vgrindefs)
118: .IP \fB\-l\fP
119: specifies the language to use. Currently known are PASCAL
120: .RB ( \-lp ),
121: MODEL
122: .RB ( \-lm ), C
123: .RB ( \-lc
124: or the default), CSH
125: .RB ( \-lcsh ),
126: SHELL
127: .RB ( \-lsh ),
128: RATFOR
129: .RB ( \-lr ),
130: MODULA2
131: .RB ( \-lmod2 ),
132: YACC
133: .RB ( \-lyacc ),
134: ISP
135: .RB ( \-lisp ),
136: and ICON
137: .RB ( \-lI ).
138: .SH FILES
139: .ta 2i
140: index file where source for index is created
141: .br
142: /usr/lib/tmac/tmac.vgrind macro package
143: .br
144: /usr/lib/vfontedpr preprocessor
145: .br
146: /usr/lib/vgrindefs language descriptions
147: .SH AUTHOR
148: Dave Presotto & William Joy
149: .SH SEE ALSO
150: vlp(1),
151: vtroff(1),
152: vgrindefs(5)
153: .SH BUGS
154: Vfontedpr assumes that a certain programming style is followed:
155: .PP
156: For
157: .B C
158: \- function names can be preceded on a line only by spaces, tabs, or an
159: asterisk. The parenthesized arguments must also be on the same line.
160: .PP
161: For
162: .B PASCAL
163: \- function names need to appear on the same line as the keywords
164: .I function
165: or
166: .I procedure.
167: .PP
168: For
169: .B MODEL
170: \- function names need to appear on the same line as the keywords
171: .I is
172: .I beginproc.
173: .PP
174: If these conventions are not followed, the indexing and marginal function
175: name comment mechanisms will fail.
176: .sp
177: More generally, arbitrary formatting styles for programs mostly look bad.
178: The use of spaces to align source code fails miserably; if you plan to
179: .I vgrind
180: your program you should use tabs. This is somewhat inevitable since the
181: font used by
182: .I vgrind
183: is variable width.
184: .PP
185: The mechanism of ctags in recognizing functions should be used here.
186: .PP
187: Filter mode does not work in documents using the \-me or \-ms macros.
188: (So what use is it anyway?)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.