Automatically generated documentation might contain problematic places, in which manual re-layout is desired. Consodoc is tailored to support manual intervention on the level of LaTeX files.
Obviously, the system mustn't lose the user's changes when re-generating PDF. Consodoc remembers and applies changes using the diff and patch mechanism.
Summary of the situations:
There is no patch, so nothing to apply
Patch is applied:
successfully
with errors
The user has made changes, and the patch file should be generated
This functionality adds complexity to the build process. A set of supporting files is used to assist the patch step:
$(patch_error) is a lock-file to prevent further steps in case of patch errors.
$(patch_tex) and $(patch_tex_copy) are used to detect if the user has manually edited the LaTeX code.
$(patch_tex) and $(patch_tex_orig) are used to generate a patch file.
For convenience of describing the process, the step “Patch Work” is splitted on three virtual steps:
“Forward Order”,
“Reverse order”, and
“Problems”.