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