Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
VGRIND(1)		   BSD System Compatibility		     VGRIND(1)

NAME
       vgrind -	grind nice listings of programs

SYNOPSIS
       vgrind [-2ftnxw]	[-sn] [-h header] [-d file] [-l	language] [-P printer]
	      [-T device] [-o list] 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	 stan-
       dard  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:

       -2     produce two-column output

       -f     forces filter mode

       -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 in-
	      dex 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 argument.

       -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  (de-
	      fault 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), C++ (-lc++), CSH
	      (-lcsh), SHELL (-lsh),  RATFOR  (-lr),  MODULA2  (-lmod2),  YACC
	      (-lyacc),	ISP (-lisp), and ICON (-lI).

       -P     specifies	that output is directed	to the named printer.

       -T     is passed	to troff and specifies the device to use.

       -o     is passed	to troff and specifies selected	pages to print.

       -w     Sets  the	 size  of  tabulators  to  four	instead	of the default
	      eight.

FILES
       index	 file where source for index is	created
       /usr/ucblib/tmac/vgrind	macro package
       /usr/ucblib/vfontedpr	preprocessor
       /usr/ucblib/vgrindefs	language descriptions

SEE ALSO
       troff(1)

NOTES
       Vfontedpr assumes that a	certain	programming style is followed:

       For C and C++ - function	names can be preceded on a line	only  by  spa-
       ces, 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 key-
       words function or procedure.

       For  MODEL - function names need	to appear on the same line as the key-
       words is	beginproc.

       If these	conventions are	not followed, the indexing and marginal	 func-
       tion 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 in-
       evitable	since the font 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.
       (So what	use is it anyway?)

       Written by Dave Presotto	& William Joy.

4th Berkeley Distribution	    11/6/05			     VGRIND(1)

NAME | SYNOPSIS | DESCRIPTION | FILES | SEE ALSO | NOTES

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=vgrind&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help