FreeBSD 7.0 manual page repository

FreeBSD is a free computer operating system based on BSD UNIX originally. Many IT companies, like DeployIS is using it to provide an up-to-date, stable operating system.

vgrind - grind nice listings of programs

 

NAME

      vgrind - grind nice listings of programs
 

SYNOPSIS

      vgrind [-] [-W] [-d file] [-f] [-h header] [-llanguage] [-n]
             [-p postproc] [-s pointsize] [-t] [-x] name ...
 

DESCRIPTION

      The vgrind utility formats the program sources specified as arguments on
      the command line 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.
 
      The vgrind utility runs in two basic modes, filter mode (see the -f
      option) 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 fil‐
      ter can be passed to troff(1) 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 the postprocessor for output, psroff(1) by default.
 
      In both modes vgrind passes any lines beginning with a decimal point
      without conversion.
 
      The options are:
 
      -             forces input to be taken from standard input (default if -f
                    is specified)
 
      -W            forces output to the (wide) Versatec printer rather than
                    the (narrow) Varian
 
      -d file       specifies an alternate language definitions file (default
                    is /usr/share/misc/vgrindefs)
 
      -f            forces filter mode
 
      -h header     specifies a particular header to put on every output page
                    (default is the file name)
 
      -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), LISP (-lisp), ICON (-lI), and PERL (-lperl).
 
      -n            forces no keyword bolding
 
      -p postproc   use postproc to post-process the output, psroff(1) by
                    default.
 
      -s pointsize  specifies a point size to use on output (exactly the same
                    as the argument of a .ps)
 
      -t            similar to the same option in troff(1) causing formatted
                    text to go to the standard output
 
      -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 func‐
                    tion definitions can then be run off by giving vgrind the
                    -x option and the file index as argument.
 

FILES

      index                        file where source for index is created
      /usr/share/tmac/tmac.vgrind  macro package
      /usr/libexec/vfontedpr       preprocessor
      /usr/share/misc/vgrindefs    language descriptions
      getcap(3), vgrindefs(5)
 

HISTORY

      The vgrind command appeared in 3.0BSD.
 

BUGS

      The vfontedpr preprocessor assumes that a certain programming style is
      followed:
 
      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 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 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 used by vgrind is variable width.
 
      The mechanism of ctags(1) 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?)
 

Sections

Based on BSD UNIX
FreeBSD is an advanced operating system for x86 compatible (including Pentium and Athlon), amd64 compatible (including Opteron, Athlon64, and EM64T), UltraSPARC, IA-64, PC-98 and ARM architectures. It is derived from BSD, the version of UNIX developed at the University of California, Berkeley. It is developed and maintained by a large team of individuals. Additional platforms are in various stages of development.