Installing the VB Filter
The easiest way to install the documentation filter ist to add a new Doc folder to your project/solution.
Step 1: download and extract
Download vbfilter.zip and extract the contents of the package into the
root directory of your project/solution.
The package contains a single folder called "vbfilter-*" you can rename it to Doc or Documentation.
Classic VB: the structure of your VB6 project folder should look like this:
VB.NET: a .NET solution folder should look like this:
Step 2: basic configuration
Before you begin, you should set some basic properties in the preconfigured Doxyfile.
Open Doc\Doxyfile with doxywizard or an editor of your choice
(Windows Notepad may have problems with the line breaks! Use Notepad++ on Windows!)
and change PROJECT_NAME according to your project.
If you have installed GraphViz, you can enable it using HAVE_DOT = YES.
For a more sophisicated configuration read the Configuring Doxygen
and Configuring the filter pages.
Additionally the package contains the default layout files,
which are preconfigured in Doc\Doxyfile:
You can customize the documentation layout to your needs.
Read more in the Doxygen manual: http://www.stack.nl/~dimitri/doxygen/customize.html
Advanced Installation
The VB filter can be installed anywhere you like and be used in a svn hook for example.
The next steps describe a system wide installation.
Windows
Step 1: Prerequisites
Download and install Doxygen and optionally GraphViz. Both setups set the PATH environment variable correctly,
so you can run the binaries from everywhere on the command line.
Download the Gawk binary or setup package from http://gnuwin32.sourceforge.net/packages/gawk.htm.[[BR]] You may want to add gawk.exe to your path, too. Simply copy gawk.exe to C:\Windows\,
or add the path to gawk.exe to your PATH environment variable.
Step 2: Unpack vbfilter.awk
Download vbfilter.zip and extract Doc\bin\vbfilter.awk to
a directory without whitespaces.
Alternatively you can checkout the current development version
from http://trac.sevo.org/svn/doxyvb/trunk/vbfilter.awk.
Good places could be:
- c:\vbfilter\vbfilter.awk
- c:\ProgramData\vbfilter\vbfilter.awk
Linux
Step 1: Prerequisites
Download and install Doxygen and optionally GraphViz.
Make sure that the binaries are installed in your PATH so you can run them directly (check with which doxygen; which dot).
Make sure you have gawk installed.
Step 2: Unpack vbfilter.awk
Download vbfilter.zip and extract Doc/bin/vbfilter.awk.
Alternatively you can checkout the current development version
from http://trac.sevo.org/svn/doxyvb/trunk/vbfilter.awk.
Good places for the script could be:
- /var/lib/vbfilter/vbfilter.awk
- /usr/local/share/vbfilter/vbfilter.awk
Wrapper script
If you have different source types in your solution and want
to use the FILTER_PATTERNS option,
or if you have many Doxyfiles and don't want to bother about pathes,
you should create a wrapper script.
A wrapper script simply runs gawk.exe with the "-f" parameter.
It's only a workaround, because Doxygen has problems with launching
a filter binary with additional parameters, if FILTER_PATTERNS Doxyfile option is used.
Windows
Create a new Batch file in the vbfilter or Windows folder with the following content:
@echo off C:\vbfilter\gawk.exe -f C:\vbfilter\vbfilter.awk "%1%"
You can find an example script in the SVN repo: http://trac.sevo.org/projects/doxyvb/browser/trunk/vbfilter.bat
Change the pathes accordingly to your system!
Additionally you should add the path of the script to your PATH environment variable.
Now you can simply set
INPUT_FILTER = vbfilter.bat
or
FILTER_PATTERNS = *.vb=vbfilter.bat
in your Doxyfiles.
Linux
create a new shell script, named vbfilter.sh, in your path (/usr/local/bin/vbfilter.sh for example):
#/!bin/sh gawk -f /var/lib/vbfilter/vbfilter.awk "$1"
You can find an example script in the SVN repo: http://trac.sevo.org/projects/doxyvb/browser/trunk/vbfilter.sh
Don't forget to make the script executable:
chmod +x /usr/local/bin/vbfilter.sh
Now you can simply set
INPUT_FILTER = vbfilter.sh
or
FILTER_PATTERNS = *.vb=vbfilter.sh
in your Doxyfiles.
