I want to put together a patch for allowing doxygen's html output to be
embedded into a CMS. I'm testing with a very primitive php webpage; however
being familiar with a few real CMS systems, my belief is that this
implementation is general enough to work for most. My plan is to allow users
to specify a prefix, and doxygen will generate paths which use this prefix
when generating links to files. I am hoping to make something suitable for
inclusion in the doxygen code base, and your thoughts would be welcome.
Goals
- All html elements which are outside of the body tag, including the body
tag itself should be removed.
- The links which are generated currently use relative paths, however may
not function properly considering a CMS frontend which includes the doxygen
pages into an existing template. The link generation needs to be updated to
prefix links with a customizeable link header
- Filenames, including images, which are generally specified as relative
paths need to be specified in a different way when embedded in a parent web
page. A simple implementation would use the same format as above, however it
is altogether possible that a different linking format could be used to
allow certain files to be provided by a CMS in a more robust way (say
placing the logo in a DB). It might be best to define one or more distinct
prefix formats to use as replacements for non html file types.
- It may be desirable to perform some amount of post-processing on the
generated links. The major need for post-processing stems from the special
semantics involved in the standard http get request, and escaping certain
characters might be necessary. This feature can be postponed until the
implementation is done however, and may be unnecessary.
- Elements which i have identified as needing attention : <A>, <IMG>,
<AREA>, <MAP>
Questions?
Other html elements which need consideration?
Is there any other functionality needed which i have not thought of?
Should configuration settings be in a seperate section, much like the search
engine feature, or defined inline with the other HTML generator options?
Timeline
This isn't a very complicated feature, and i only expect to need a week or
so to get it right. There are also a lot of templating/style features which
won't be addressed, but it does seem to be a precursor to more customizable
and dynamic html output.
Following this it would also be useful to update the html generator with
better css names, specifically to avoid conflicts with the stylesheets of an
existing CMS.
|