Copyright © 1997, 1998, 1999
DOSFOP, the documentation system for OPAL projects, is a literate programming tool, i.e. documentation and program code are kept in the same file. Documentation is integrated into OPAL source code by means of special marked comments.
The DOSFOP approach tries to make documentation more acceptable to programmers by adhering to the following principles:
The tool was presented at the tool session at TAPSOFT'97
(see
http://uebb.cs.tu-berlin.de/papers/published/DocumentationToolOpal.html),
and a technical report is available
(see http://uebb.cs.tu-berlin.de/papers/published/TR96-4.html) which
describes the DOSFOP approach to software documentation.
This manual contains technical details for the use of DOSFOP, version 1.92g (for changes from older versions, see Changes).
DOSFOP takes input from three different sources:
DOSFOP does not directly produce documentation, rather it generates an intermediate output file in the Texinfo language. This intermediate output can then be converted to DVI files for printed output, to INFO files for the GNU info help system and to HTML files for web browsers.
Before documentation can be produced, the user must set up the global configuration (see Global Configuration) and the project data base (see Project Browser).
A first prototype of the system was developed by Torsten Klein as his Studienarbeit -- undergraduate dissertation -- and was further enhanced by user-friendly features as part of his master's thesis, both of which were supervised by the author of this manual.
The system was developed in OPAL itself, with the exception of the graphical user interface, which was developed in TCL/TK.
Since the completion of Torsten Klein's master's thesis, the DOSFOP system has been maintained and developed by Klaus Didrich.
The current version is 1.92g.
Dosfop needs no adjustment of environment variables. The variable
DOSFOP
, which was mandatory in former versions, may be set to point
to a non-standard DOSFOP installation, if necessary.
DOSFOP requires two directories, both of which are initialized automatically.
DOSFOP
DOSFOP
subdirectory is used to store intermediate output and
administrative data.
doc
doc
subdirectory contains the generated documentation. If the
user does not change the default, the (root) output files are called
`doc/out.dvi', `doc/out.info' and `doc/out.html' for
DVI, INFO and HTML format, respectively. There is always an
additional top-level HTML file `index.html'.
Note that there may
be more than one file for INFO and HTML format.
See Administrative Data to change the name of the generated file.
Documentation is incorporated in OPAL source code in the form of special comments. Every comment that starts with a per cent sign (`%') is treated as documentation. All other comments are treated as source code.
The documentation is written in Texinfo, the same language used for documentation of GNU utilities. Those who know TeX but not Texinfo should refer to the Appendix (see Texinfo for Experienced TeX Users).
A hypertext documentation of Texinfo is locally available at TU Berlin.There are two ways to include a survey of a project or a subsystem. Either insert the survey into the documentation by configuring or create a file `Survey.texi' at toplevel or the path to the subsystem respectively.
The first documentation of an OPAL signature part is considered to
contain an overview of the structure's contents, provided it appears before
the initial keyword SIGNATURE
.
Every comment that starts with a per cent sign(`%') is treated as documentation. This applies to line comments and nested comments.
There are five types of source-code documentation available.
-- %This function computes the length of a sequence.
/* %{optimize} This function needs further attention if used with bigger arguments. */The name "level documentation" originates in the intention to provide documentation for different `levels' of users. In GRASP the same concept is called ribbon.
@BEGINDOCtag
and
@ENDDOCtag
. These macros must be defined by the user!
Macros for the above example might be:
@macro BEGINDOCoptimize @strong{optimize:}@i{ @end macro @macro ENDDOCoptimize } @end macrowhich would generate the following documentation:
-- %$$Accessing elements of a sequence$Note that the total number of sectioning levels required by the documentation may be less than that provided by the formatting tool. The characters used for the heading must be suitable for several tools and may therefore not contain punctuation.
-- %- Check below carefully for typos!
FUN ++ : seq ** seq -> seq -- %[++_assoc]
The graphical user interface is invoked by the command dosfop
. The
DOSFOP main window provides buttons to start other programs needed for
producing documentation.
The components:
XDVI
INFO
WWWBROWSER
Global Configuration consists of administrative data and global options for customizing the documentation. On the first call, only the administrative data is displayed; on pressing a button, all the switches are displayed. The configurator is an independent process and is not closed when the DOSFOP main window is exited.
Changes are only effected after the settings have been saved.
/DOSFOP/out.texi
.
You may change out
in order to change the name of the generated files
in the doc
directory (see Using DOSFOP).
Note that this file contains the surveys and the structure of the
docuemntation only. Documentation of structures is located in their
associated `OCS' subdirectory.
*
to indicate that all structures
contained in the project data base should be included. Note that this set
must be closed under the import relation (with the exception of library
structures).
Options marked with SUB can be configured individually for subsystems, those marked STR can be configured individually for structures.
BEGINDOCtag
and ENDDOCtag
(see Source-Code Documentation).
@cindex entry
lines in the documentation.
The project browser is used to edit the project data base, that is, the information as to which structures are part of the project and how are they grouped into subsystems. The project browser always starts at `top level'. It is a separate process and not closed when the DOSFOP main window is closed.
Changes to the project data base are immediately effective.
The left-hand side contains a list of the structures of the project that are located in the current subsystem.
Exit
when all structures
have been entered.
The right-hand side contains a list of the subsystems of the current subsystem.
The file browser can be invoked when inserting either structures or subsystems. It is again a separate process which must be terminated explicitly. You need (and should) not have more than one file browser open at one time.
You can change the current directory by double-clicking on the directory name in the list.
Insertion of structures is done by double-clicking on the file name. In the case of OPAL files, the extension (`.sign', `.impl', `.extp', `.intp') is removed from the file name. All other file names are left as they are. (see DOSFOP and Non-OPAL Programs). The file is immediately inserted into the structures of the current subsystem.
Insertion of subsystems is done by double-clicking on the directory name above the list widget. You must then provide a name for the subsystem and insert it yourself.
DOSFOP can also be invoked without the graphic user interface. This may come in handy if neither the project data base nor the global options have been changed.
The program is called pureDosfop
. The following options are available:
-configascii
removes the binary configuration. The switch
-configbin
switch creates a dummy binary configuration and causes
DOSFOP to create a real one in the next run.
The binary configuration can be quite large.
Calling pureDosfop
with no option is identical to calling
pureDosfop -dosfop
.
OCS has been extended by some targets which allow the automatic
generation of documentation of an OPAL project. The configuration may
afterwards be edited with the standard dosfop
program.
The MAKE mechanism is not well suited for DOSFOP, we had to
compromise. For one, documentation is always generated anew and not if the
respective source code has changed. Second, an environment variable
PROJECTROOT
must be defined, which contains the absolute path to the
top level directory.
Incremental generation of documentation (see Incrementally Generating Documentation) is supported. If the environment variable
PROJECTROOT
is defined, every time a structure is compiled its name
is added to the `DOSFOP/only' file. A call `ocs doc' or `ocs
dvi' will then only generate new documentation for the changed files. The
`DOSFOP/only' file is always removed afterwards.
DOSFOP often uses a large amount of resources (even for nowadays' computers), and it may happen that documentation cannot be generated at once. The following targets help in these cases.
thisdoc
for current system and all subsystems.
The calls `ocs doc' and `ocs thisdocall' have similar effects. The
latter one calls dosfop
for every subsystem and may not correctly
compute the hierarchy visualization correctly. On the other hand, it often
works, where `ocs doc' fails for lack of resources.
If OASYS is used, the usage of DOSFOP is made much simpler. Simply execute the line
<DOSFOP path>/tcl4/dfo.tcl
from the OASYS command line or include this line in your
`.oasysrc' file. You need not change your PATH
variable.
The DOSFOP distribution is searched for as follows:
DOSFOP
is set, its contents are used.
OCSDIR
is set, DOSFOP is sought under
`$OCSDIR/dosfop'.
DOSFOP
nor OCSDIR
are defined,
`/usr/ocs/dosfop' is used.
Within OASYS, four additional commands are available:
doc-dvi
doc-info
doc-html
doc-help
DOSFOP can incorporate non-OPAL sources. To use this feature, create a
file `dosfop.filetypes' in the DOSFOP
directory with the
following content:
#
are treated as comments.
The file `dosfop.filetypes' is searched in the given order and before an OPAL signature file is searched.
Example file:
# almost standard OPAL (note leading space for documentation designator!) .sign:.impl:--:/*:*/: %: # C files (assuming .h to be the interface for .c) # empty documentation designator -> all comments are documentation .h:.c: :/*:*/: : # Tcl files .tcl: :#: : : : # SysDefs file SysDefs: :#: : : : # Modula-2 files .md:.mi: :(*:*): :
Note that scanning still obeys the OPAL rules. For example, /*
is
not regarded as a valid comment starter for `.h' or `.c' files if
followed by a special character. In particular, /*******/
is
not recognized as a comment.
Other problems might occur if string constants are denoted differently than in OPAL, but so far we have had no problems in this regard.
You should make sure that DOSFOP does not search for structure parts that do not exist (property inclusion should be off; only interfaces should be off if no implementation exists). `Check Consistency' has not been adapted yet and will complain if you include foreign structures.
DOSFOP puts the intermediate output for structure located at path into a subdirectory path`/OCS'. You must ensure that this directory exists.
DOSFOP can incorporate import references and indices generated by other programs:
For file `foo', the imported structures are contained in `DOSFOP/foo.deps' (`foo' includes the suffix), each line containing one structure name.
The index entries have to be given in file `DOSFOP/foo.index'. Every line has the following format
<line number>:<index generating command>:<index entry>
Line numbers start with zero! The command for generating the index entry
could for example be @findex
or @pindex
. The index entry may
contain other colons. Escaping of Texinfo special characters is done by
DOSFOP.
The files `DOSFOP/foo.{deps,index}' are not mandatory.
DOSFOP can generate documentation incrementally. To use this feature, create a file `only' in the `DOSFOP' subdirectory which contains the names of structures (one in each line), for which documentation shall be generated. The same name may occur several times in the file.
If the file `DOSFOP/only' exists, DOSFOP will generate the `DOSFOP/out.texi' file and the documentation files for the structures named in the `only' file.
There is a switch -qhtml
for the program pureDosfop
. The
generation of HTML files will in this case cover the main file, the
indices and the files associated with structures referred to in
`only'. Note that this may produce dangling links and incomplete
indices.
The following macro packages are available for use in printed manuals:
pstricks
package.
Some other macros are defined for the construction of used function tables and the table of contents. Indentation and skip between paragraphs are defined.
The following switches are set:
@setchapternewpage off @finalout
These indices are used by DOSFOP: st
, ap
, cd
,
dm
, pr
. The predefined indices are also reserved for use by
DOSFOP. Indices starting with the letters `x', `y' and `z'
will not be used by DOSFOP.
The variable @dfStarLine
is used. Further variables will all use the
prefix `df'.
The following macros may be used to reference structure parts in
@ref
, @xref
or @pxref
commands:
@Sign{structure name}
@Impl{structure name}
@Extp{structure name}
@Intp{structure name}
@LibSign{structure name}
@LibExtp{structure name}
For other predefined macros which are not designed to be used in documentation, see TeX- and Texinfo-Related Files.
Some options are translated to variables:
html
colon
structureindexflag
dfDomainIndexFlag
dfCodomainIndexFlag
dfEnglish
dfGerman
dfSingleNode
dfProjectName
dfAuthors
dfDate
dfSorttop_down
dfSortbottom_up
dfSortalphabetically
dfSortuser_defined
dfSortoff
While most text shall be used for all three output formats, sometimes it is desirable to include text in only one of the formats, or even to pass text untouched by Texinfo directly to TeX or HTML.
This is possible with the following Texinfo environments:
@iftex
@end iftex
@ifclear html
/@end ifclear
.
@tex
@end tex
@ifset html
@end ifset
@ifinfo
@end ifinfo
@ifhtml
@end ifhtml
Instead of putting the condition inside the macro, one should define the macros conditionally:
@ifset html @macro TEXT This text shows up in HTML. @end macro @end ifset @ifclear html @macro TEXT This text shows up in TeX and Info. @end macro @end ifclear
These files are located in the directory <DOSFOP path>`/tex'.
The following files may be modified by the user by placing a copy in the local `DOSFOP' directory.
@BEGINOPAL{}
@ENDOPAL{}
@example
/@end example
.
@BEGINDOC{}
@ENDDOC{}
@value{dfStarLine}
for both, which will put a line consisting of 70 `*' around
documentation in INFO output. No effect on DVI or HTML
output.
@BEGINOVW{}
@ENDOVW{}
@FINALIZEDOC{}
@contents
.
These files are included to make the DOSFOP distribution self-contained.
dosfopLatin1.sty
psfig.sty
psfig.tex (1.9)
pst-node.tex (0.93a)
pstricks.con (0.93a)
pstricks.sty
pstricks.tex (0.93a)
pstricks
package.
texinfo.tex (2.185)
The project data base and the global and local options are stored in files
in the DOSFOP
directory. They may be edited by the user.
pureDosfop
-config
(see DOSFOP without Windows).
/defaults/Library.config
, but you may copy it
to the local DOSFOP
directory and modify it.
Backup files are given the extension `.old'.
There are some other files located in the DOSFOP
directory.
Most programs named in this section are located in <DOSFOP path>/bin, if not otherwise stated.
These are the core programs of DOSFOP, all written in OPAL.
checkConsistency
dosfopTranslator
DOSFOP
subdirectory
and produces the Texinfo intermediate output. getsetting
The TCL/TK programs are located in the directory <DOSFOP
path>
/tcl.
The files ending in `.tcl' are read by the main programs; the other programs are started as separate processes.
browse
dosfop
globalConfig
pureDosfop
structureConfig
subsystemConfig
dosfopMacroExpander
makeinfo
for the expansion of
macros (see External Interpreters).
dosfopTexindex
texindex
program. The
generated indices need to be processed before and after the call to
texindex
(see the following entry).
fixtexindexpre
fixtexindexpost
\penalty 10000
from the index entries
and corrects name entris starting with a backslash.texi2dvi --verbose <intermediate Texinfo file>
texi2dvi
:
TEXINDEX dosfopTexindex
texindex
program with the DOSFOP
version.
TEXINPUTS .:<DOSFOP path>/tex:<old value of TEXINPUTS>
MAKEINFO dosfopMacroExpander
makeinfo
as the macro-processing program.
texi2dvi
is called, the current directory is changed to the
DOSFOP
directory.
texindex
Formerly, the INFO format was the only supported hypertext
output. Nowadays, INFO output is rarely used; you can achieve a similar
effect with an ASCII web browser like lynx
. Support for INFO
output may not be available in future versions of DOSFOP.
dosfopMacroExpander
makeinfo
for the expansion of
macros (see External Interpreters). dosfopMacroExpander --verbose -I <DOSFOP subdirectory> -I <DOSFOP path>/tex -E <intermediate Texinfo file>.new <intermediate Texinfo file>
makeinfo
makeinfo
program generates the INFO file. It is known to
have difficulties with long Texinfo files.makeinfo --verbose --no-validate --no-warn -I DOSFOP -I <DOSFOP path>/tex <intermediate Texinfo file> -o <info output file>
The program is called with the top-level directory as the current directory.
dosfopMacroExpander
makeinfo
for the expansion of
macros. (see External Interpreters). dosfopMacroExpander --verbose -I <DOSFOP subdirectory> -I <DOSFOP path>/tex -E <intermediate Texinfo file>.new <intermediate Texinfo file>
texi2html
texi2html -toc_name <Table of Contents string> -I ../DOSFOP -I <DOSFOP path>/tex -split_node -menu -verbose <intermediate Texinfo file>The <Table of Contents string> is a language-dependent string used for links to the top node. The program is called with the top-level directory as the current directory.
While the translation to the intermediate Texinfo file does not rely on
external interpreters, some of the programs which form the environment
do. These interpreters are listed here. We also include the description of
the dosfopMacroExpander
here, because there is no better place for
this.
sh
sh
interpreter is used for texi2dvi
and
dosfopTexindex
.
perl
dosfopMacroExpander
, fixtexindexpre
,
fixtexindexpost
and texi2html
. These programs run both under
Perl 4 and Perl 5. The location of perl is read from the environment
variable PERL
which is set by dosfop
and pureDosfop
.
wish
WISH
which is set by dosfop
and pureDosfop
.
dosfopMacroExpander
makeinfo
program. Unfortunately, the macro expansion in makeinfo
is not bug
free, so I decided to re-implement a separate program for macro
expansion. This implementation has some restrictions:
@TeX{}
, @AA
or @AE
are used.
This appendix contains some tips and tricks for achieving certain effects through sophisticated usage of Texinfo and the possibilities for (re)defining macros. In most cases you will need to copy the file(s) `dosfop.macros' and/or `dosfopPrelude.texi' from `<DOSFOP path>/tex' and modify them.
To make your source code appear in a different colour in HTML hypertext, use these definitions:
@macro BEGINOPAL @ifhtml <font color="8B000"> @end ifhtml @example @end macro @macro ENDOPAL @end example @ifhtml </font> @end ifhtml @end macro
Similarly, bychanging the macro pairs @BEGINDOC
/@ENDDOC
and/or
@BEGINOVW
/@ENDOVW
, you can give a different colour to
documentation and/or overviews.
If you want to make warnings stand out, try these definitions:
@macro BEGINDOCwarning @ifhtml <font color="FF0000"><blink> @end ifhtml @cartouche @end macro @macro ENDDOCwarning @end cartouche @ifhtml </blink></font> @end ifhtml @end macro
This will result in a box with rounded corners around the documentation in the
printed manual (@cartouche
) and make the warning blink and appear in
red in the HTML hypertext.
The documentation must then be tagged with the tag `warning':
-- %{warning} This function is completely untested!
resulting in:
By default, source code is put into an @example
environment, which
indents it. To remove the indentation, redefine @BEGINOPAL
and @ENDOPAL
:
@macro BEGINOPAL @t{ @format @end macro @macro ENDOPAL @end format } @end macro
Normally, source code is indented and documentation is not. To
reverse the default, redefine @BEGINOPAL
, @ENDOPAL
,
@BEGINDOC
and @ENDDOC
:
@macro BEGINOPAL @t{ @format @end macro @macro ENDOPAL @end format } @end macro @macro BEGINDOC @quotation @end macro @macro ENDDOC @end quotation @end macro
When you process ASCII-style comments (perhaps when using DOSFOP for non-OPAL sources, see DOSFOP and Non-OPAL Programs), you might want to retain the line breaks. This is achieved by these definitions:
@macro BEGINDOC @format @end macro @macro ENDDOC @end format @end macro
If you want to add an `xy' index, you must edit two files:
@defcodeindex xyUse
@defindex
if entries are to appear in Roman and not fixed-width
font.
@FINALIZEDOC
macro to insert your index at the end:
@macro FINALIZEDOC @node XY Index, To Do, Tips And Tricks, Top @chapter XY Index @printindex xy @contents @end macro
You may now use the command @xyindex
to include entries:
-- %@xyindex An XY index entry
DOSFOP can help you keep track of all the places in your code you think need a second look.
We just use the technique presented in Add New Indices, to add a new `To Do' index:
@defcodeindex td
@FINALIZEDOC
macro to insert your index at the end:
@macro FINALIZEDOC @node To Do, Texinfo for Experienced TeX Users, XY Index, Top @chapter To Do @printindex td @contents @end macro
The code then looks like this:
/* %This function sorts its argument. @tdindex FUN sort implemented inefficiently */ FUN sort: seq[mytype] -> seq[mytype]
If you want to highlight these parts of the documentation, too, see Highlight Warnings.
You can exclude source code from the generated documentation with the help
of the @ignore
environment:
-- %@ignore ... ... lots of hidden functions ... -- %@end ignore
Do not forget the @end ignore
line! Otherwise no more documentation
will be generated after the initial @ignore
.
DOSFOP cannot process the special tags recognized by javadoc
. But
if you are willing to sacrifice DVI and
INFO output, DOSFOP can also process files documented in
JAVADOC style.
The following definitions allow HTML documentation:
@macro BEGINDOC @ifhtml @end macro @macro ENDDOC @end ifhtml @end macro
To allow inclusion of JAVA files, create a file `dosfop.filetypes'
in the DOSFOP
directory, which consists of this line:
.java: : :/**:*/: :
This will tell DOSFOP how to process `.java' files: nested comments
starting with /**
and ending with */
are documentation,
everything else is source code.
Experienced TeX users should not have much difficulty writing Texinfo. The look and feel of Texinfo is similar to a special LaTeX style.
The following differences are the most important:
@@
) and the curly brackets (write @{
and
@}
resp.).
env
is begun with @env
and terminated with
@end env
. Both commands must appear on a line of their own and may
not be preceded by spaces or tabs.
@bullet
or @minus
).
@item
command must appear on a line of its own and may
not be preceded by spaces or tabs.
@itemize @bullet @item Text for first item. @item Text for second item. @item ... @end itemize
Texinfo is a language which combines commands for setting up hyperlinks, for chapter structuring and for text formatting. Fortunately, the user of DOSFOP is only concerned with the text-formatting parts.
For a very quick introduction, you need to learn only the following commands:
@@
@{
@}
@code{text}
@code
to mark references to identifiers from the source code.
@emph{text}
@emph
to highlight (emphasize) text.
@ref{@Overview{structure name}}
A full description is given in the Texinfo manual. The most important Texinfo commands are briefly described in this appendix.
If you view this locally at TU Berlin, the following links take you to the relevant chapters of the Texinfo Manual:
The following list contains the commands needed to begin an
environment. Environments are ended by the command @end
environment
.
These commands must be on a line of their own and may not be preceded by spaces or tabs.
@enumerate
@item
line at the beginning of
each entry. You may give the beginning command a number or a letter, which is
then used for the first entry.
@itemize mark-gen-char-or-command
@item
line
at the beginning of each entry. The beginning command takes an argument
which is used to generate the initial mark. Most often, @bullet
or
@minus
are used.
@table formatting-command
@item first-column
for each
entry. First-column entries are printed in the font given in
formatting-command. @itemx
instead of
@item
for the second and following entries. Add the explanation
after the last @itemx
line.
@asis{text}
@b{text}
@code{text}
@emph{text}
@i{text}
@r{text}
@sc{text}
@t{text}
Paragraphs are separated by an empty line. In the generated documentation, every comment that contains documentation is given a separate paragraph. (One exception: In non-OPAL source code which does not have nested comments, subsequent line comments are merged. See DOSFOP and Non-OPAL Programs.)
@*
@-
@noindent
@page
Text may contain cross references to other `nodes'. DOSFOP provides the
commands @Overview{structure name}
,
@Sign{structure name}
, @Impl{structure
name
}, @Extp{structure name}
,
@Intp{structure name}
to reference the
overview, signature part, implementation part, external property part,
internal property part respectively. Use @LibSign{structure
name
} @LibExtp{structure name}
to refer to library
structures.
@ref{node name}
@xref{node name}
@pxref{node name}
@c comment
@comment comment
@cindex entry
@email{mail address}
@footnote{text of footnote}
@url{URL}
DOSFOP 1.92g has the following differences to version 1.92f:
DOSFOP 1.92f has the following differences to version 1.92d:
<TABLE>
and colours.
Functionality in indices now printed in italics.
DOSFOP 1.92d has the follwoing differences to version 1.92c:
DOSFOP
and extension of PATH
is no longer
necessary.
XDVI
, INFO
and WWWBROWSER
respectively.
perl
and wish
are not hard-wired into the code,
but read from the variables PERL
and WISH
respectively.
DOSFOP 1.92c has the following differences with respect to version 1.90h:
S
, a Texinfo file OCS/S.doc.texi
is
created.
347 entries
[ * ] [ . ] [ @ ] [ a ] [ b ] [ c ] [ d ] [ e ] [ f ] [ g ] [ h ] [ i ] [ j ] [ l ] [ m ] [ n ] [ o ] [ p ] [ r ] [ s ] [ t ] [ u ] [ v ] [ w ] [ x ]* (as special top structure) |
.oasysrc |
administrative data : [1], [2] |
Application index |
Application index (option) |
Authors'Names (option) |
Basic Language (option) |
binary configuration |
browse |
change path of subsystem |
Check Configuration Consistency (button) : [1], [2] |
checkConsistency |
colon |
colouring text |
commands that occupy an entire line |
Concept Index (option) |
conditionally defined macros |
conditionally visible text |
config : [1], [2] |
Config (button) : [1], [2] |
Config Global (button) |
config.bin |
configuration of structure : [1], [2], [3] |
configuration of subsystem : [1], [2], [3] |
configurator |
convert to DVI (button) |
convert to HTML (button) |
convert to Info (button) |
customizing the documentation |
edit list of tags |
empty lines |
environment variables |
environments : [1], [2] |
escaping by @ |
exclude source code |
execution window (of DOSFOP) |
external property part |
ignore source code |
ignored documentation |
import references for non OPAL sources |
Import Referencing (option) |
import relation |
Include only Interfaces (option) |
indentation : [1], [2] |
`index.html' |
indices for non OPAL sources |
indices used by DOSFOP |
individual configuration of structure |
individual configuration of subsystem |
INFO (environment variable) |
INFO files, constructing : [1], [2], [3] |
Info hypertext reader (button) |
Insert (button) : [1], [2] |
insertion of structures : [1], [2] |
insertion of subsystems : [1], [2] |
Intermediate code output file (option) |
intermediate Texinfo output : [1], [2], [3], [4] |
internal property part |
introduction |
introduction to project |
introduction to subsystem |
ISO-8859-1 character set |
itemize lists |
javadoc |
lastChange |
latin1 character set |
law |
laws |
level documentation (= tagged doc.) : [1], [2], [3] |
level handling |
Level Up (button) |
levels of sectioning |
library |
Library Inclusion (option) |
library structures : [1], [2] |
Library.config |
line breaks |
line numbers |
local options |
lynx |
macro calls |
macro definitions |
macro names |
macro packages |
main window (of DOSFOP) : [1], [2] |
makeinfo : [1], [2], [3], [4] |
MAKEINFO (environment variable) |
memory overflow |
Move (button) |
moving of subsystems |
Name of the Project (option) |
new indices |
new page |
new pages |
non OPAL source code : [1], [2] |
OASYS |
OCS |
OCSDIR (environment variable) |
only : [1], [2], [3] |
options.data |
ordinary documentation |
paragraphs, formatting of |
path of subsystem, changing |
perl |
PERL (environment variable) |
plain TeX |
predefined indices |
project browser : [1], [2] |
Project Browser (button) |
project data base : [1], [2] |
project, introduction to |
project, survey of |
PROJECTROOT (environment variable) |
properties |
Property Inclusion (option) |
Property Index |
property parts |
property parts and property references |
property references |
psfig.sty |
psfig.tex : [1], [2] |
pst-node.tex : [1], [2] |
pstricks.con |
pstricks.sty |
pstricks.tex : [1], [2] |
pureDosfop : [1], [2], [3] |
Rename (button) : [1], [2] |
renaming of structures |
renaming of subsystems |
ribbon |
Root-location of the Project (option) |
tagged documentation : [1], [2], [3] |
TAPSOFT |
TCL/TK : [1], [2] |
technical report |
TeX macros |
texi2dvi |
texi2html |
texindex : [1], [2] |
TEXINDEX (environment variable) |
Texinfo |
Texinfo environment |
Texinfo special characters |
texinfo.tex : [1], [2] |
TEXINPUTS (environment variable) |
thisdoc |
thisdocall |
title page |
To-Do Index |
top structure |
Top Structure Name (option) |
toplevel |
Toplevel.config |
trouble-shooting |
types of documentation |
unfinished source code |
Used Function Tables (option) |
visualization of dependencies |
wish |
WISH (environment variable) |
WWWBROWSER (environment variable) |
X defaults |
XDVI (environment variable) |
xy index |
This document was generated 5 June 2001 (14:13:50) using the texi2html translator version 1.51-kd-pl15.