A new version of pl2texi (the CIAO auto documenter) has been installed at the clip lab and also on the WWW. This version completes the port to use the ciao 0.8 modular assertion processing library. In addition, it includes the following improvements:
- Now, if the name of a file being documented ends in @tt{_doc}, the @tt{_doc} part is left out when referring to the file in the documentation (useful if one would like to place the documentation declarations in different file).
- It is now possible to declare (via a @dec{comment/2} declaration) the intended use of a file which is not a module (i.e. a package, user, or include file), which results in correct documentation of operator definitions, new declarations, etc. The declaration is only needed for 'user' files (i.e., files to be loaded with @pred{ensure_loaded/1}).
- Separated generation of the manuals from their installation. I.e., @tt{gmake install} now does not force a @tt{gmake all}, which has to be done by hand. This was necessary to ensure correct installation of distributed manuals, even if modification dates are changed during installation. Previously, in some cases generation was triggered unnecessarily.
- New @tt{-v} option allows using quieter by default operation when not debugging.
- New option @tt{-propmods} makes the name of the module in which a property is defined appear in front of the property in the places where the property is used.
- New option @tt{-noisoline} makes the textual explanation of the @prop{iso/1} property not appear in the description of the usage (but the @iso symbol does appear)
- Two new options, '-nosysmods' and '-noengmods', selectively avoid listing the system or engine libraries used.
- If there is no declaration for a predicate, now a line is output with the name and arity and a simple comment saying that there is no further documentation available (this has the great advantage that then it goes in the index, and, for example in ciao, they get added to completion commands!).
- Now, if a property or regtype declaration has no textual comment, the actual definition is given (first level only) in the place where it is documented, and a simple generic message where it is used.
- Added @@noindent and @@iso commands.
- Nicer spacing now when printing predicate names which are operators, as well as modes, etc.
- Reporting of versions in libraries has been improved: now both the global version and the last version in which the library itself was changed are reported.
- Exported new declarations also documented now for include-type files.
- A module is now documented even if exports nothing at all.
- Engine modules used now documented even if no other modules used (was a reported bug).
- Fixed indexing of names containing @@ etc. for newer versions of texinfo.
- Tabs in verbatim modes now converted to a number of spaces (8). Not perfect, but produces better output than leaving the tabs in.
- Tex is now run in 'nonstopmode' which means it will typically not stop if there are minor errors (but some errors may go unnoticed...).
- The full path of the version maintenance directory is now computed (correctly) using the directory of the @tt{.pl} file being documented as base.
- Notices for missing subtitle, copyright, and summary now only given from main file and not for components.
- Added special handling of regtype and generalized it to handle some props specially if there is a certain comp property present.