|
The FSW group currently has hundreds of web pages,
with more in prospect.
About 10% of these are hand-edited;
the rest are mechanically created.
As a result, the pages are far more up to date,
information-rich, cross-linked, and error-free
than manual editing would allow.
Early each morning, a cron(1) job
runs a make(1) command,
eventually running about two dozen
Perl and shell scripts.
The input data is a combination of hand-edited
YAML files,
data harvested from the build subsystem, etc.
This page contains annotated diagrams,
depicting the data flows in various parts of this system.
Notes
-
Programs (e.g., Perl and shell scripts) are represented by ellipses.
-
Data files (and file sets) are represented by rectangles,
save that "externally visible" (e.g., SHTML and PDF) items
are represented by octagons.
-
Hand-edited and mechanically-generated items have, respectively,
gray and white backgrounds.
Items which appear in multiple diagrams have dashed outlines.
-
File I/O (e.g., input, output)
and inclusion (e.g., by SHTML files) are represented, respectively,
by solid and dotted arrows.
-
Each diagram is an image map;
clicking on a node should bring up the file in question
(or an example, if multiple files are involved).
-
If you leave the cursor on a node for a moment,
a "tooltip" should appear with the node's "Pathname".
-
The all_d2ic script transforms many dot files
to cmap and png files,
which are then included by shtml files.
Similarly, some programs produce grap
files which (eventually) turn into jpeg files.
For clarity, this activity is represented
by a dashed line from each dot or grap file
to the corresponding shtml (etc) file.
|