Michael Van Canneyt schrieb:

I did several things:

1. Enable various log levels in parser and scanner. It uses an event handler.
  (writing to terminal is not possible)

2. Route all this logging through the TPasContainer.
I tried to remove all direct writes from all backends and other places in fpdoc,
   so now it should work in a GUI app as well.

3. Create a TFPDocCreater component. It contains the CreateDocumentation logic,
   verbose and dry-run logic, and some more.
   You should be able to re-use this component as-is, see unit mkfpdoc.pp

4. Implemented the --verbose and --dry-run options.

Great :-)

Waiting for a commit of these extensions, and for a description of your mkfpdocproj tool...


These 2 options are not stored in the project file, they must be given on the command-line.
I do not believe they belong in the project file.

ACK. See my other mail about the options stored in project files.


Todo: implement a --descr-dir command-line option for fpdoc application. That will scan a directory and add all XML files it finds in that dir to the project. I can see why you want such thing, but I think such logic belongs in the command-line tool itself, not in the project description itself.

My solution doesn't deserve an change to the project files, the expansion of --descr="dir/*" can be done in TFPDocEngine.AddDocFile, for all kinds of invocations. A search also could be started when the --descr argument does not specify an ".xml" extension, whereupon the argument can be treated as a documentation directory.


I still miss a "required package" option (variation of --import?), describing the packages whose content files are required to build a dependent package documentation. Since the location of these packages can differ on every machine, the user should be alerted when he missed to specify the locations of required content files. An error message "content file not found" exists already, but it will not be shown when fpdoc has no idea of the required content files.

Such an option IMO becomes very important, when e.g. the LCL documentation shall be created from a project file. Required packages can be handled in an according tool, but even such a tool needs informations about required packages.


Another issue are the relative directories, as used in all current scripts and project files. E.g. build_lcl_docs invokes fpdoc from the HTML directory, so that the project file will contain references relative to that directory - which does not normally exist before the first invocation of build_lcl_docs! Moving the created project file into an safe place will invalidate all contained file references :-( Should this bad situation be cured in build_lcl_docs, or can we provide other assistance?

DoDi

_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to